2010-12-28 4 views
8

Я следовать этим шаг всякий раз, когда я хочу комментировать блок кода:спутать капиталом I в Vim

1) Enter Blockwise Visual mode by hitting CTRL-V. 
2) Mark the block you wish to comment. 
3) Hit I (capital I) and enter your comment string at the beginning of the line. (// for C++) 
4) Hit ESC and all lines selected will have 

Однако, я не совсем уверен, что я там делает. И почему ESC вызывает вставку на каждую строку в блоке.

ответ

12

В режиме выбора блока I VIM переходит в режим вставки с курсором до первого символа в первой строке блока.

Все символы, которые вы печатаете на этой первой линии будет вставлен перед всех линий в выборе, прямо перед выбранным блоком.

Вы можете сделать то же самое с A, за исключением того, что вы добавите его после блок.

+3

это объясняет это намного лучше, чем мой ответ. – hometoast

4

из :help I

Insert text before the first non-blank in the line 
[count] times. 
When the 'H' flag is present in 'cpoptions' and the 
line only contains blanks, insert start just before 
the last blank. 

вставки перед каждой выбранной линии

Я могу только сделать предположение о том, что «ESC» используется потому, что это не печатаемый символ, как ENTER является.

0

При использовании I, или гр в визуальном режиме, вы используете на самом деле так называемые покадрово-операторы. Да, они ведут себя очень различно в визуальном режиме, чем при вставке.

Для получения дополнительной помощи, help :blockwise-operators

+0

вместо доказательства ссылки, дайте объяснение. ссылка может не существовать через 10 лет. thx – vehomzzz

+0

Вы имеете в виду, что они ведут себя по-разному в визуальном режиме, чем в обычном режиме? В режиме вставки они просто набирают символы ха-ха (я понимаю, что это старый пост, но он по-прежнему применяется) – Jay

Смежные вопросы