Как перейти к концу строки в Vim?
Я знаю, как вообще перемещаться в командном режиме, в частности, прыгать на строки и т.д. Но какова команда перехода к концу строки, в которой я сейчас?
Ответы
Ответ 1
Просто клавиша $ (знак доллара). Вы можете использовать A, чтобы перейти к концу строки и переключиться в режим редактирования (Добавить). Чтобы перейти к последнему непустому символу, вы можете нажать клавиши g, а затем _.
Противоположностью A является I (режим вставки в начале строки), в сторону. Нажатие только ^ поместит курсор в начало строки.
Ответ 2
Как говорили многие люди:
- $ возвращает вас к концу строки
но также:
- ^ или _ возвращает вас к первому символу без пробелов в строке и
- 0 (ноль) дает вам начало строки, вкл. пробельные
Ответ 3
Ответ 4
$
Оформить заказ этот обходной лист VIM
Ответ 5
Главный вопрос - конец строки
$ идет до конца строки, остается в командном режиме
A идет до конца строки, переключается в режим вставки
И наоборот - начало строки (технически первый непробельный символ)
^ переходит в начало строки, остается в командном режиме
I (верхний регистр i) переходит в начало строки, переключается в режим вставки
Далее - начало строки (технически первый столбец независимо от пробела)
0 (ноль) переходит в начало строки, остается в командном режиме
0i (ноль, за которым следует нижний регистр i) идет в начало строки, переключается в режим вставки
Для тех, кто начинает изучать vi, вот хорошее введение в vi путем перечисления бок о бок команд vi с типичным движением курсора в Windows GUI Editor и сочетаниями клавиш.
Редактор vi для пользователей Windows
Ответ 6
Если ваша текущая строка обернется вокруг видимого экрана на следующую строку, вы можете использовать g $, чтобы перейти в конец строки screen.
Ответ 7
Знак доллара: $
Ответ 8
Преимущество клавиши "End" заключается в том, что он работает как в нормальном, так и вставном режимах.
'$' работает только в режиме normal/command, но он также работает в классическом редакторе vi (полезно знать, когда vim недоступен).
Ответ 9
Во многих случаях, когда мы находимся внутри строки, мы заключены в двойную кавычку или при написании инструкции мы не хотим нажимать escape и переходить к этой строке с помощью клавиши со стрелкой и нажимать точку с запятой (;
), чтобы закончить линию. Напишите следующую строку внутри файла vimrc:
imap <C-l> <Esc>$a
Что говорит линия? Он отображает Ctrl + l в ряд команд. Это эквивалентно тому, что вы нажимаете Esc (командный режим), $ (конец строки), a (добавить) сразу.
Ответ 10
Также обратите внимание на различие между строкой (или, возможно, физической линией) и линией экрана. Строка заканчивается символом конца строки ( "\n" ). Строка экрана - это то, что может быть показано как одна строка символов в вашем терминале или на вашем экране. Эти два разъединяются, если у вас есть физические линии дольше, чем ширина экрана, что очень часто встречается при написании писем и т.д.
Различие также проявляется в командах конца строки.
- $ и 0 перемещаются в конец или начало физической линии или абзаца соответственно:
- g $ и g 0 переместить в конец или начало строки или абзаца экрана соответственно.
Если вы всегда предпочитаете последнее поведение, вы можете переназначить такие клавиши следующим образом:
:noremap 0 g0
:noremap $ g$
Ответ 11
Нажмите A, чтобы войти в режим редактирования, начиная с конца строки.
Ответ 12
Или там очевидный ответ: используйте клавишу End, чтобы перейти в конец строки.
Ответ 13
Возможно, он не связан, но если вы хотите начать новую строку после текущей строки, вы можете использовать o в любом месте строки.
Ответ 14
Самый простой вариант - войти в $. Если вы работаете с блоками текста, вы можете оценить команды { и }, чтобы переместить абзац назад и вперед соответственно.
Ответ 15
Я привык к 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-, но это также не подходит для таких мест.
Ответ 16
Я не вижу горячей клавиши для MacBook для использования VIM в стандартном терминале. Надеюсь, это кому-нибудь поможет. Для пользователей macOS (протестировано на macbook pro 2018):
fn + ← - перейти к началу строки
fn + → - перейти к конечной строке
fn + ↑ - переместить страницу вверх
fn + ↓ - переместить страницу вниз
fn + g - переместить курсор в начало документа
fn + shift + g - переместить курсор в конец документа
Для последних двух команд иногда нужно нажать дважды.