2014-03-30 69 views
2

我在Mac上並希望使用功能鍵F19作爲元。Emacs:使用功能鍵(F19)作爲元

(有一個很好的理由,雖然這是一個黑客位的:我的建(該由Yamamoto Mitsuharu否則優良的港口)不支持使用只有左ALT鍵爲元,同時保留原生的行爲(插入特殊右ALT 關鍵 ..字符),所以我重新映射左ALT鑰匙未使用的關鍵 - F19 - 與PCKeyboardHack系統級(xmodmap的是深切的懷念),並想告訴Emacs在使用as meta。)

那麼,我該如何:在Emacs中使用功能鍵(F19)作爲元鍵?

(我是相當新的Emacs和一些谷歌上搜索後,嘗試了類似

(define-key global-map [f19] \M) 

但是,當然,不會做的伎倆(Symbol’s value as variable is void: M

+1

此主題非常類似於另一個在以下鏈接 - 也許這可以幫助引導你在正確的方向:http://stackoverflow.com/questions/10730775/emacs-create-key-modifier – lawlist

+0

感謝您的鏈接。讓我試試如果它對某人有用:我將左側(也是唯一左側)的alt鍵重新映射到fn(函數)鍵,並將(setq mac-function-modifier'meta)放入我的.emacs中。這是一樣的想法,但是使用fn鍵而不是f19。 – coanil

回答

3

好,與

(setq x-alt-keysym symbol) 

你能告訴emacs的什麼鍵可以理解爲元,但據我所知它僅接受「元,」 ALT,「超級」超作爲象徵。也許與F19試試。

,將工作,但需要適應以一種新的工作方式的另一種選擇是使用F19作爲前綴鍵(如使用CH或F1調用幫助命令):

(define-prefix-command 'f19-map) 
(global-set-key (kbd "<f19>") 'f19-map) 
(global-set-key (kbd "<f19> x") 'execute-extended-command) 
(global-set-key (kbd "<f19> u") 'upcase-word) 
... 

編寫配置不應該太難。只需按下C-h b即可獲取所有現有的鍵綁定並編輯幫助緩衝區。刪除所有不以M開頭的行,然後用矩形替換所有出現的^ M-(全局設置鍵(kbd),依此類推。

另一種選擇是將密鑰綁定到Esc而不是F19,只要系統支持該密鑰,並使用esc前綴而不是f19前綴。這樣就不必更改emacs配置。