Как перейти к последнему символу файла в vim?


26

Файл:

i am someone1.
i am someone2.
i am someone3
~
~

Документация говорит, что Gпереносит меня в конец файла, но только в начало последней строки. Я хочу, чтобы можно было перейти к последнему символу файла, в данном случае 3, нажать aи ввести точку.

Как я могу это сделать?


Ответы:


32

Если вы введете Aпосле, Gвы войдете в режим вставки в конце последней строки.

Если вы просто хотите перейти к последнему символу, тогда G-Endбудет достаточно


Aтогда Gхорошо для меня. Но если я не хочу редактировать, это G-Endединственный вариант? Есть ли один ключ для этого вместо двух?
— Анимеш

3
Не то, чтобы я знал, но это не гарантия. Вы всегда можете создать свою собственную карту, если хотите.
— Бернхард


5

Ctrl + End также работает как в обычном, так и в режиме вставки. :help <C-End>


Это только перемещает курсор к последнему символу в текущей строке.
— Sebix

@sebix: нет, проверь помощь.
— Курт Хатчинсон

У меня не работает с vim 7.4
— sebix

@sebix: у меня все работает отлично, а текст справки довольно понятен. Может быть, у вас есть какой-то мэппинг или плагин, который переопределяет встроенное поведение.
— Курт Хатчинсон

0
  • Перейти к последней строке в файле: G
  • Перейти к первой строке в файле: 1G
  • Перейти к концу строки: $
  • Перейти к началу строки: ^

1
Добро пожаловать в U & L, это вряд ли что-то добавит к существующему и принятому ответу.
— Архемар

0

Большинство ответов здесь предполагают непустую последнюю строку файла - что, вероятно, является наиболее распространенным случаем. Есть также предположения о наличии клавиши END на клавиатуре. Однако ключи END доступны не всегда, и в конце файла возможны пустые строки. Поэтому для всех случаев можно использовать следующее, чтобы найти последний (не конец строки) символ файла:

G?.

Это всего лишь одна из нескольких (или, возможно, нескольких) комбинаций команд, которые могут достичь желаемого результата. Шаблон, являющийся:

"Set Cursor Position" + "Search Method" + "Pattern"

В случае описанной выше последовательности команд вы переходите в конец файла и выполняете обратный поиск любого символа (но не символа «конец строки»).


-1

Вы можете использовать большое количество, например, 99 или 999 и $. как 999 $


Это больше нажатий клавиш, чем G$и менее определенным. Многие файлы длиннее 1000 строк.
— Wildcard

Согласитесь, но это решение открывает возможность, что вы можете позиционировать до конца любой строки, скажем, вы можете позиционировать до конца строки 13. Вы можете сделать 13 $.
— Фред Ян
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.