2016-04-11 2 views
0

В моем .vimrc у меня есть эти две строки для копирования и вставки в буфер обмена:ВИМ: скопировать в буфер обмена не работает

nnoremap <Leader>p "+p 
nnoremap <Leader>y "+y 

Жутко переназначение склеивания работает отлично, но я не могу скопировать любые строки. Если я нажимаю кнопки «+ y, он работает, и выделенный текст находится в моем системном буфере обмена, но если я использую < Leader> y, он копируется только в регистр внутри vim, но не в системный буфер обмена.

Некоторые помощь будет здорово!

ответ

1

Если вы используете отображение в визуальном режиме, вы должны использовать vnoremap или noremap, вместо nnoremap (который только нормальный режим).

См :h map-overview подробности .

+0

Спасибо, вполне очевидная ошибка, конечно, вставляя работы в нормальном режиме, но если я выделяю что-то, я оставляю нормальный режим. – Jonas

1

Неправильное отображение вашего янкинга. "+y не хватает движения. Если вы хотите выдернуть всю линию, используйте верхнюю Y ("+Y) или или yy ("+yy).

:help y 
         *y* *yank* 
["x]y{motion}  Yank {motion} text [into register x]. When no 
      characters are to be yanked (e.g., "y0" in column 1), 
      this is an error when 'cpoptions' includes the 'E' 
      flag. 

Обратите внимание, что, если вы наберете "+y, ВИМ висит в "режиме-penging" (:help Operator-pending-mode).

+0

Вы правы, спасибо за ответ, но для меня было очень важно скопировать выделенный код. Моя ошибка была совершенно очевидной :) – Jonas

Смежные вопросы