Next: , Previous: Init Examples, Up: Init File


28.7.3 端末に固有の初期化

各端末種別ごとに、Emacsがその端末で動くときにロードするライブラリを 指定できます。 つまり、termtypeという名前の端末でEmacsを起動するときには、 term/termtypeというライブラリがロードされます。 ライブラリの探索は通常どおり load-pathの各ディレクトリに対して行われ、 ファイルの拡張子は‘.elc’か‘.el’です。 通常、これらのライブラリはほとんどの Emacsライブラリを収めたディレクトリの下のtermという サブディレクトリに置かれます。

端末固有のライブラリの普通の用途は、端末のファンクションキーによって 送出されるエスケープシーケンスをfunction-key-mapを使って意味の ある名前に対応付けることです。 このような設定を行うファイルの例として、たとえば ファイルterm/kl201.elを見てみてください。 多くのファンクションキーはtermcapデータベースの情報に 基づいて自動的に対応付けがなされます。 端末固有ライブラリでは、termcapで指定されていないファンクションキー だけを対応付ければよいのです。

端末種別にハイフンが含まれている場合は、 ライブラリ名の選択には最初のハイフンよりまえの部分だけが使われます。 つまり、端末種別‘aaa-48’と‘aaa-30-rv’では、 どちらもterm/aaaをロードします。 ライブラリ中のコードでは(getenv "TERM")を 使って必要なら完全な端末種別名を取得できます。

端末ライブラリの名前は、変数term-file-prefixと端末種別とを 連結して作られます。 ファイル.emacs中でterm-file-prefixnilに設定すると端末ライブラリのロードを抑止できます。

Emacsは.emacsと端末ライブラリを読んだあと、 初期化の最後にフックterm-setup-hookを実行します。 端末ライブラリによる指定を一部変更したり、 端末ライブラリがない端末の初期設定を行いたければ、 このフックにフック関数を追加してください。 See Hooks