Какая правильная команда использует vim copy в буфер обмена, поскольку установлена ​​версия, поддерживаемая буфером обмена?

Я использую Manjaroи откройте буфер обмена:

➜  ~ vim --version | grep "clipboard"
+clipboard      +jumplist      +persistent_undo     +vertsplit
+emacs_tags     +mouse_dec     -sun_workshop        +xterm_clipboard

Первый вопрос, используйте "+y не может скопировать текущую строку в буфер обмена, и "+yy может скопировать текущую строку в буфер обмена. Я не знаю почему.

И если я установлю vnoremap <leader>y "+y, используйте команду <leader>yy в VIM не может работать (что я ожидаю, <leader>yy действие так же, как "+yy).

Более того, есть ли способ установить отображение, чтобы <leader>yny действие так же, как "+yny?

Спасибо за любую помощь.

1 ответ

Я думаю, вы серьезно не понимаете, как работают vi и vim. Увидеть :help y, :help operator, а также :help movement, ИМХО большая часть привлекательности vim заключается в логике комбинаций операторов и движений.

Первый y является оператором (y ank), второй является движением - и в vim большинство, если не все, операторов при повторной работе над всей строкой (dd - удалить строку, cc - изменить строку.)

Я не совсем уверен, что вы ожидаете "+yny сделал бы, но это копирование (y) в буфер обмена ("+) от текущего местоположения до следующего вхождения поискового термина (n), а затем запустить другую копию (y) и жду движения.

Другие вопросы по тегам