GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/emacs/Terminal-Init.html ・ emacs-doc.conao3.com

51.4.3 端末固有の初期化

各ターミナルタイプには、そのタイプのターミナルでEmacsが起動した際にロードされるLispライブラリを設定できます。termtypeという名前のターミナルタイプの場合、ライブラリはterm/termtypeと呼ばれます。(term-file-aliasesの関連付けリストに(termtype . alias)という形式のエントリがある場合、Emacsはtermtypeの代わりにaliasを使用します。)ライブラリは、通常通りload-pathディレクトリを検索し、接尾辞‘.elc’および‘.el’を試すことで探し出されます。通常、多くのEmacsライブラリが格納されているディレクトリのサブディレクトリtermに配置されています。

端末固有ライブラリの一般的な目的は、端末のファンクションキーで使用されるエスケープシーケンスを、input-decode-mapを用いてより意味のある名称にマッピングすることです。その実装例については、ファイル term/lk201.el を参照してください。多くのファンクションキーはTermcapデータベースの情報に基づいて自動的にマッピングされるため、端末固有ライブラリがマッピングする必要があるのは、Termcapで指定されていないファンクションキーのみです。

端末タイプにハイフンが含まれる場合、ライブラリ名の選択において重要となるのは、名前の最初のハイフンより前の部分のみです。したがって、端末タイプ ‘aaa-48’ と ‘aaa-30-rv’ は、ともにライブラリ term/aaa を使用します。ライブラリ内のコードでは、(getenv "TERM") を使用して端末タイプの完全な名前を取得できます。

ライブラリ名は、変数 term-file-prefix の値とターミナルタイプを連結して構成されます。.emacs ファイルで term-file-prefix を nil に設定することで、ターミナル固有のライブラリの読み込みを防ぐことができます。

Emacsは、.emacsファイルとターミナル固有のライブラリの両方が読み込まれた後、初期化の最後にフック tty-setup-hook を実行します。ターミナル固有のライブラリの一部を上書きしたい場合や、ライブラリを持たないターミナルの初期化を定義したい場合は、このフックにフック関数を追加してください。フックを参照してください。