我目前通过 cygwin 将 vim 与 screen 和 screen-vim 结合使用。Screen-vim 具有 SendScreen,它获取整个当前缓冲区并将其发送到附加屏幕。虽然这很好,但对于我的应用程序,我真的需要逐行解决方案。目前我正在使用以下映射:
map <leader>d "kyy<cr>:tabe<cr>"kp<ESC>:ScreenSend<cr>:q<cr>
这个方法可以完成工作,但感觉有点奇怪。有更好的解决方案吗?我正在寻找一种可以打开缓冲区以便用户不会注意到或以更简洁的方式实现相同功能的方法。
答案1
打开 shell 后,你就可以发送视觉选择使用命令:ScreenSend。
:屏幕发送
发送视觉选择或者整个缓冲区内容到正在运行的 gnu screen shell 窗口。
所以…
V:ScreenSend<CR>
或者
:.ScreenSend<CR>