Вопрос

Я знаю, как обычно перемещаться в командном режиме, в частности, переходить к строкам и т.д.Но что это за команда для перехода к концу строки, на которой я сейчас нахожусь?

Это было полезно?

Решение

Просто тот $ (знак доллара) Клавиша.Вы можете использовать A перейти к концу строки и переключиться в режим редактирования (Добавить).Чтобы перейти к последнему непустому символу, вы можете нажать g тогда _ ключи.

Противоположность A является Я (Режим вставки в начале строки), в качестве отступа.Нажатие только на ^ поместит ваш курсор в начало строки.

Другие советы

Как говорили многие люди:

  • $ приведет тебя к концу очереди.

но также:

  • ^ или _ возвращает вас к первому символу без пробелов в строке, и
  • 0 (ноль) приводит вас к началу строки, включаяпробел
  • $ переходит к последнему символу в строке.
  • g _ переходит к последнему символу, не содержащему пробелов.

  • g $ переходит в конец строки экрана (когда строка буфера переносится через несколько строк экрана)

Главный вопрос - конец строки

$ переходит в конец строки, остается в командном режиме

A переходит в конец строки, переключается в режим вставки

И наоборот - начало строки (технически первая не содержит пробелов характер)

^ переходит к началу строки, остается в командном режиме

Я (заглавная буква i) переходит к началу строки, переключается в режим вставки

Далее - начало строки (технически первый столбец независимо от пробел)

0 (ноль) переходит в начало строки, остается в командном режиме

0i (ноль, за которым следует строчная буква i) переходит в начало строки, переключается в режим вставки

Для тех, кто начинает изучать vi, вот хорошее введение в vi, в котором параллельно перечислены команды vi для типичного перемещения курсора в графическом редакторе Windows и сочетания клавиш.

редактор vi для пользователей Windows

Если ваша текущая строка обтекает видимый экран и переходит на следующую строку, вы можете использовать g$ чтобы добраться до конца экран линия.

Знак доллара:$

Преимущество клавиши "End" в том, что она работает как в обычном режиме, так и в режиме вставки.

'$' работает только в обычном / командном режиме, но он также работает в классическом редакторе vi (полезно знать, когда vim недоступен).

Во многих случаях, когда мы находимся внутри строки, мы заключены в двойные кавычки, или при написании инструкции мы не хотим нажимать escape, а переходим к концу этой строки с помощью клавиши со стрелкой и нажимаем точку с запятой (;) просто для того, чтобы закончить фразу.Напишите следующую строку внутри вашего vimrc файл:

imap <C-l> <Esc>$a

Что говорится в этой строке?Он сопоставляет Ctrl + l с серией команд.Это равносильно тому, что вы нажимаете Esc (командный режим), $ (конец строки), a (добавить) немедленно.

Также обратите внимание на различие между линия (или, возможно, физическая линия) и линия экрана.Строка завершается символом конца строки (" ").Строка экрана - это все, что отображается в виде одной строки символов в вашем терминале или на вашем экране.Эти два варианта расходятся, если у вас физические строки длиннее ширины экрана, что очень часто встречается при написании электронных писем и тому подобном.

Это различие также проявляется в командах в конце строки.

  • $ и 0 переместить в конец или начало физической строки или абзаца соответственно:
  • g$ и g0 переместитесь в конец или начало строки экрана или абзаца соответственно.

Если вы всегда предпочитаете последнее поведение, вы можете переназначить ключи следующим образом:

:noremap 0 g0
:noremap $ g$

Пресса A для перехода в режим редактирования, начинающийся с конца строки.

Или есть очевидный ответ:используйте Конец клавиша для перехода в конец строки.

Возможно, это не связано, но если вы хотите начать новую строку после текущей, вы можете использовать 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-, но это не так хорошо вставляется в такие места, как это.

Я не вижу горячей клавиши для macbook для использования vim в стандартном терминале.Надеюсь, это кому-нибудь поможет.Для пользователей macOS (протестировано на macbook pro 2018):

fn + - перейти к начальной строке

fn + - перейти к конечной строке

fn + - переместить страницу вверх

fn + - переместить страницу вниз

fn + g - переместите курсор в начало документа

fn + сдвиг + g - переместите курсор в конец документа

Для выполнения последних двух команд когда-нибудь нужно нажать дважды.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top