Vim сочетания клавиш для использования системного буфера обмена Mac - PullRequest
1 голос
/ 09 декабря 2011

Поскольку vim по умолчанию не поддерживает родной буфер обмена в OS X, я решил создать несколько комбинаций клавиш для его эмуляции.

Я начал с такой команды, которая передает визуальный выбор в pbcopy и заменяет выбор навывод команды.Поскольку он не имеет выходных данных и просто удаляет текст, я немедленно отменяю изменение.

:vmap c !pbcopy<CR> :undo<CR>

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

Есть ли способ заставить эту привязку работать также и в последней строке?

Ответы [ 2 ]

2 голосов
/ 09 декабря 2011

Убрать пробел между первыми <CR> и :undo:

:vmap c !pbcopy<CR>:undo<CR>
0 голосов
/ 09 декабря 2011

Ничего плохого в настройке связывания клавиш, но я никогда не чувствовал в этом необходимости.

Как и на всех платформах, Vim сохраняет в системный буфер обмена, но только при использовании визуальных команд. Выберите с помощью любой из визуальных команд (V, Shift-V, Control-V). Тогда дергай. Все, что было визуально выбрано, будет в системном буфере обмена.

...