キーの組み合わせC-cは、私が使用するキーボードレイアウトで入力するのに不便で、グローバルに変更しようとしています。目標は、のすべての出現C-cを別のバインディングで置き換えることです。これにより<apps> d、Gnusでのメッセージの送信はになります<apps> d <apps> d。auxtexでのコンパイルは同じになり、ユーザープレフィックスキーC-cも常にになります<apps> d。キー<apps>は<f19>キーボードにあります。
マニュアルを読んで、使用する必要があるようkey-translation mapです。<f19>to の翻訳でうまく機能します<apps>
(define-key key-translation-map (kbd "<f19>") (kbd "<apps>"))
(global-set-key (kbd "<apps> s") 'save-buffer)
残念ながら、でこれを実行したい場合は機能しませんC-c。
(define-key key-translation-map (kbd "<apps> d") (kbd "C-c"))
使ってみると
<apps> d is undefined
調べてみると(C-h k)見える
<apps> d (translated from <f19> d) is undefined
これを機能させる方法はありますか?
input-decode-map)のドキュメントに次のように記載されています。考えれば、これは理にかなっています。これは、無限の翻訳を防ぐ方法です。