MSを発行するにはどうすればいいですか?Mac OS Mavericks 上の iTerm で実行されている Emacs に?

MSを発行するにはどうすればいいですか?Mac OS Mavericks 上の iTerm で実行されている Emacs に?

そのキーの組み合わせを押すと、ベルが鳴り、0Dそのキー コードにバインドされたコマンド (この場合は org-table-delete-column) が実行されずに、バッファーに文字が印刷されます。 M-<left-arrow>ただし、正常に動作します。

M-<any-arrow>調べてみたところ、iTerm がこれらのキーに対して特定の 16 進シーケンスを端末に送信するように設定されているため、機能するだけだと思います。これらのバインディングなしで新しいプロファイルを作成すると、すべてのM-<arrow>キーでベルと文字が印刷されました。

そこでいくつか質問があります。まず、それらの 16 進シーケンスとは何ですか?M-S-<left-arrow>正しく発行するには、どのようなシーケンスを取得する必要がありますか? iTerm では、なぜこれらすべてが定義されていないのですか? そして最後に、なぜこれらが存在するのですか? iTerm と Mac OS X に必要なキー コードを除いて、iTerm は、押されたキーをそのまま端末に送信して、キーが期待どおりに動作するようにできないのはなぜですか。

答え1

次の行を追加してみてください~/.emacs:

(define-key input-decode-map "\e[1;10A" [S-M-up])
(define-key input-decode-map "\e[1;10B" [S-M-down])
(define-key input-decode-map "\e[1;10C" [S-M-right])
(define-key input-decode-map "\e[1;10D" [S-M-left])

エスケープ シーケンスを表示するには、シェルでcat -vまたは を使用します。C-v

関連情報