8

私は学習しようとしorg-modeていますが、emacsを終了するとファイルがきちんと折りたたまれていることに気づきました。S-TABファイル全体を展開しようとしてを押すと、ミニバッファに次のエラーメッセージが表示されますM-[ z is undefined。エラーをグーグルで検索しても役に立ちませんでした。しゃっくりが発生している場所と、それを修正する方法について何か考えはありますか?

私はMacOSX 10.6.4をTerminal.app、GNUEmacs23.2.1で使用しています。

編集:問題がTerminal.appであることを確認できました。Carbon Emacsを使用している場合、またはiTerm.app内からEmacsを使用している場合、このエラーメッセージは表示されません。

解決策を辛抱強く案内してくれたGillesに感謝します。

4

2 に答える 2

9

端末とその内部で実行されているプログラム(ここではEmacs)の間のインターフェースは、文字のみを送信でき、キーは送信できません。そのため、特別なキーまたはキーの組み合わせは、多くの場合、で始まるキーシーケンスを送信しますESC。たとえば、端末は明らかに+を送信ESC [ Zします。ShiftTab

通常、Emacsはこれらの文字シーケンスをキー名に変換し直しますが、開発者はこれを見逃したようです。あなたはそれを自分で定義することができます

(add-hook 'term-setup-hook
          (lambda () (define-key input-decode-map "\e[Z" [backtab])))

(Emacs <= 22の場合は、使用して(define-key function-key-map "\e[Z" [backtab])ください。)

一部のモードでは、のバインディングを定義する場合と定義S-tabしない場合がありますbacktab。Emacs 23をお持ちの場合は(define-key function-key-map [S-tab] [backtab])、これらのモードを機能させる必要があります。

于 2010-08-19T09:47:59.203 に答える
0

元のポスターと同様に、私はMac OS Xを使用していますが、バージョン10.6.8とGNUEmacs23.4.1です。私はS-Tabとorg-modeで同じ問題を経験していました。http://stuff.mit.edu/afs/sipb/user/daveg/Info/backtab-howto.txtで非常に役立つ手順に従うことで、これを解決することができました。

于 2012-05-13T01:38:40.913 に答える