genericモード(汎用モード)とは、コメント構文にたいする基本的なサポートとFont
Lockモードをもつシンプルなメジャーモードです。genericモードを定義するにはマクロdefine-generic-mode
を使用します。define-generic-mode
の使い方の例は、ファイルgeneric-x.elを参照してください。
このマクロはmode
(クォートされていないシンボル)という名前のgenericモードコマンドを定義する。オプション引数docstringは、そのモードコマンドにたいするドキュメント文字列。これを与えなければdefine-generic-mode
がデフォルトのドキュメント文字列を生成する。
引数comment-listは要素が文字、2文字以下の文字列、またはコンスセルである。文字か文字列ならそのモードの構文テーブル内でコメント開始識別子としてセットアップされる。エントリーがコンスセルならCARはコメント開始識別子、CDRはコメント終了識別子としてセットアップされる(行末によりコメントを終端させたければ後者にnil
を使用する)。構文テーブルのメカニズムには実際にコメントの開始および終了識別子に関する制限があることに注意。
構文テーブルを参照のこと。
引数keyword-listはfont-lock-keyword-face
でハイライトするキーワードのリストである。キーワードは文字列であること。一方、font-lock-listはハイライトするための追加の式リストである。このリストの各要素はfont-lock-keywords
の要素と同じ形式をもつこと。検索ベースのフォント化を参照されたい。
引数auto-mode-listは変数auto-mode-alist
に追加する正規表現のリストである。これらのは、マクロ呼び出しの展開時ではなく、define-generic-mode
の実行時に追加される。
最後にfunction-listは追加セットアップのためにモードコマンドに呼び出される関数のリストである。これらの関数はモードフック変数mode-hook
の実行の直前に呼び出される。