Использование стрелок SHIFT+для выбора текста в vim / MacVim

одной из приятных особенностей MacVim является то, что в нем можно использовать обычные команды ОС для копирования и вставки текста (а именно command+C и command+V).

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

тем не менее, есть одна вещь, о которой мой мозг должен немного подумать: это режим выбора текста. В не-vi Редакторы, я бы использовал Shift + Arrow для этого, и попытка этого в MacVim не работает. Но, с другой стороны, мне не кажется, что Shift+Стрелка используется для чего-либо еще. Можно ли переназначить ключи, чтобы сделать это возможным?

(В идеале редактор по-прежнему будет находиться в режиме вставки после выбора текста; это сэкономит некоторые дополнительные штрихи.)

2 ответов


из руководства:

текстовые редакторы в Mac OS X позволяют пользователю удерживайте клавишу shift+movement для расширения выбор. Также, нажав печатаемый ключ при выборе заменяет текущую выборку этот символ. MacVim может эмулировать такого рода поведение (путем предоставления привязки клавиш и установка "keymodel" и 'selectmode' не по умолчанию значения) хотя он не включен по умолчанию. Чтобы заставить MacVim вести себя больше Как программе TextEdit и меньше как Vim, добавить следующие строки в файл "~/.vimrc" (не. файл gvimrc):

if has("gui_macvim")
    let macvim_hig_shift_movement = 1
endif

как примечание для себя и аккуратный намек для других:

С SHIFT + выбор стрелки и выбор мыши теперь автоматически запускается SELECT режим, это означает, что, по-видимому, не так легко сделать VISUAL выбор с помощью мыши или клавиш со стрелками. (Даже когда уже в VISUAL mode Выбор мыши все равно вызовет SELECT режим.) Поэтому всякий раз, когда нужно применить команды к выбору, помогает следующий метод.

  • выберите текст использование мыши или SHIFT + Стрелка
  • отменить выбор, нажав ESC
  • пресс gv автоматически повторно предыдущий выбор и триггер VISUAL режим

Edit: то же самое можно сделать, используя просто CTRL + g.