Как копировать текст в системный буфер обмена в vim?
У меня в vim не работает копирование и вставка из системного буфера, как это исправить?
$ vim --version VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Oct 01 2021 01:51:08) Included patches: 1-2434 Extra patches: 8.2.3402, 8.2.3403, 8.2.3409, 8.2.3428 Modified by [email protected] Compiled by [email protected] Huge version without GUI. Features included (+) or not (-): +acl -farsi +mouse_sgr +tag_binary +arabic +file_in_path -mouse_sysmouse -tag_old_static +autocmd +find_in_path +mouse_urxvt -tag_any_white +autochdir +float +mouse_xterm -tcl -autoservername +folding +multi_byte +termguicolors -balloon_eval -footer +multi_lang +terminal +balloon_eval_term +fork() -mzscheme +terminfo -browse +gettext +netbeans_intg +termresponse ++builtin_terms -hangul_input +num64 +textobjects +byte_offset +iconv +packages +textprop +channel +insert_expand +path_extra +timers +cindent +ipv6 -perl +title -clientserver +job +persistent_undo -toolbar -clipboard +jumplist +popupwin +user_commands +cmdline_compl +keymap +postscript +vartabs +cmdline_hist +lambda +printer +vertsplit +cmdline_info +langmap +profile +virtualedit +comments +libcall -python +visual +conceal +linebreak -python3 +visualextra +cryptv +lispindent +quickfix +viminfo +cscope +listcmds +reltime +vreplace +cursorbind +localmap +rightleft +wildignore +cursorshape -lua -ruby +wildmenu +dialog_con +menu +scrollbind +windows +diff +mksession +signs +writebackup +digraphs +modify_fname +smartindent -X11 -dnd +mouse -sound -xfontset -ebcdic -mouseshape +spell -xim +emacs_tags +mouse_dec +startuptime -xpm +eval +mouse_gpm +statusline -xsmp +ex_extra -mouse_jsbterm -sun_workshop -xterm_clipboard +extra_search +mouse_netterm +syntax -xterm_save system vimrc file: "$VIM/vimrc" user vimrc file: "$HOME/.vimrc" 2nd user vimrc file: "~/.vim/vimrc" user exrc file: "$HOME/.exrc" defaults file: "$VIMRUNTIME/defaults.vim" fall-back for $VIM: "/usr/share/vim" Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -Wdate-time -g -O2 -ffile-prefix-map=/build/vim-DtwDbo/vim-8.2.2434=. -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 Linking: gcc -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -o vim -lm -ltinfo -lselinux -lacl -lattr -lgpm -ldl $ cat .vimrc call plug#begin() Plug 'tpope/vim-sensible' call plug#end()
EDIT: Как писал Stanislav Volodarskiy, у меня vim собран без опции clipboard . В интернете нашлась информация:
поставь gvim (на арче) или vim-gtk (на дебиане)
Использую LMDE5 (x64), после установки vim-gtk заработало, но системный буфер не «, а «+ . Буфер « работает странно, в интернете написано, что они разные Так же есть способ копирования в буфер с помощью выделения фрагмента текста в Visual Mode, после чего вводится команда:
:w !xclip -selected clipboard
Вставлять текст из буфера можно с помощью ctrl + shift + V
vim / копирование в системный буфер
В тех сборках , которые его поддерживают , указанный регистр ( * ) является системным буфером обмена .
Чтобы скопировать текст из Vim в системный буфер обмена , вы можете выделить текст в визуальном режиме , а затем нажать , ( «*y) чтобы скопировать его в системный буфер обмена.
И наоборот, используйте (» * p ) для вставки текста из системного буфера обмена в Vim .
«*y — скопировать в системный буфер
» * p — вставить из системного буфера
Vim. Как копировать в общий буфер?
Привет народ. Надо скопировать код из VIM и вставить в gist. Как копировать в общий буфер?
Может важно, терминал юзаю yakuake.
- Вопрос задан более трёх лет назад
- 6643 просмотра
Комментировать
Решения вопроса 0
Ответы на вопрос 2
интересуюсь python, latex, linux, ML, AI
«+y или «*y вроде
Ответ написан более трёх лет назад
Комментировать
Нравится 3 Комментировать
Вопросы есть? А если найду?
Всё зависит от того, собран ли вим с поддержкой буфера обмена иксов.
Подробности тут:
vim.wikia.com/wiki/Accessing_the_system_clipboard
Ответ написан более трёх лет назад
Комментировать
Нравится 3 Комментировать
Ваш ответ на вопрос
Войдите, чтобы написать ответ
- Эмулятор терминала
- +1 ещё
Как настроить bufferline плагин для корректного отображения вкладок?
- 1 подписчик
- вчера
- 33 просмотра
[vim][вопрос знатокам] Копирование из vim в буфер обмена
Включена нумерация строк, как из vim скопировать текст в буфер обмена (не «y», а именно в системный буфер), так что бы не захватить номера строк (мышкой так получается). gvim не предлагать.
Dudraug ★★★★★
13.04.09 05:13:19 MSD
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
выбрать текст в визуальном режиме (v, V, C-v) и скопировать командой «+y (поочереди нажимаешь «, +, y)
может, и без визуального выделания можно, но я не вкурсе как.
а еще, если мешают именно номера строк, то можно их временно отключить (:set nonumber) 😉
val-amart ★★★★★
( 13.04.09 05:45:36 MSD )
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
«ay — копирование в «именной» буфер «a»
«ad — удаление в «именной» буфер «a»
«ap — вставка из буфера «a»
всего «именных» буферов — по числу букв (latin) — 26. работа же с обычными буферами элементарна:
:badd [ПУТЬ/ИМЯ] — добавить новый буфер
:bd — удалить
:bn/:bp — циклическое перемещение по буферам
аналог — :tabnew (imho — лишнее, но кому-то нравится)
sda00 ★★★
( 13.04.09 05:49:40 MSD )
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
эээ, а при чем тут именованные буферы?
наверное, я что-то таки пропустил.
val-amart ★★★★★
( 13.04.09 05:55:33 MSD )
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
>>эээ, а при чем тут именованные буферы?
любой «янк» (imho) идёт через «системный» буфер (проверить можно тем же xclipboard). мой ответ о копировании данных сугубо в «пространстве» запущенного vim-а.
sda00 ★★★
( 13.04.09 06:03:25 MSD )
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
> любой «янк» (imho) идёт через «системный» буфер
вроде как нет.
val-amart ★★★★★
( 13.04.09 06:04:43 MSD )
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
>вроде как нет.
ваша правда, почему-то был уверен в обратном.
sda00 ★★★
( 13.04.09 06:14:37 MSD )
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
>выбрать текст в визуальном режиме (v, V, C-v) и скопировать командой «+y (поочереди нажимаешь «, +, y)
Спасибо, то что надо.
Dudraug ★★★★★
( 13.04.09 07:59:39 MSD ) автор топика
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
Блин, а у меня что-то не получается: выделяю, нажимаю » (Shift и ‘), далее нажимаю + (Shift и =), а затем y. Но klipper показывает что в буфере ничего нового нет. ЧЯДНТ?
Turbid ★★★★★
( 13.04.09 08:43:39 MSD )
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
Хм, что сделал я. v выделил, shift+’, shift++, y. После этого текст вставляется glipper показывает что все ок.
Dudraug ★★★★★
( 13.04.09 08:57:01 MSD ) автор топика
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
shift+= конечно же
Может просто раскладка русская включена?
Dudraug ★★★★★
( 13.04.09 08:59:12 MSD ) автор топика
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
Да, тоже самое делаю, но ничего не происходит. А ты shift между » и + отжимаешь?
Turbid ★★★★★
( 13.04.09 09:20:54 MSD )
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
И так и так работает.
Dudraug ★★★★★
( 13.04.09 09:44:56 MSD ) автор топика
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
Попробуй это добавить в ~/.vimrc
У меня работает копирование по f2
Dudraug ★★★★★
( 13.04.09 09:45:35 MSD ) автор топика
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
Блин, нефига. Можешь сказать версию vim\дистр и, если возможно, покажи .vimrc
Turbid ★★★★★
( 13.04.09 09:53:30 MSD )
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
ubuntu 9.04 adudraug@dudraug-laptop:~/Рабочий стол$ apt-cache policy vim vim: Установлен: 2:7.2.079-1ubuntu5 Кандидат: 2:7.2.079-1ubuntu5 Таблица версий: *** 2:7.2.079-1ubuntu5 0 500 http://archive.ubuntu.com jaunty/main Packages 100 /var/lib/dpkg/status vimrc: (В стадии жесткой правки, решил серьезно вимом заняться)
Dudraug ★★★★★
( 13.04.09 10:00:07 MSD ) автор топика
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
dudraug@dudraug-laptop:~/Рабочий стол$ cat /home/dudraug/.vimrc runtime! debian.vim "set compatible syntax on set nu "inoremap < >O imap set background=light set ignorecase set termencoding=utf-8 set previewheight=12 if filereadable("/etc/vim/vimrc.local") source /etc/vim/vimrc.local endif nmap k_ " окно вверх imap k_a " окно вверх nmap j_ " окно вниз imap j_a " окно вниз nmap h| "nmap :bp! "imap :bp!a "nmap :bn! "imap :bn!a nmap = imap = imap :cni nmap :cn imap :cp i nmap :cp " пересборка с сохранением imap :wa:makeclean:make nmap :wa:makeclean:make " сборка с сохранением imap :wa:make nmap :wa:make vmap "+y
Dudraug ★★★★★
( 13.04.09 10:02:37 MSD ) автор топика
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
Хм, а у тебя vim в терминале, или gvim? http://sovety.blogspot.com/2007/11/vim_20.html — судя по второму комменту, то в терминале не работает.
Turbid ★★★★★
( 13.04.09 10:14:16 MSD )
Re: [vim][вопрос знатокам] Копирование из vim в буфер обмена
В терминале, работает. Сейчас проверю на Дебиане.