我最近開始使用終端的(xterm)vi模式。我喜歡不必將手指從鍵盤上移開,但是我想將前一行的部分輸出複製到當前行中,然後切換到鼠標。終端vi模式:滾動前一行和輸出
有沒有辦法通過終端移動光標,然後進入可視化模式並選擇幾個字,然後複製它?
- 我知道k/j從歷史中滾動,但我想要移動前面的行的輸出。
- 我知道在某些終端上有一些轉義序列,但我似乎無法讓他們在我的工作。顯然,純粹的vi模式解決方案是最好的。
謝謝!
我最近開始使用終端的(xterm)vi模式。我喜歡不必將手指從鍵盤上移開,但是我想將前一行的部分輸出複製到當前行中,然後切換到鼠標。終端vi模式:滾動前一行和輸出
有沒有辦法通過終端移動光標,然後進入可視化模式並選擇幾個字,然後複製它?
謝謝!
我回答我的問題,因爲沒有其他人沒有...
看來,有沒有辦法在一個正常的終端來做到這一點。換碼序列基本上是在終端周圍移動光標(以便您可以覆蓋以前的文本),如下所述:http://wiki.bash-hackers.org/scripting/terminalcodes。但是沒有辦法選擇終端內置的文本(除了鼠標)。即使vi-mode
需要在vi
中打開一個臨時文件才能選擇文本(當您將v
用於可視模式時,會發生這種情況)。
約旦指出,tmux
可以做到這一點與一個很好的「命令模式」。這就是我最終做的。
您可以使用命令v
在光標下的字符處開始視覺選擇。將光標移至所需的最後一個(包括使用快捷方式w
和e
)並按任意命令(y
複製,d
刪除...)。
查看the man page瞭解更多信息。
感謝您的嘗試,但這在xterm vi模式下不起作用。如果有某種方式來實現它,那將會很棒。 – MCK 2014-10-20 22:33:49
在我的xterm中,我將光標置於單詞上的命令模式中以開始複製。使用'y'鍵來增加單詞的數量,使用'w'鍵單詞'5'。用「p」鍵將光標移動到放置單詞的位置。可以使用'o'打開一個新行,[ESC]鍵在'p'put命令之前返回命令模式。
Now is the time for all good people to
come to the aid of their country.
將光標放在時間上,y5w,移動光標,p。
time for all good people
這不是一個好的答案,但tmux可以開箱即用。 [這是博客文章](http://dudenbostel.leanside.com/2014/01/copy-paste-in-tmux/)重新映射密鑰以匹配vi's。 – 2014-10-06 16:43:33
我剛發佈我的回答後發現,這不是一個真正的'vi'問題,而是一個'xterm'問題。我很想知道它是否適用於'xterm'。 – Matthieu 2014-10-14 14:15:17