2010-07-27 59 views
2

我想取消綁定C-d在bash中發送EOF,並將其設置爲另一個鍵。我的想法是保留C-d作爲EOF在我的.bashrc中,但是在我的.bash_profile中重新綁定它,以便重複地打開C-d,將我拉出任何子殼,但將我留在登錄shell中。我可以在bash/Readline中重新綁定EOF嗎?

這可能嗎? C-d似乎被綁定到delete-char,如果當前行上有文本,它將執行該操作。如果當前行上沒有文本,它只會發送EOF。將delete-char重新綁定到,例如,C-f應用delete-char動作,但不是EOF發送。

Readline是否提供重新綁定EOF命令的方法?

回答

1

您所說的行爲由stty設置。你爲什麼不綁定另一個按鍵來發射C-d或者什麼也不做,這取決於你是在登錄shell還是非登錄shell,並且使用的

1

不,但stty eof將允許您更改EOF字符。這樣做是一個非常糟糕的主意。

+0

爲什麼要改變EOF字符不好?我相信你,我只是想了解它。 – Peeja 2010-07-29 20:57:01

+0

unix領域中的東西太多取決於EOF,如果你訓練手指的行爲不同,它可能會咬你一個你沒有想到的情況,如果你應該用標準綁定坐在鍵盤上, d會不高興。我的答案現在聽起來比預期更可怕,替代「我可以綁定CAPS LOCK來生成空間」,我的答案是一樣的。 – msw 2010-07-29 22:33:23

相關問題