6

ファイル内のこの s 式では.emacs、目的の結果が得られません。

(define-key global-map (kbd "C-=") 'djhaskin987-untab-to-tab-stop)

Ctrlコマンドを+にバインドできないのはなぜ=ですか?

明確にするために編集:

私はDebianemacs23-noxの標準ビルドで使用していますが、 +が奇妙な「文字の挿入」を行わないように (またはその効果のあるもので)再コンパイルしたことを除きます。これが何かに影響するかどうかはわかりません。たとえば、私にはわかりません。urxvt-256colors--disable-iso405776CtrlShiftC-M-iM-TAB

編集II

これを明確にしておらず申し訳ありません。関数djhaskin987-untab-to-tab-stopには行(interactive)があります。この部分は機能します。

4

5 に答える 5

9

端末でTABは、 は と同じバイト シーケンスで表されC-iます。通常、端末には の特別なバイト シーケンスがないためC-=、単に=. Emacs でできることは何もありません。しかし、選択した特別なバイトシーケンスを送信するように端末エミュレーターに教えることができる場合があります (端末エミュレーターのドキュメントを確認してくださいC-=) (define-key input-decode-map "...thebytes..." [?\C-=])

于 2012-05-20T02:09:43.170 に答える
1

問題は、ターミナルで emacs を使用することです。端末は「C-=」を許可しません。グラフィカルな emacs で機能を試してみてください。端末用の別のキーバインドを見つける必要があります。

于 2012-05-18T23:46:24.517 に答える
0

バインドする関数はインタラクティブである必要があります。試す:

(define-key global-map (kbd "C-=") 
    (lambda () (interactive) (djhaskin987-untab-to-tab-stop)))
于 2012-05-18T21:49:00.727 に答える