在使用tmux的复制模式时,我无法让vim窗口滚动。这个有可能吗?我正在尝试将vim中的一个巨大文本块复制到一个tmux窗口中并粘贴到另一个窗口中。谢谢。
http://www.vim.org/scripts/script.php?script_id=4488 - 一个vim插件。它不像进入复制模式并在vim中滚动那样花哨,而是代替tmux的历史/滚动缓冲区。
try if this works for your needs:
function! SetTmuxBuffer() range
execute "!tmux set-buffer '" .join(getline(a:firstline, a:lastline),"\015")."'"
endfunction
command! -range ToTmux <line1>, <line2> call SetTmuxBuffer()
:1,8ToTmux
:'<,'>ToTmux
切换到另一个tmux窗口,尝试将这些行粘贴到vim中。
system()
和 tmux load-buffer
,这样就不必使用 shellescape()
来正确处理所有字符(例如单引号):call system('tmux load-buffer -', join(getline(a:firstling, a:last line), "\012"))
。 - Chris Johnsen