所以我們假設我有兩個分支在byobu並排開放。此外,兩個拆分文件在vim中都有不同的文件。我想在一個分割中突出顯示一個文件中的文本,並將其複製到另一個分割中的單獨文件中。有任何想法嗎?如何複製一個拆分並粘貼另一個byobu?
我在搜索時發現的所有結果談到了使用回滾功能來複制和粘貼byobu,但是,似乎只能在單個分割中工作;沒有跨越分裂。
所以我們假設我有兩個分支在byobu並排開放。此外,兩個拆分文件在vim中都有不同的文件。我想在一個分割中突出顯示一個文件中的文本,並將其複製到另一個分割中的單獨文件中。有任何想法嗎?如何複製一個拆分並粘貼另一個byobu?
我在搜索時發現的所有結果談到了使用回滾功能來複制和粘貼byobu,但是,似乎只能在單個分割中工作;沒有跨越分裂。
看起來我很快就發佈了;似乎找到了解決辦法。我跟着發現此處的步驟:
http://linuxcommand.org/lc3_adv_termmux.php
我遵循的步驟:
shift-f3
- 移動拆分從
alt-pgup
複製 - 進入副本模式
space
- 啓動選擇
遊標通過期望文字
enter
- 最終選擇
shift-f3
- 轉移重心分裂複製到
確保接收VIM是插入模式
alt-insert
- 粘貼選定的文本
我只使用了tmux和屏幕沒有byobu,所以也許我錯過了一些東西,但我猜這個過程的粘貼部分可能會對Vim造成嚴重破壞,如果你不小心。具體來說,您需要確保接收Vim處於插入模式;你可能會想事先做':設置粘貼'和事後設置':nopaste',這樣你的縮進就不會搞砸了。看到我的答案更好的方法。 – echristopherson 2014-09-19 18:58:43
接收的Vim必須處於插入模式纔是正確的。感謝您指出,我會將其添加到答案。 – 2014-09-19 22:35:22
如果你的Vim支持系統剪貼板(即如果vim --version
輸出顯示爲+clipboard
),則可以從第一個Vim複製到系統剪貼板並從第二個粘貼到第二個Vim。這使我們相信需要確保接收Vim處於插入模式,並且已經適當設置了paste
。
訣竅是使用"+
寄存器。所以當你做這個副本時,在"+
前加上你想要使用的任何命令;並且同樣在接收Vim中使用put命令的前綴。
如果您使用的是X11系統,您也可以使用"*
寄存器,它是X的「PRIMARY」選擇緩衝區,如果您只突出顯示文本,您可以通過按下中間按鈕。
參見:help gui-selections
。 GUI選擇支持通常需要一個Vim,而不是「vim-tiny」;在Debian和Ubuntu上,vim-gtk和vim-gnome軟件包是不錯的選擇。
如果您使用的是X Window服務器,另一種基於鼠標的解決方案,使用回溯模式(包括記住了很多按鍵)是:
你爲什麼不簡單地在Vim中打開這兩個文件? – romainl 2014-09-19 06:51:38