Я только что получил Mac! Как мне сделать «end», «home», «page up» и «page down» в моем терминале / редакторе VIM?

8

Я пишу много Python в моем VIM, на терминале. Что я делаю?

Alex
источник
1
на самом деле, если вам нужно задать этот вопрос, вы должны рассмотреть возможность использования другого редактора или IDE для написания Python. Кстати, home => ^, end => $, страница вверх = ^ f, страница вниз = ^ b; обратите внимание, что вам нужно сначала выйти из режима редактирования, используя Esc, а затем снова войти, например, i или ....
bubu
1
@bubu ба! Я говорю. Я делаю все свое кодирование в VIM, это отличный редактор, даже для Python.
Джед Дэниелс
1
Вы имеете в виду клавиши «home», «end», «page up», «page down» на клавиатуре, или вы просто ищете нужные команды навигации VIM?
Стефан Ласевский

Ответы:

17

Сделайте стандартные ярлыки vi старше 30 лет

^f(вперед == страница вниз)
^b(назад == страница вверх)
^(это каретка сдвига-6 для начала строки) и
$(конец строки)

...не работа?

Или вы ищете клавиши клавиатуры в стиле ПК для этих функций? Для них используйте клавиши со стрелками Fn +:

Fn + стрелка вниз == страница вниз
Fn + стрелка вверх == страница вверх
Fn + стрелка влево == главная
Fn + стрелка вправо == конец

Spiff
источник
4
Комбинации клавиш «Fn + стрелка» у меня не работают с помощью Terminal.App и Vim.
Стефан Ласевский
|эквивалентно HOME: они оба идут в 0-й столбец строки, а не в первый непробельный символ в ней.
интуитивно
В mc on Lion Fn + стрелки работают только у меня. Клавиши ^ f, ^ b загружают предыдущий \ следующий файл в текущей папке. Спасибо
kradmiy
Спасибо за это! Можно ли также переместить курсор в режиме вставки? Я могу сделать это на Windows и Linux. Mac OS X так же хорош, как и они? Незначительная коррекция: 0 - первая позиция текущей строки, а ^ - первый непустой символ текущей строки.
tommy.carstensen
Это не отвечает на вопрос. Чтобы HOME и END работали в vim и в оболочке, поместите bind '"\e[1~":"\eOH"'и bind '"\e[4~":"\eOF"'в ваш $ HOME / .bashrc. Более удобная для Mac и Linux настройка bash / vim на github.com/sudoer/dotfiles .
Алан Портер
7

Команды Vim (они не являются специфичными для Mac):

конец строки: $

начало строки: 0

страница вниз: Ctrl + F

страница вверх: Ctrl + B

Джед Дэниелс
источник
2

Если вы посмотрите в настройках клавиатуры терминала - вы можете поменять местами действия для перемещения вверх / вниз и сдвига страницы вверх / вниз. Это работает в vim по умолчанию и, как и следовало ожидать на удаленных компьютерах.

GG и G все, что вам нужно для дома / конца. (Я потратил некоторое время, пытаясь заставить его работать)

Иаков
источник
1

Чтобы HOME и END работали в vim и в оболочке, поместите bind '"\e[1~":"\eOH"'и bind '"\e[4~":"\eOF"'в свой файл $ HOME / .bashrc.

Более удобная для Mac и Linux настройка bash / vim по адресу https://github.com/sudoer/dotfiles . В скриптах bash ищите слова $ OSTYPE и «дарвин». В vimrc есть аналогичный блок "Darwin" для Mac-специфичных настроек vim.

Алан Портер
источник