21. カスタマイズ
URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=Customizations"
"yatex/カスタマイズ"へのコメント(無し)
野鳥の動作を制御する種々の変数を独自に設定することにより、補完入 力を起動するキーアサインを変えたり、環境名の補完候補をさらに充実さ せることなどができます。
21.1 lisp 変数
URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=Lisp+variables"
"yatex/lisp変数"へのコメント(無し)
例えば prefix キーを C-c 以外のキーにしたい場合は、 YaTeX-prefix
に prefix キーにしたいシンボルを定義してください。さら に、「C-c 英字」というキーバインドは独自の関数が割り当ててあるので使 いたくない。このような時は、YaTeX-inhibit-prefix-letter
を t
に設定することにより、C-c 英字…のバインドが全て、対応するC-c C-英字…に変わります(ただし、begin型 large型補完の大文字起動によるリジョ ン指定は可能なままです。これも無効にしたい場合はt
ではなく 1 にセッ トして下さい。)。
21.1.1 カスタマイズ変数一覧
URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=All+customizable+variables"
"yatex/カスタマイズ変数一覧"へのコメント(無し)
yatex-mode における次の変数がカスタマイズ可能です。`~/.emacs' で setq
しておけば、そちらの定義が優先されます。括弧の中はデフォルト値 です。実際に変数の値を変更する場合は M-x describe-variable で 変数の詳細な説明を参照してください。
-
Variable: YaTeX-prefix
- yatex-mode 中のプリフィクスキー (\C-c)
-
Variable: YaTeX-inhibit-prefix-letter
- prefix キーの直後のキーバインドで 英字 のものを C-英字 に変更 (
nil
)
-
Variable: YaTeX-fill-prefix
- 本文を書く時の行頭に挿入する接頭辞すなわち fill-prefix (
""(nil)
)
-
Variable: YaTeX-user-completion-table
- 学習したLaTeXコマンド保存ファイル名 (
"~/.yatexrc"
)
-
Variable: YaTeX-kanji-code
- 文書を作成する時の漢字コード nil=既存のコードのまま 0=no-conversion1=Shift JIS, 2=JIS, 3=EUC (2 (MS-DOSでは1))
-
Variable: tex-command
- LaTeXタイプセッタコマンド名 (
"platex"
)
-
Variable: dvi2-command
- プレヴューアコマンド名 (
"xdvi -geo +0+0 -s 4"
)
-
Variable: dviprint-command-format
- dviファイルの印刷に使われるコマンド式 (
"dvi2ps %f %t %s | lpr"
)
-
Variable: dviprint-from-format
- 上の
%f
に相当する開始ページ指定書式、%b
が開始ページ番号に変 わる ("-f %b"
)
-
Variable: dviprint-to-format
-
%t
に相当する終了ページ指定書式、%e
が終了ページ番号に変わる ("-t %e"
)
-
Variable: makeindex-command
- makeindexコマンド (
"makeindex"
(MS-DOSでは"makeind"
))
-
Variable: YaTeX-need-nonstop
-
\nonstopmode{}
を自動的に付加するか (nil
)
-
Variable: latex-warning-regexp
- latexコマンドの出力するウォーニング行の正規表現 (
"line.* [0-9]*"
)
-
Variable: latex-error-regexp
- 同じくエラー行の正規表現 (
"l\\.[1-9][0-9]*"
)
-
Variable: latex-dos-emergency-message
- MS-DOS上で動作する latex コマンドが、エラーにより停止するとき出力するメッ セージ (
"Emergency stop"
)
-
Variable: latex-message-kanji-code
- タイプセッタの出力するメッセージの漢字コード.タイプセットバッファ の出力が化ける時は、これを設定する (2, Nemacsでのみ有効)
-
Variable: NTT-jTeX
- 古いNTT-jTeX使用時のようにインデントした行の先頭と前の行の (タイプセット後の)字間が空いてしまうのを嫌う場合は
t
にする (nil
)
-
Variable: YaTeX-item-regexp
- itemの桁揃えの時に用いる、itemの正規表現 (
"\\\\(sub\\)*item"
)
-
Variable: YaTeX-verb-regexp
- verbコマンドの正規表現。先頭の\\\\はつけない (
"verb\\*?\\|path"
)
-
Variable: YaTeX-nervous
- ローカル辞書を用いる時
t
(t
)
-
Variable: YaTeX-sectioning-regexp
- セクション区切り設定コマンドの正規表現 (
"\\(part\\|chapter\\*?\\|\\(sub\\)*\\(section\\|paragraph\\)\\*?\\)\\b"
)
-
Variable: YaTeX-fill-inhibit-environments
- fill を抑止する環境名のリスト (
'("tabular" "tabular*" "array" "picture" "eqnarray" "eqnarray*" "equation" "math" "displaymath" "verbatim" "verbatim*")
)
-
Variable: YaTeX-uncomment-once
- 領域uncommentで行頭の複数の
%
を全て削除するか (nil
)
-
Variable: YaTeX-close-paren-always
- 開き括弧の入力で常に閉じ括弧を入力する (
t
)
-
Variable: YaTeX-auto-math-mode
- 数式モードの切り替えを自動的に行う (
t
)
-
Variable: YaTeX-math-key-list-private
- 数式イメージ補完で用いる (プリフィクスキー . 対応補完テーブル) の alist (
nil
)。補完テーブルの書き方については`yatexmth.el'を参照。
-
Variable: YaTeX-default-pop-window-height
- 1画面の時にタイプセットバッファを初めて作成する時の高さ。数値で行数、数字 文字列でEmacsウィンドウに対する百分率 (10)
-
Variable: YaTeX-help-file
- 共用ヘルプファイル (`$doc-directory/../../site-lisp/YATEXHLP.jp')
-
Variable: YaTeX-help-file-private
- 個人用ヘルプファイル (`"~/YATEXHLP.jp"')
-
Variable: YaTeX-no-begend-shortcut
-
[prefix] b ?? のショートカットを使わず、[prefix] b だけで補完 入力に入る (
nil
)
-
Variable: YaTeX-hilit-pattern-adjustment-private
- 正規表現とそれにマッチするものの論理的意味をシンボルであらわしたものの リスト…のリスト。hilit19 を組み込んでいる時のみ有効。 詳しくは
(assq 'yatex-mode hilit-patterns-alist)
した結果と、変数 YaTeX-hilit-pattern-adjustment-default
の値(と場合 によっては hilit19 のドキュメント)を参照せよ。
-
Variable: YaTeX-sectioning-level
- LaTeXのセクション単位宣言コマンドとその論理的高さのalist。
-
Variable: YaTeX-hierarchy-ignore-heading-regexp
- Hierarchy バッファは通常ファイルヘッダとして、LaTeXのセクション宣言コマン ドの引数を検索し、それがなければコメント行を探すが、その際にヘッダとしては 意味を持たないパターンをこの変数に設定する。デフォルトでは RCS ヘッダとモー ド指定行(-*- xxx -*-)が設定されている。
-
Variable: YaTeX-skip-default-reader
- Non-nil に設定するとsection型コマンドの引数入力時、アドイン関数がなければ ミニバッファでの読み込みをせずに入力を完了させる (
nil
)
-
Variable: YaTeX-create-file-prefix-g
-
\include
などで prefix gした時に、ジャンプ先が存在しないファイ ルであってもオープンする (nil
)
-
Variable: YaTeX-simple-messages
- 各種補完時のメッセージ出力を簡素化する (
nil
)
-
Variable: YaTeX-hilit-sectioning-face
- 色付けが有効な時の
\part
の色 ('(yellow/dodgerblue yellow/slateblue)
)。 リストの第一要素は hilit-background-mode
が 'light
の時の、 第二要素は 'dark
の時の \chapter
の色で、文字色/背景色 のよ うに指定する。
-
Variable: YaTeX-hilit-sectioning-attenuation-rate
- 色付けが有効な時の、
\subparagraph
の色を \chapter
の濃度の何 %薄くしたものにするか ('(15 40)
) YaTeX-hilit-sectioning-face
の項参照。
-
Variable: YaTeX-use-AMS-LaTeX
- AMS-LaTeX を使用する場合は
t
に設定する (nil
)
-
Variable: YaTeX-use-LaTeX2e
- LaTeX2e を使用する場合は
t
に設定する (t
)
-
Variable: YaTeX-template-file
- 新規ファイル作成時に自動挿入するファイル名 (
~/work/template.tex
)
-
Variable: YaTeX-search-file-from-top-directory
- inputするファイルを探すときの基準ディレクトリをmainファイルのあるディレクト リにするか (
t
)
-
Variable: YaTeX-use-font-lock
- ソースの色づけパッケージとして font-lock を利用するかどうか (
(featurep 'font-lock)
)
-
Variable: YaTeX-use-hilit19
- ソースの色づけパッケージとして hilit19 を利用するかどうか (
(featurep 'hilit19)
)
-
Variable: YaTeX-use-italic-bold
- italic, boldフォントを野鳥が探すかどうか (Emacs20以降なら
t
) font-lock利用時のみ有効。 ((featurep 'hilit19)
-
Variable: YaTeX-singlecmd-suffix
- 全てのmaketitle型コマンドの補完入力直後に挿入する文字列。
"{
"} などがお勧め。
-
Variable: YaTeX-package-alist-private
-
LaTeX2eのパッケージ名とその中に含まれるマクロのリスト。 適切に設定しておくと本文入力時にマクロを補完入力すると そのマクロに必要なパッケージを usepackage するか自動的に検査してくれる。 していなければ \usepackage を自動追加することもできる。 リストは
|
'((パッケージ名1
(補完タイプ マクロのリスト……)
(補完タイプ マクロのリスト……))
(パッケージ名2
(補完タイプ マクロのリスト……)
(補完タイプ マクロのリスト……))………)
|
という形式にする。補完タイプは env, section, maketitle
のどれか。 具体例は変数 YaTeX-package-alist-default
の値参照。
-
Variable: YaTeX-tabular-indentation
- tabular/array 環境で現在行の先頭位置が表の第Nカラムのときは 標準インデント位置から N*YaTeX-tabular-indentation 桁下げた インデントにする。
-
Variable: YaTeX-noindent-env-regexp
- 別の環境内にあっても \begin{} が行頭から始まるべき環境名の正規表現。 verbatim環境などを指定する。
-
Variable: YaTeX-ref-default-label-string
- \ref{} のラベル補完でラベル未設定のものに自動的に生成する ラベル名の書式。strftime(3)関数に似た日付ベースで指定する。 利用できる書式は以下のとおり。 %y -> 西暦下二桁, %b -> 月の英名, %m -> 月(1〜12) %d -> 日, %H -> 時, %M -> 分, %S -> 秒, %qx -> アルファベットで26進数化した yymmdd. %qX -> アルファベットで26進数化した HHMMSS. デフォルトは "%H%M%S_%d%b%y"
-
Variable: YaTeX-ref-generate-label-function
-
\ref{}のラベル名自動生成のときに使う関数のシンボル。 デフォルトは標準の YaTeX::ref-generate-label 関数が割り当ててある。 引数を2つ取る関数を定義して、この変数にセットするとその関数を呼んだ 結果をデフォルトのラベル名候補とする。設定例:
|
(setq YaTeX-ref-generate-label-function 'my-yatex-generate-label)
(defun my-yatex-generate-label (command value)
(and (string= command "caption")
(re-search-backward "\\\\begin{\\(figure\\|table\\)}" nil t)
(setq command (match-string 1)))
(let ((alist '(("chapter" . "chap")
("section" . "sec")
("subsection" . "subsec")
("figure" . "fig")
("table" . "tbl"))))
(if (setq command (cdr (assoc command alist)))
(concat command ":" value)
(YaTeX::ref-generate-label nil nil))))
|
21.1.2 カスタマイズ変数設定例
URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=Sample+definitions"
"yatex/カスタマイズ変数設定例"へのコメント(無し)
たとえば、prefix キーとしてESCを使用し、新たな補完候補を格納するファ イルを、`~/src/emacs/yatexrc' にし、行頭の prefix をタブ文字一つに変 えたいときは、
|
(setq YaTeX-prefix "\e"
YaTeX-user-completion-table "~/src/emacs/yatexrc"
YaTeX-fill-prefix " ")
|
を `~/.emacs' に加えます。
21.1.3 hook変数
URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=Hook+variables"
"yatex/hook変数"へのコメント(無し)
また、hook 変数 yatex-mode-hook
, yatex-mode-load-hook
を用 意しています。すべての yatex-mode のバッファで作用させたいものは、 yatex-mode-hook
に記述し、`yatex.el' をロードする時だけ作用さ せたいものはyatex-mode-load-hook
に記述します。例えば、 outline-minor-mode
を利用する場合、それぞれのバッファで outline-minor-mode
を有効にしたいので、yatex-mode-hook
を次 のように設定します。
|
(setq yatex-mode-hook
'(lambda () (outline-minor-mode t)))
|
逆に、独自のキー定義を行いたい時などは、yatex-mode-load-hook
を利用 します。例えば、begin 型補完において、 document や、enumerate 以外の環境名 もショートカットキーで入れたいなどという時は、次のようにします。以下の例は、 [prefix] ba で \begin{abstract}
, \end{abstract}
を 挿入します。
|
(setq yatex-mode-load-hook
'(lambda() (YaTeX-define-begend-key "ba" "abstract")))
|
なお、新たなキーの定義には、関数 YaTeX-define-key
YaTeX-define-begend-key
を利用するようにしてください。
21.1.4 hook用ファイル
URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=Hook+file"
"yatex/hook用ファイル"へのコメント(無し)
変数 yatex-mode-load-hook
で定義する内容が多い時は、 `yatexhks.el'というファイルを作り、その中に野鳥関連の設定を書く事で、 初期化の時に自動的にロードします。
21.2 付加関数(アドイン関数)
URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=Add%2Din+functions"
"yatex/付加関数(アドイン関数)"へのコメント(無し)
各種補完時に、環境名やコマンド名に応じたきめ細やかな補完入力機能を実現す るための関数を作成することができます。この関数の作成方法や、組み込み方法に 関しては、yatexadd.doc
をご覧ください。