Как перейти к концу строки в Vim?
Я знаю, как обычно передвигаться в командном режиме, в частности, прыгать на строки и т. д. Но какова команда перейти к концу строки, в которой я сейчас нахожусь?
14 ответов
просто $ (знак доллара) ключ. Вы можете использовать на для перехода в конец строки и перехода в режим редактирования (добавление).
напротив на и Я (режим вставки в начале строки), в сторону.
как многие люди сказали:
- $ получает вас до конца строки
а также:
- ^ или _ возвращает вас к первому символу без пробелов в строке и
- 0 (ноль) возвращает вас к началу строки ВКЛ. пробел
- $ переход к последнему символу в строке.
g _ переходит к последнему символу без пробелов.
g $ идет в конец строки экрана (когда строка буфера обернута через несколько строк экрана)
главный вопрос - конец строки
$ переходит в конец строки, остается в командном режиме
A переходит в конец строки, переключается в режим вставки
наоборот - начало строки (технически первый без пробелов символ)
^ переходит в начало строки, остается в командном режиме
Я (верхний регистр i) переходит в начало строки, переключается на режим вставки
далее-начало строки (технически первая колонка независимо от пробел)
0 (ноль) идет в начало строки, остается в командном режиме
0i (ноль с последующим строчным I) идет начало строки, переключается в режим вставки
для тех, кто начинает изучать vi, вот хорошее введение в vi, перечисляя бок о бок команды vi для типичного курсора редактора графического интерфейса Windows движение и сочетания клавиш.
Если ваша текущая строка обертывается вокруг видимого экрана на следующую строку, вы можете использовать g$ до конца линии.
преимущество клавиши " End " заключается в том, что она работает как в обычном режиме, так и в режиме вставки.
' $ ' работает только в обычном / командном режиме, но также работает в классическом редакторе vi (хорошо знать, когда vim недоступен).
во многих случаях, когда мы находимся внутри строки, мы заключены в двойную кавычку или при написании оператора мы не хотим нажимать escape и переходить к концу этой строки с помощью клавиши со стрелкой и нажимать точку с запятой (;
) просто, чтобы закончить линию. Написать следующую строку внутри vimrc:
imap <C-l> <Esc>$a
что говорит линия? Он сопоставляет Ctrl+l с серией команд. Это эквивалентно вам нажатие Esc (командный режим), $ (конец line),a (добавление) сразу.
также обратите внимание на различие между строка (или, возможно, физическая линия) и экран. Строка завершается символом конца строки ("\n"). Строка экрана-это все, что отображается в виде одной строки символов в вашем терминале или на экране. Они разделяются, если у вас есть физические линии длиннее ширины экрана, что очень распространено при написании писем и тому подобное.
различие отображается в командах конца строки как что ж.
- $ и 0 переместить в конец или начало физической строки или абзаца, соответственно:
- g$ и g0 переместить в конец или начало строки экрана или пункта, соответственно.
Если вы всегда предпочитаете последнее поведение, вы можете переназначить ключи следующим образом:
:noremap 0 g0
:noremap $ g$
возможно, не связано, но если вы хотите начать новую строку после текущей строки, вы можете использовать o в любом месте строки.
самый простой вариант-ввести $. Если вы работаете с блоками текста, вы можете оценить команду { и } для перемещения абзаца назад и вперед, соответственно.
Я привык к Home / End получать меня к началу и концу строк в режиме вставки (от использования в Windows, и я думаю, Linux), который Mac не поддерживает. Это особенно раздражает, потому что когда я использую vim в удаленной системе, я также не могу легко это сделать. После некоторых болезненных проб и ошибок я придумал эти .vimrc
строки, которые делают то же самое, но привязаны к Ctrl-A Для начала строки И Ctrl-D для конца строки. (По какой-то причине Ctrl-E, я думаю, зарезервирован или по крайней мере, я не мог придумать, как его связать.) Наслаждаться.
:imap <Char-1> <Char-15>:normal 0<Char-13>
:imap <Char-4> <Char-15>:normal $<Char-13>
здесь хорошая диаграмма для кодов символов управления ASCII здесь для других:
http://www.physics.udel.edu / ~watson/scen103/ascii.html
вы также можете сделать Ctrl-V + Ctrl -, но это не вставляет также в такие места, как это.