2013-04-10 61 views
4

我最近一直感覺RSI設置(我以前有過)。Emacs - 禁用返回和退格鍵

我一直在關注什麼效果我的手和右手彎曲按退格鍵和返回鍵似乎導致了很多問題。

我已經定義了「M-d」向後刪除,這很好,我知道「C-m」進入一個換行符,但我仍然不自覺地按下了實際的鍵,所以我想在emacs中禁用它們。

我嘗試這樣做:

(global-unset-key "\r") 

但是這打破 「C-M」 以及 所以我加入這一行:

(global-set-key "\C-m" 'newline) 

但是,恢復返回鍵以及。

請告訴我怎麼解除綁定剛剛返回和退格鍵,同時維持其他綁定

回答

7

設置恢復和退格做什麼應該工作。也就是說,這兩行應該足夠了:

(global-set-key (kbd "<return>") 'ignore) 
(global-set-key (kbd "<backspace>") 'ignore) 

這將使按鍵像C-m操作。

+0

非常感謝。它只是在我點擊提交我的答案後纔出現! – Anake 2013-04-10 11:36:04

+0

'忽略'是更多的語義和節省一點記憶。 – 2013-04-10 13:30:56

+0

@event_jr謝謝,這是一個有用的知識。 – shakurov 2013-04-10 13:32:04

3

我設法解決了這個問題。使用這個:

M-: (read-event "?") RET 

您可以找到密鑰產生的事件。所以backspace是「backspace」,並且返回是「return」(oops)。然後你可以使用[return]格式。所以我說這行我的.emacs文件:

(global-set-key [backspace] 'other-window) 
(global-set-key [return] 'other-window) 

現在,如果我能得到我的Emacs快捷方式與SO工作!