
我在我的中使用這些行~/.inputrc
:
"\e[5~": history-search-backward
"\e[6~": history-search-forward
透過這些設置,當我c在提示下鍵入並執行時,bash 僅顯示從歷史記錄PageUp開始的命令。則相反。我發現這對我來說非常有成效。cPageDown
Ctrl當我執行+操作時,如果我的 inputrc 檔案中沒有這些行Left,遊標將用於向左移動一個單詞,而Ctrl+Left則相反。但是透過上面提到的那些設置,當我執行Ctrl+Left和Ctrl+時,Right它會列印;5D
and ;5C
。
那我該如何讓Ctrl+ Left& Ctrl+Right做對的事呢?
答案1
readline
這些運動的兩個命令是forward-word
和backward-word
。您可以使用(預設的 emacs 綁定)分別存取它們:
Altf和Altb。
Left要使用和鍵進行工作Right,您需要在~/.inputrc
.
首先,透過從終端獲取這些按鍵的原始輸出來確認正確的轉義序列:輸入Ctrlv CtrlLeft和Ctrlv CtrlRight並記下序列(類似於^[Oc
和^[Od
)。然後將這些行附加到您的.inputrc
:
"\eOc": forward-word
"\eOd": backward-word
全部讀行命令可以在你的身上反彈.inputrc
。
答案2
請注意,這些序列可能因終端而異。從您的文字來看,您似乎使用 gnome-terminal 。
# on gnome-terminal
"\e[1;5D": backward-word
"\e[1;5C": forward-word