2010-06-27 34 views
9

我只是發現了在bash中使用vi風格的魔力。立即,我試圖用C-c從插入模式轉換(進入所謂的移動模式),因爲我習慣C-c在vim中轉換爲命令模式。Bash vi模式 - 綁定「C-c」以從插入模式轉義

我尋找了一圈,發現命令重新綁定鍵在bash:

"bind -m vi-insert C-c:vi-movement-mode" 

然後,我用「綁定-P」檢查綁定狀態,它顯示:

"..." 
"vi-movement-mode can be found on "\C-c", "\e"." 

然而,當我試圖從插入模式轉義出來時,它清除了整行代碼(默認行爲),而不是轉移到移動模式......任何想法如何使用Cc從插入模式轉義?

在此先感謝。

+0

+1顯示我bash vi模式存在 – 2010-06-27 06:54:29

回答

2

您可以重新綁定中斷鍵:

stty intr ^X 

我們中斷東西是執行你必須按下Ctrl鍵 - X。我不知道如果改變這可能會有其他副作用。

vim可以這樣做的原因是它捕獲了Ctrl-c中斷。

2

您也可以使用舊把戲映射大寫鎖定到ESC:

xmodmap -e 'clear Lock' 
xmodmap -e 'keycode 0x42 = Escape' 

這基本上類似於如何使用鍵盤來馬上開始工作。

+0

是的,但這似乎只適用於Xwindow,是啊? – Patrick 2012-01-20 04:29:01

+0

我敢打賭,你是對的。 – crenate 2012-01-20 20:26:57