Görsel blok modundayken metni değiştirme


10

Belki de yanlış yolu araştırıyorum, ama bunu nasıl yapacağımı bulamadım.

İşte senaryo: Bir metin dosyasında aynı kelimeyi birden çok satıra eklemek istediğim bir liste var, işte bir örnek metin:

12.1 Madde1
12.2 Madde2
12.3 Madde3

Şimdi, aşağıdaki alt çizgi ile gösterilen 8. sütunu işaretliyorum ve boşlukun bir kısmını Doneöğe sütununu taşımadan değiştirmeyi planlıyorum :

12.1 _ Eşya1
12.2 _ Eşya2
12.3 _ Eşya3

Değiştirme moduna girebileceğimi umuyordum, ancak yalnızca insert ( I), append ( A) veya change-mode ( c) girebilirim . Değişiklik modu istediğim şeye yakın geliyor: kelimenin uzunluğunu biliyorsanız blok aynı genişliğe ayarlanabilir.

Burada özlediğim bir şey var mı?

Yanıtlar:


18

Neden 4 sütun seçip vurmuyorsunuz c?

<C-v>
2j
3l
cDone
<Esc>

Ayrıca, şunları kullanabilirsiniz :h normal:

V
2j
:'<,'>norm 7lRDone
<Esc>

1
Bu işe yarıyor Done, ama başka bir şey yazmak istersem, mümkünse karakter saymaktan özgür olmak istiyorum.
Thor

1
:normo zaman senin arkadaşın.
romainl

Evet, ikinci çözüm uygun bir haritalama için kullanılabilir. Teşekkür ederim.
Thor

1

Görsel bir blok içinde değiştirmek isterseniz, vis.vimeklentiyi kullanabilirsiniz .

http://vim.wikia.com/wiki/Applying_substitutes_to_a_visual_block

Yüklemek:

Http.//www.drchip.org/astronaut/vim/index.html#VIS adresinden vis.vba.gz dosyasını indirin

# Open vis.vba.gz in Vim 7.1 or later.
vim vis.vba.gz

# Source the open file.
:so %

# Quit Vim
:q

Kurulduktan sonra:

ctrl-v to enter visual-block mode
Move to select the block you want
:B s/pattern/newtext/

Daha da iyisi, sadece ikameleri değil, görsel blokta herhangi bir Ex komutunu gerçekleştirebilirsiniz. Örneğin :B !sort.


Güzel bir eklenti, ben kullanacağım :-). Ancak rastgele sütunları değiştirmek için nasıl kullanabilirim?
Thor

Doğru, görsel blok genişliğini rastgele genişlik sütunlarınızla eşleşecek şekilde hızlı bir şekilde ayarlama sorununuz hala var. Genellikle <sayı> wveya ehızlı bir şekilde birkaç sütun seçmek için, sonra hveya ile ayarlayın l.
Christian Long
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.