Vim kaydı nedir ve nasıl devre dışı bırakılabilir?


761

recordingMesajı gVim 7.2 penceremin alt kısmında görmeye devam ediyorum .

Nedir ve nasıl kapatırım?


55
Vim kaydını iyi bir şekilde kapatmak map q <Nop>için .vimrc dosyanıza ekleyin .
Joey Adams

4
Kaydı kapatmak istediğinize inanamıyorum! Gerçekten rahatsız edici bir açılır pencere göstereceğim 'Emin misin?' biri kapatmak isterse (veya muhtemelen Windows 10 güncellemesi gibi seçenekler vermek isterse).
0xc0de

Yanıtlar:


1054

Kayıt işlemini başlatabilirsiniz q<letter> ve qtekrar yazarak sonlandırabilirsiniz .

Kayıt, Vim'in gerçekten kullanışlı bir özelliğidir.

Yazdığınız her şeyi kaydeder. Daha sonra yazarak tekrar oynatabilirsiniz @<letter>. Kayıt arama, hareket, değiştirme ...

Vim IMHO'nun en iyi özelliklerinden biri.


109
Diğer yerlerde de görüldüğü gibi, q'nun ardından bir kayıt gelir. Bunun gerçekten havalı (ve muhtemelen sezgisel olmayan) bir kısmı, bunların delete, yank ve put gibi şeyler tarafından kullanılan aynı kayıtlar olmasıdır. Bu, metni düzenleyiciden bir kayıt defterine çekebileceğiniz ve ardından komut olarak uygulayabileceğiniz anlamına gelir.
Cascabel

68
Unutulmaması gereken bir şey daha, (100 @ <letter>) gibi birçok kez eylemlerinizi 100 kez oynayacağı kaydı tekrarlamak için @ 'den önce herhangi bir sayıya çarpabilmenizdir
Tolga E

7
Daha sonra, put / yank ile kaydı düzenleyerek ekleyebilirsiniz. Ancak bir makronun parçası olarak kaydı neden açmak veya kapatmak istediğinizi bilmiyorum. ('q', ekleme modunda yazıldığında hiçbir şeyi etkilemez.)
anisoptera

3
@Yol "- varsayılan kayıt adı verilir.
Cascabel

4
and how to turn offda soruydu
n611x007

103

Tip :h recordingdaha fazla bilgi edinmek.

                           * q *  * kayıt * 
q {0-9a-zA-Z "} Yazılan karakterleri {0-9a-zA-Z" kaydına kaydedin }
                        (eklenecek büyük harf). ' Q ' komutu devre dışı
                        bir kayıt yürütürken ve içinde çalışmaz
                        bir haritalama . {Vi: kayıt yok}

q Kaydı                        durdurur . (Uygulama notu: ' q '
                        durdurur kayıt saklanmayan kayıt sürece,
                         o bir sonucuydu haritalama ) {Vi: hayır kayıt}


                                                        * @ *
@ {0-9a-z ". = *} {0-9a-z" kaydının içeriğini yürütün . = *} [Sayım] 
                        kez. Not sicil ' % akımının' (adını
                        dosya) ve ' # ' (alternatif dosyanın adı) olamaz
                        Kullanılmış. " @ = " İçin bir ifade girmeniz istenir
                         . İfadenin sonucu o zaman
                        idam. Ayrıca bakınız | @: |. {Vi: yalnızca adlandırılmış kayıtlar}


31

Yazma qmakro kaydını başlatır ve kullanıcı qtekrar vurduğunda kayıt durur .

Joey Adams'ın belirttiği gibi, kaydı devre dışı bırakmak .vimrciçin ana dizininize şu satırı ekleyin :

map q <Nop>

11
yalnızca sorunun "nasıl kapatılacağı" kısmına cevap verin. Eh, kayıt erişilemez yapar, etkili bir şekilde kapatır - en azından hiç kimse vi dahil olmak üzere bu kod için ayrı bir iş parçacığı olmasını bekler.
n611x007


15

Bu, "makro kaydet" modunda olduğunuz anlamına gelir. Bu moda önce yazı yazıp qardından bir kayıt adı girilir ve qtekrar yazılarak çıkılabilir.


Aslında yazarak ve qardından 0-9, az, AZ ve "olan herhangi bir kayıt adı girilerek girilir .
ephemient

3
Aslında, q {0-9a-zA-Z "} - herhangi bir kayıt defterine (rakam, harf," olarak adlandırılır) bir makro kaydedebilirsiniz. Aslında kullanmak istiyorsanız ... bir kaydın içeriğini @ <register> ile yürütürsünüz. Bkz :help qve :help @bunu kullanarak ilgileniyorsanız.
Cascabel
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.