Как скопировать выделенные строки в буфер обмена в vim. Я знаю, как это сделать для всех текстовых файлов , но я хочу сделать это для выбранных строк. Благодаря!
87
Как скопировать выделенные строки в буфер обмена в vim. Я знаю, как это сделать для всех текстовых файлов , но я хочу сделать это для выбранных строк. Благодаря!
Ответы:
SHIFTVпереводит вас в режим выбора строк. Затем "*yкопирует выбранные в данный момент строки в
*
регистр, который является буфером обмена. Существует довольно много разных регистров для разных целей. Смотрите разделselection and drop registers
для получения дополнительной информации о различиях между*
и+
регистрами на Windows , и Linux.источник
Если вы работаете в Linux и используете VIm версии 7.3.74 или выше (версия, которая устанавливается в Ubuntu 11.10 и более поздних версиях, удовлетворяет этому), вы можете сделать
set clipboard=unnamedplus
который поместит извлеченный текст в глобальный буфер обмена и позволит вам вставить его из глобального буфера обмена без использования каких-либо специальных регистров. В отличие от решения ldigas, это также будет работать с версиями VIm, отличными от gui.
источник
vim-gnome
пакет вместоvim
.vim --version | grep "+xterm_clipboard"
.clipboard=unnamed
вместо него ( vim.wikia.com/wiki/Accessing_the_system_clipboard )будет ... ммм, короче говоря, всякий раз, когда вы выбираете / дергаете что-то, также помещает это в буфер обмена (не в Vim, а в глобальную клавиатуру оконной системы). Таким образом, вам не нужно думать о занесении вещей в специальный регистр.
источник
Для GVIM нажмите,
v
чтобы перейти в визуальный режим; выделите текст и нажмите,Ctrl+Insert
чтобы скопировать выделение в глобальный буфер обмена.Из меню вы можете видеть, что это горячая клавиша,
"+y
т.е. удерживайте клавишу Shift, затем нажмите"
,+
затем отпустите Shift и нажмитеy
(громоздко по сравнению с Shift + Insert).источник
Если вы используете vim в MAC OSX, к сожалению, он поставляется со старой версией и не соответствует параметрам буфера обмена. К счастью, домашнее пиво легко решает эту проблему.
установить vim:
brew install vim --with-lua --with-override-system-vim
установить графический интерфейс vim:
brew install macvim --with-lua --with-override-system-vim
перезапустите терминал, чтобы вступили в силу.
добавьте следующую строку в ~ / .vimrc
set clipboard=unnamed
теперь вы можете скопировать строку в vim с помощью
yy
и вставить ее для всей системы.источник
Установите "xclip", если еще не ...
sudo apt-get install xclip
Xclip помещает данные в буфер обмена «выделенный / выделенный», который вы щелкаете средней кнопкой мыши, чтобы вставить, в отличие от «ctrl + v»
В vim используйте команды ex:
или же
или же
Затем просто щелкните средней кнопкой мыши, чтобы вставить в любое другое приложение ...
источник
Если vim скомпилирован с поддержкой буфера обмена, вы можете использовать
"*y
значение: скопировать визуально выделенный текст в регистр*
('*' для буфера обмена)Если нет поддержки буфера обмена, думаю, только другой способ - использовать
Ctrl+Insert
после визуального выделения текста в vim.источник
Я добавил следующую строку в свой
.vimrc
Это позволяет скопировать выделенный текст в буфер обмена, нажав
F5
. Чтобы это сработало, вы должны находиться в визуальном режиме.источник
~/.vimrc
Спасибо, это намного лучше.Добавьте следующий код в свой
.vimrc
:источник