yatex

view docs/yatexj @ 123:590fc51462c7

New typeset menu `latex+p(D)f' added. Call dvipdfmx when typesetting succeeded.
author yuuji@gentei.org
date Thu, 27 May 2010 10:16:56 +0900
parents ce2deaceb818
children 6d682b9d4bc8
line source
1 Info file: yatexj, -*-Text-*-
2 produced by `texinfo-format-buffer'
3 from file `yatexj.tex'
4 using `texinfmt.el' version 2.42 of 7 Jul 2006.
6 
7 File: yatexj, Node: Top, Next: Intro, Prev: (dir), Up: (dir)
9 * Menu:
11 * Intro:: はじめに
12 * Terminology:: マニュアル参照上の注意
13 * Main features:: 主な機能
14 * Installation:: インストール
15 * Invocation:: プロセス起動
16 * %#notation :: %#記法
17 * Completion:: 補完入力
18 * Local dictionary:: ローカル辞書
19 * Commenting out:: コメントアウト
20 * Cursor jump:: カーソルジャンプ
21 * Modifying/Deleting:: LaTeXコマンドの変更/削除
22 * Filling:: 桁揃え
23 * Includeonly:: 勝手に includeonly
24 * What column:: カラム位置ガイド
25 * Intelligent newline:: おまかせ改行
26 * Usepackage cheker:: 先回りusepackage
27 * Changing mode of YaTeX:: 野鳥動作モード変更
28 * Online help:: LaTeXオンラインヘルプ
29 * Inclusion hierarchy browser:: ファイル分割階層構造の表示
30 * Cooperation with other packages:: 他パッケージとの連携
31 * Customizations:: カスタマイズ
32 * Etc:: その他
33 * Copying:: 取り扱い
34 * Concept Index:: 索引
38 
39 File: yatexj, Node: Intro, Next: Terminology, Prev: Top, Up: Top
41 はじめに
42 ********
44 野鳥は、GNU Emacs で LaTeX 用の文書を作成する時に pLaTeX などのタイプ
45 セットコマンドや、プレヴューアの起動を Emacs 編集画面中から行えるように
46 すると共に、拡張性の高い種々の補完機能によりソーステキストの編集を支援
47 します。さらに LaTeX コマンドのオンラインヘルプによりマニュアルを調べる
48 手間を軽減します。
50 English manual *Note Top: (yatexe)Top.
53 
54 File: yatexj, Node: Terminology, Next: Main features, Prev: Intro, Up: Top
56 本マニュアル参照上の注意
57 ************************
59 本マニュアルでは以下の表記を用います。
61 * begin型コマンド
63 `\begin{環境} 〜 \end{環境}'という形式のLaTeXコマンドを指します。
64 begin型コマンドを補完入力することをbegin型補完と呼びます。
66 * section型コマンド
68 `\section{タイトル}'や`\mbox{内容}'のように引数を取るLaTeXコマンド
69 を指します。
71 * maketitle型コマンド
73 `\maketitle'や`\tableofcontents'のように引数を取らないLaTeXコマン
74 ドを指します。
76 * large型コマンド
78 `{\large ...}' や `{\tt ...}' のようなフォント/サイズ指定子を指し
79 ます。
81 * `[prefix]'
83 野鳥の機能を呼び出すためのプリフィクスキー。デフォルトでは`C-c'に
84 割り当てられているので、特に変更していない場合本マニュアルの
85 `[prefix]' という表記は、`C-c' と読み換えてください。
88 
89 File: yatexj, Node: Main features, Next: Installation, Prev: Terminology, Up: Top
91 主な機能
92 ********
94 * タイプセッタやプレヴューアなどの編集画面からの起動(`C-c t')
95 * カーソル位置によらない固定リジョンの部分タイプセット
96 * \includeonlyのワンタッチ更新
97 * エラー箇所への自動ジャンプ(`C-c '')
98 * `\begin{}, \end{}, \section...' などの LaTeXコマンドの補完入力
99 (`C-c b', `C-c s', `C-c l', `C-c m')
100 * 既に入力したテキストを環境やコマンド引数の中に取り込む括り補完
101 (`C-u' +通常補完キー)
102 * セクション区切り入力時の文書構造アウトライン表示
103 * セクションコマンドの一括シフト (*Note view-sectioning::)
104 * 補完辞書の学習
105 * LaTeX の環境やコマンドに応じたガイド付き引数入力
106 * 野鳥にないガイド付き引数入力関数の自動生成(`yatexgen.el')
107 * LaTeX コマンドの削除/変更(`C-c k', `C-c c')
108 * ファイル間、`\begin'<->`\end'間、
109 `\ref'<->`\label'間、
110 `\cite'<->`\bibitem'ジャンプ(`C-c g')
111 * 一括コメントアウト/アンコメントアウト(`C-c >', `C-c <', `C-c ,',
112 `C-c .')
113 * アクセント記号/数式環境用コマンド/ギリシャ文字の入力支援(`C-c a',
114 `;', `/')
115 * tabular/array環境のカラム位置ガイド
116 * 標準的 LaTeX コマンドのオンラインヘルプ(`C-c ?', `C-c /')
117 * ドキュメントのインクルード構造の視覚的表示とバッファ切り替え(`C-c
118 d')
119 * 補完入力したマクロに応じて必要な \userpackage を入れてくれる先回り
120 userpackage
121 * \labelを打つことはもう忘れよう! refやcite補完入力で自動生成します
124 
125 File: yatexj, Node: Installation, Next: Invocation, Prev: Main features, Up: Top
127 起動法
128 ******
130 野鳥起動のための設定
131 ====================
133 ~/.emacsに下の2項目を加えます。
135 (setq auto-mode-alist
136 (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
137 (autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
139 次に野鳥の emacs-lisp ファイル群を置くディレクトリを load-path に加えま
140 す。たとえば、 `~/src/emacs/yatex'に置くのであれば、
142 (setq load-path (cons (expand-file-name "~/src/emacs/yatex") load-path))
144 などとします。
146 以上の設定により、拡張子が .tex であるファイルを編集すると自動的に野
147 鳥がロードされます。野鳥が正常に起動できたときはモードラインの表示が
148 「やてふ」に変わります。
151 タイプセッタ/プレヴューア環境の設定
152 ===================================
154 利用する外部プログラムに関する以下の変数を確認し、必要なら正しい値に
155 変更します。
156 `tex-command'
157 ... 起動するタイプセッタのコマンド名
158 `dvi2-command'
159 ... 起動するプレヴューアのコマンド名
160 `NTT-jTeX'
161 ... 改行+インデントによって、タイプセット後の字間が空いて
162 しまうのを抑制する場合にtにする(古いNTT-jTeXで顕著に現れる)。具体
163 的には、fillするときに各行の終わりに%を付加するようになる。
164 `YaTeX-kanji-code'
165 ... 文書を作成する時の漢字コード
166 `dviprint-command-format'
167 ... ファイルの印刷に使われるコマンド列の書式
168 `makeindex-command'
169 ... makeindexコマンド
171 これらを変更する場合は、やはり`~/.emacs'にて、たとえば
172 (setq tex-command "bigjlatex")
173 のようにしてください。どのような値をセットすれば良いかについては、
174 *Note All customizable variables::を参照してください。
178 
179 File: yatexj, Node: Invocation, Next: %#notation, Prev: Installation, Up: Top
181 latexコマンド起動
182 *****************
184 LaTeXソースの編集中、次のキー入力により、platex などのタイプセットプロ
185 グラム(以後タイプセッタと呼ぶ)、プレヴューアなどの起動ができます。
187 `[prefix] t j'
188 ... タイプセッタ(platex)起動
189 `[prefix] t r'
190 ... タイプセッタ起動(領域指定)
191 `[prefix] t k'
192 ... 動作中のタイプセッタの停止
193 `[prefix] t b'
194 ... jbibtex起動
195 `[prefix] t p'
196 ... プレヴューア起動
197 `[prefix] t l'
198 ... lpr(プリントアウト用)コマンド起動
199 `[prefix] t s'
200 ... xdvi -remote でのサーチ
202 * Menu:
204 * Calling typesetter:: タイプセッタ起動
205 * Calling previewer:: プレヴューア起動
206 * Print out:: プリントアウト用コマンドの起動
209 
210 File: yatexj, Node: Calling typesetter, Next: Calling previewer, Prev: Invocation, Up: Invocation
212 タイプセッタ起動
213 ================
215 タイプセッタを起動すると、編集ウィンドウが2つに分割され、片方のウィン
216 ドウにタイプセット画面が表示されます。出力されるメッセージと連動しタイ
217 プセットバッファは自動的にスクロールします。もし、途中でエラーが起こっ
218 て止まってしまった場合にはタイプセットバッファに移り、(`C-x o') タイプ
219 セッタの出している ? プロンプトに対して、`x' (処理の中断)などの指示を送
220 ることができます。エラーを修正する場合は、
222 `[prefix] ''
223 `(prefix+アポストロフィ)'
224 ... 直前のエラー発生行へジャンプ
226 を入力することにより、タイプセッタがエラーを発生した行に移ることができ
227 ます。また、タイプセッタの出力する overfull hbox などのウォーニング行に
228 も対応していますので、順次 `[prefix] '' を押すことにより、一つ前のウォー
229 ニング発生行にジャンプしていきます。
231 もし、気になるエラー行があった場合は、タイプセットバッファで、エラー
232 の表示されている行にカーソルを合わせスペースキーを押すと LaTeX ソースの
233 対応する行にジャンプします。
236 領域タイプセット
237 ----------------
239 ポイントとマークの間、あるいはテキスト中に埋め込んだ `%#BEGIN' と
240 `%#END'の間の領域(*Note %#notation::)だけを切り取ってタイプセットするこ
241 とができます。この場合の documentclass は、単一ファイルの LaTeX ソース
242 の編集時にはそのファイルの documentclass が、別ファイルから include し
243 ている場合にはメインファイルの documentclass が自動的に選択されます。指
244 定領域は、メインファイルのあるディレクトリの`texput.tex'という臨時ファ
245 イルに出力されますので、上書きには注意してください。
248 
249 File: yatexj, Node: Calling previewer, Next: Print out, Prev: Calling typesetter, Up: Invocation
251 プレヴューア起動
252 ================
253 `[prefix] t p' によりプレヴューアの起動ができます。さらに、もしあなた
254 が、-remote 機能つきのxdviを利用している場合は `[prefix] t s' を押すこ
255 とによりカーソル位置の文字列を検索してそのページを表示するようにすでに
256 起動中のxdviに命令を送ります。これにより、現在編集中の箇所のタイプセッ
257 ト結果を即座に見ることができます。
261 
262 File: yatexj, Node: Print out, Prev: Calling previewer, Up: Invocation
264 プリントアウト
265 ==============
267 `[prefix] t l'を押してプリントアウトを指示すると、出力開始/終了ページ
268 を聞いてくるので、それぞれに答えます。これを省略したい時は、
269 universal-argument をつけ、
272 `C-u [prefix] t l'
273 ... ページ確認省略lpr起動
275 のように起動してください。
278 
279 File: yatexj, Node: %#notation, Next: Completion, Prev: Invocation, Up: Top
281 %#記法
282 ******
284 本文中に`%#'ではじまるキーワードを埋め込むことでタイプセッタ起動等の
285 制御をすることができます。
287 * Menu:
289 * Changing typesetter:: タイプセット用コマンドの変更
290 * Splitting input files:: 入力ファイル分割
291 * Fix region for typesetting:: 領域の固定
292 * lpr format:: プリントアウトコマンド用フォーマット
293 * Editing %# notation:: %#記法の編集
296 
297 File: yatexj, Node: Changing typesetter, Next: Splitting input files, Prev: %#notation, Up: %#notation
299 タイプセット用コマンド変更
300 ==========================
302 起動するコマンドを変えたい時は本文中に次のような行を書きます。
305 %#!jlatex-ntt
307 NTT jTeX と、ASCII jTeX を使い分けたいような場合に便利でしょう。
311 
312 File: yatexj, Node: Splitting input files, Next: Fix region for typesetting, Prev: Changing typesetter, Up: %#notation
314 入力ファイル分割
315 ================
317 また、章毎に別ファイルの .tex を作成している場合で、`main.tex'から
318 `sub.tex'を `\include'しているような時は、`sub.tex'の任意の位置に次のよ
319 うな行を埋め込みます。
321 %#!platex main.tex
324 上の例のようにコマンド名だけでなく引数も書いた場合には、全てをそのまま
325 shell に渡すので次のように書けば、ghostview などをプレヴューアに使う時
326 に便利です。
329 %#!platex main ; dvi2ps main.dvi > main
331 なお、この行の最後の単語のピリオド以前を「メインファイル」のベースネー
332 ムであると仮定します(上の2つの場合どちらも`main')。この行に記述した、
333 `%f'はメインファイル名に、`%r' はメインファイルの拡張子を取り除いた部分
334 に置換されます。ただし、`%f,%r'を利用した場合、初回タイプセット時に必ず
335 メインファイル名の入力を促されます。
337 `[prefix] g' (*Note Cursor jump::参照) でのファイル間ジャンプを有効に
338 機能させるため、入力ファイル分割時には次のことに注意して下さい。
340 1. サブディレクトリを作って、その中にサブファイルを置くことはできるが
341 サブディレクトリのサブディレクトリには置けない。
342 2. メインファイルからサブディレクトリ内のファイルを include
343 する時には、相対パス指定を用いて、
344 `\include{chap1/sub}'のように記述。
345 3. メインファイルが一つ上のディレクトリにある場合も、サブファイルには
346 %#!platex main.tex のように記述する(../mainではない)。
351 
352 File: yatexj, Node: Fix region for typesetting, Next: lpr format, Prev: Splitting input files, Up: %#notation
354 領域の固定
355 ==========
357 `[prefix] tr' の領域指定のタイプセットでは、とくに指定のないかぎり、
358 `C-SPC'でマークした位置と、ポイント(カーソル位置)の間を領域とみなします
359 が、必ず決まった領域をタイプセットしたい場合は、その領域を
361 %#BEGIN
362 <渡したい領域>
363 %#END
365 のように`%#BEGIN'と`%#END'で囲み、カーソルを「`%#BEGIN'以降」に置いてく
366 ださい。この時の領域決定規則をまとめると次のようになります。
369 1. カーソル位置よりバッファの先頭方向に`%#BEGIN'というキーワードがあ
370 る場合
372 1. `%#BEGIN'よりバッファの末尾方向に`%#END'というキーワードが見つかっ
373 た場合。
374 =>`%#BEGIN' から、その `%#END' のある位置まで。
375 2. `%#END' が見つからなかった場合。
376 =>バッファの最後尾まで。
378 2. カーソル位置よりバッファの先頭方向に `%#BEGIN' というキーワードが
379 見つからなかった場合。
380 =>マーク(`C-SPC'位置)とポイント(カーソル位置)の間の領域。
382 tabular 環境を何度も試行錯誤しているような場合は、`\begin'の前の行に
383 `%#BEGIN' と書き、`\end' の次の行に `%#END' と書いておくと簡単に作表結
384 果をテストすることができます。また、長い .tex ファイルの後半に
385 `%#BEGIN' を書いておけば、前半の部分は無視できます。このBEGINとENDの消
386 し忘れには十分ご注意下さい。
390 
391 File: yatexj, Node: lpr format, Next: Editing %# notation, Prev: Fix region for typesetting, Up: %#notation
393 lprフォーマット
394 ===============
396 まず、プリントアウト用コマンド列のフォーマットについて説明します。コ
397 マンド列フォーマットは、3つの Lisp 変数によって表現されます。デフォルト
398 の dvi2ps 用のフォーマットを例に説明します。
400 `(1)dviprint-command-format'
401 `"dvi2ps %f %t %s | lpr"'
403 `(2)dviprint-from-format'
404 `"-f %b"'
406 `(3)dviprint-to-format'
407 `"-t %e"'
409 実際にプリントアウトする時は、(1)中の %s がファイル名に置き換えられ、
410 %f が(2)の内容、%t が(3)の内容に置き換えられます。その際に(2)の文字列中
411 の %b は「出力開始ページ」、(3)の文字列中の %e は「出力終了ページ」に置
412 き換えられます。もし、ページを指定しない時には、%f, %t 両方とも無視され
413 ます。
415 この、dviprint-command-format を臨時に変えたい時は、LaTeX のソーステ
416 キスト中の任意の場所に、
418 %#LPR dvi2ps %f %t %s | 4up -page 4 | texfix | lpr -Plp2
420 のように書いて下さい。プリントアウトするページ範囲をいちいち聞かせない
421 ようにする時に
423 %#LPR dvi2ps %s | lpr
425 などとするのも便利かもしれません。
428 
429 File: yatexj, Node: Editing %# notation, Prev: lpr format, Up: %#notation
431 %#記法自体の編集
432 ================
434 以上のような`%#'で始まる各種制御記法を編集するためには
436 `[prefix] %'
437 ... `%#'記法編集メニュー
439 を押します。
441 !)Edit-%#! B)EGIN-END-region L)Edit-%#LPR
443 というメニューが出て来るので、`%#!'に続くコマンドを変更したい時には
444 `!'を、`%#LPR'で lpr フォーマットを変えたい時は`l'を、あらか
445 じめ設定したリジョンを `%#BEGIN' 〜 `%#END' で括りたい時は、
446 `b'を押します。`b'を選んだ時には、それまでバッファ中に置かれていた
447 `%#BEGIN', `%#END' が自動的に消去されます。
450 
451 File: yatexj, Node: Completion, Next: Local dictionary, Prev: %#notation, Up: Top
453 補完入力
454 ********
456 LaTeX での環境名などは、野鳥の補完機能を利用して能率的に入力すること
457 ができます。
459 * Menu:
461 * begin型補完::
462 * section型補完::
463 * large型補完::
464 * maketitle型補完::
465 * Arbitrary completion:: 随時補完
466 * end補完::
467 * Accent mark completion:: アクセント記号補完
468 * Image completion:: 数式記号イメージ補完
469 * Greek letter completion:: ギリシャ文字補完
472 
473 File: yatexj, Node: begin型補完, Next: section型補完, Prev: Completion, Up: Completion
475 begin型補完
476 ===========
478 `\begin{env}...\end{env}'の様な形式の入力の補完をbegin型補完と呼ぶこ
479 とにします。begin 型補完は、
481 `[prefix] b'
482 ... begin 型補完開始(標準では `C-c b')
484 で始まります。頻繁に用いられる次の LaTeX 環境の補完は、[prefix] `b'に続
485 く次の1文字を入力するだけで、`\begin{xxx}...\end{xxx}'を完成させます。
487 `[prefix] b c'
488 ... `\begin{center}...\end{center}'
489 `[prefix] b d'
490 ... `\begin{document}...\end{document}'
491 `[prefix] b D'
492 ... `\begin{description}...\end{description}'
493 `[prefix] b e'
494 ... `\begin{enumerate}...\end{enumerate}'
495 `[prefix] b E'
496 ... `\begin{equation}...\end{equation}'
497 `[prefix] b i'
498 ... `\begin{itemize}...\end{itemize}'
499 `[prefix] b l'
500 ... `\begin{flushleft}...\end{flushleft}'
501 `[prefix] b m'
502 ... `\begin{minipage}...\end{minipage}'
503 `[prefix] b t'
504 ... `\begin{tabbing}...\end{tabbing}'
505 `[prefix] b T'
506 ... `\begin{tabular}...\end{tabular}'
507 `[prefix] b ^T'
508 ... `\begin{table}...\end{table}'
509 `[prefix] b p'
510 ... `\begin{picture}...\end{picture}'
511 `[prefix] b q'
512 ... `\begin{quote}...\end{quote}'
513 `[prefix] b Q'
514 ... `\begin{quotation}...\end{quotation}'
515 `[prefix] b r'
516 ... `\begin{flushright}...\end{flushright}'
517 `[prefix] b v'
518 ... `\begin{verbatim}...\end{verbatim}'
519 `[prefix] b V'
520 ... `\begin{verse}...\end{verse}'
522 上記のもの以外の環境名は Emacs の持つインクリメンタルな補完機能を用い
523 て入力します(上記の環境名も以下の補完入力可能)。
525 `[prefix] b SPC'
526 ... begin 型補完入力
528 `[prefix] b SPC' と入力すると、最下行のミニバッファに
530 Begin environment(default document):
532 と表示されます。ここで、何も入れずにリターンキーのみ押すと、括弧内に出
533 ているデフォルトの環境名が入力されますが、適当な環境名を入力すると、
534 `\begin{環境名} … \end{環境名}'が文書中に挿入されます。ミニバッファで
535 環境名を入力するときに、環境名の頭文字を入力し「スペース」をたたくと、
536 一致する環境名が内部テーブルに存在した場合、正しい環境名に補完されるの
537 で、入力の手間が省けます。内部テーブルに存在しない環境名を入力した時は
538 ユーザ専用のテーブルに登録され、さらにそのテーブルを自動的に、ユーザ辞
539 書(デフォルトでは `~/.yatexrc')に保存します。
541 さらに、特定の環境を補完入力した時にはその環境で必ず用いられるエントリ
542 を自動挿入します(例: `itemize'環境における`\item'など)。挿入されたエン
543 トリが不要な場合にはundoによって消去して下さい。
546 既に書いたテキストを環境で括る
547 ------------------------------
549 ところで、最初に書いてしまったブロックを後から、itemize 環境の中
550 に閉じこめたいと思うことがありますが、そのようなときは、あらかじめ
551 閉じこめたい段落をマークして、begin 型補完の各コマンドの `[prefix]'
552 の次の『小文字の 'b'』 を『大文字』に変えて起動して下さい。(または、
553 `C-u' を先に打ち、universal argument をつけても可能です)
555 例えばあるパラグラフを description 環境の中に入れたいときは、そのパラ
556 グラフをマークしてから、
558 `[prefix] B D'
559 `(または ESC 1 [prefix] b D)'
560 `(または C-u [prefix] b D など)'
562 とタイプしてください。これは、`[prefix] b SPC'の補完入力にもあてはまり、
563 `b' を大文字に変えて、`[prefix] B SPC' とタイプすれば、あらかじめマーク
564 しておいたリジョンを、begin と end の環境で括ります。
567 
568 File: yatexj, Node: section型補完, Next: large型補完, Prev: begin型補完, Up: Completion
570 section型補完
571 =============
573 `\section{目的}' のような形式の入力の補完を section 型補完と呼ぶこと
574 にします。section 型補完は、
576 `[prefix] s'
577 ... section 型補完
579 で実行します。`[prefix] s' を入力するとミニバッファに、
581 (C-v for view-section) \???{} (default documentclass):
583 というプロンプトが現れるので、そこで `section' のような LaTeX コマンド
584 名を入力します。ここでもリターンキーのみで括弧内のデフォルト値が選択さ
585 れるほか、`chapter'などのような頻度の高い名称入力にはスペースキーによる
586 補完機能が有効です。 次に、{}の中身の入力を促す、
588 \section{???}:
590 というプロンプトが現れるので、セクションのタイトルなどを入力します。た
591 とえば、
593 (C-v for view-section) \???{} (default documentclass): section
594 \section{???}: 目的
596 のように入力した場合は、文章中に
598 \section{目的}
600 が挿入され、
602 (C-v for view-section) \???{} (default section): vspace*
603 \vspace*{???}:
605 のように{}の中身を省略したときは、
607 \vspace*{}
609 だけが挿入され、改行はせずカーソルは自動的に中括弧の内側に移動します。
611 * Menu:
613 * 2個以上の引数をとる section型コマンド::
614 * Enclose section-type command:: 括り補完
615 * Recursive completion:: 再帰補完
616 * view-sectioning:: セクション区切りのアウトライン表示
617 * label-generation:: ラベル自動生成
620 
621 File: yatexj, Node: 2個以上の引数をとる section型コマンド, Next: Enclose section-type command, Prev: section型補完, Up: section型補完
623 2個以上の引数をとる section型コマンド
624 -------------------------------------
626 ところで、`\addtolength{\topmargin}{8mm}' などのように、引数を二つ以
627 上取る LaTeX コマンドがあります。このようなコマンドの補完入力には、
628 section 型補完呼び出しに引数を付けてください。例えば上の`addtolength'
629 の例であれば、引数2を指定します。つまり、
631 C-u 2 [prefix] s (または、ESC 2 [prefix] s)
633 と section 型補完を呼び出した後、
635 (Ctrl-v for view-section) \???{} (default vspace*): addtolength
636 \addtolength{???}: \topmargin
637 Argument 2: 8mm
639 のように入力してください。最初の addtolength の部分と、第一引数である
640 topmargin の入力は当然スペースによる補完入力が可能です。ユーザ辞書に登
641 録される LaTeX コマンドには、この引数の数も学習されるので、最初の補完の
642 時引数の数を指定して起動しておけば、以後の補完時には、記憶された個数だ
643 け引数を聞いて来るようになります。あとで引数の個数を変えたい時は、再び
644 `C-u' を用いて個数を指定し直すことで、自動的に辞書中の引数の個数の部分
645 を更新します。
649 
650 File: yatexj, Node: Enclose section-type command, Next: Recursive completion, Prev: 2個以上の引数をとる section型コマンド, Up: section型補完
652 既に書いたテキストを括る
653 ------------------------
655 また、起動コマンドの`s'を大文字に変えて起動すると、あらかじめ書いた文
656 章を section 型コマンドの第一引数として括ります。
659 
660 File: yatexj, Node: Recursive completion, Next: view-sectioning, Prev: Enclose section-type command, Up: section型補完
662 再帰補完
663 --------
665 高度な使い方になるかもしれませんが、section型補完の引数の入力時にさら
666 に補完入力を利用することができます(section/large/maketitle型に限る)。
667 section型コマンドの引数に更に LaTeX コマンドが来る場合にはミニバッファ
668 で野鳥の補完キーを再帰的に入力することで引数の入力も効率的に行なえます。
671 
672 File: yatexj, Node: view-sectioning, Next: label-generation, Prev: Recursive completion, Up: section型補完
674 セクション区切りのアウトライン表示
675 ----------------------------------
677 通常のsection型補完の時にミニバッファで`C-v'を押すと現在存在するセク
678 ション区切りコマンド全てを `*Sectioning Lines*'というバッファに一覧表示
679 します(「<<--」のついている行がもっとも近いセクション区切り)。この時ミ
680 ニバッファで`C-p', `C-n' を押すと`part', `chapter', ...,
681 `subparagraph' のコマンドが論理階層の高さにしたがって上下します。また、
682 `C-v', `M-v' を押すとセクション区切り一覧バッファがスクロールし、数字の
683 `0'〜`7'を押すとある高さ以上のセクション区切りだけを選んで表示します(実
684 際にやって見れば分かります)。
686 `*Sectioning Lines*'バッファは、
688 `M-x YaTeX-section-overview'
689 ... セクション区切り一覧バッファを生成
691 で作成することができます。このバッファを選択し任意の行でスペースを押す
692 と、該当するセクション区切りのある本文中の場所にジャンプします。さらに、
693 同バッファで `u' を押すと、ソーステキストの対応するセクションコマンドが
694 一階層上がり(例: subsection が section に変わる)、`d'を押すと一階層下が
695 ります。`*Sectioning Lines*'バッファにあるセクション区切りの行をマーク
696 しておいて`U'を押すとリジョン内のものに対応するソーステキストのセクショ
697 ンコマンドすべてが一階層上がり、`D'を押すと下がります。セクション区切り
698 一覧バッファで利用できるキーコマンドには以下のものがあります。
700 `SPC'
701 ... 対応するソース行へジャンプ
702 `.'
703 ... 対応するソース行を表示
704 `u'
705 ... カーソル位置に対応するセクションコマンドを一階層上げる
706 `d'
707 ... カーソル位置に対応するセクションコマンドを一階層下げる
708 `U'
709 ... マークしたセクションコマンドを一階層上げる
710 `D'
711 ... マークしたセクションコマンドを一階層上げる
712 `0〜6'
713 ... レベル n 以下のセクションコマンドを隠して表示
717 
718 File: yatexj, Node: label-generation, Prev: view-sectioning, Up: section型補完
720 ラベル自動生成
721 --------------
723 `\ref{}' や `\cite{@}' マクロをsection型補完で入れた場合参照先となり
724 得るものを全て探してメニューにして選択できます。参照先には`\label{}'を
725 つけておく必要はありません。もしあれば、そのラベルを使い、なければその
726 場で参照先に`\label{}'を作らせてくれます。ラベル名を考えるのは苦痛に感
727 じるものです。全てのカウンタにラベルをつけるのもたいへんです。もうラベ
728 ル名に何をつけるか、ラベルをつけるかつけまいか、などということは忘れま
729 しょう!
732 
733 File: yatexj, Node: large型補完, Next: maketitle型補完, Prev: section型補完, Up: Completion
735 large型補完
736 ===========
738 `{\large }' のような形式の補完を large 型補完と呼ぶことにします。
740 `[prefix] l'
741 ... large 型補完開始
743 がlarge型補完の開始です。`[prefix] l' を押すと、ミニバッファに
745 {\??? } (default large):
747 と表示されるので、上記のものと同じ要領で補完入力して下さい。補完候補に
748 用意されているのは、`footnotesize' や `huge' のような文字サイズ指定子と、
749 `bf'や`dg'のようなフォント指定子です。
752 既に書いた文字を括る
753 --------------------
755 また、begin型補完の時と同様、先に書いてしまった一連の文章の文字のサイ
756 ズを変えたいと思う時がありますが、そのような時は、サイズや大きさを変え
757 たい文字の範囲をマークしてから、呼び出しキーを `[prefix] L' と、大文字
758 の L に変えて呼び出せば、そのリジョン全体が、ブレースで囲まれます。
761 
762 File: yatexj, Node: maketitle型補完, Next: Arbitrary completion, Prev: large型補完, Up: Completion
764 maketitle型補完
765 ===============
767 `\maketitle' の形式の補完を maketitle 型補完と呼ぶことにします。
769 `[prefix] m'
770 ... maketitle 型補完開始
772 で、maketitle 型補完を開始します。補完の要領は今までのものとまったく同
773 じです。LaTeX 用のコマンド名が補完候補として用意されています。
776 
777 File: yatexj, Node: Arbitrary completion, Next: end補完, Prev: maketitle型補完, Up: Completion
779 随時補完
780 ========
782 さて、今まで述べた典型的な LaTeX コマンド形式の補完入力を用いずに、今
783 入力しようとしている LaTeX コマンドを文書中の任意の位置で随時補完するこ
784 ともできます。LaTeX コマンド(先頭が\で始まる)を入力している途中で、
786 `[prefix] SPC'
787 ... 随時補完
789 を入力すれば、全ての補完候補の中から一致するものが選ばれカーソル位置に
790 挿入されます。
793 
794 File: yatexj, Node: end補完, Next: Accent mark completion, Prev: Arbitrary completion, Up: Completion
796 end補完
797 =======
799 現在開いたままの環境名を自動的に検出し、`\end{環境名}'を挿入します。
800 begin 型補完を用いれば環境の閉じ忘れはないのですが、時にはついつい手で
801 `\begin{環境名}' を入れてしまい、悲しい思いをすることがあります。そのよ
802 うな時には気にせず続けて文章を入力し、しかるのちに
804 `[prefix] e'
805 ... end 補完
807 とすることで、現在開いている環境名で \end{} が補われます。
810 
811 File: yatexj, Node: Accent mark completion, Next: Image completion, Prev: end補完, Up: Completion
813 アクセント記号補完
814 ==================
816 欧文のアクセント記号(`\`{o}'など)を入力する時は、
818 `[prefix] a'
819 ... アクセント記号入力
821 を押すと、ミニバッファに
823 1:` 2:' 3:^ 4:" 5:~ 6:= 7:. u v H t c d b
825 というメニューが出て来るので、数字、または対応する記号/英字を入力して下
826 さい。すると編集バッファに、
828 \`{}
830 があらわれ、カーソルが{}内に位置するので、さらに一文字入力する事で、
832 \`{o}
834 が完成され、カーソルは{}の外に戻ります。
837 
838 File: yatexj, Node: Image completion, Next: Greek letter completion, Prev: Accent mark completion, Up: Completion
840 数式記号イメージ補完
841 ====================
843 主に数式モードで使用される、矢印やΣなどの記号を擬似的に表現するキー入力
844 で、LaTeX コマンドを入力できます。これは野鳥自身の「数式モード」でのみ
845 動作します。野鳥はカーソルがTeXの数式環境の中にある時に`;'や、
846 `:'に特殊な機能を持たせます。
848 さて、例えば、←(leftarrow)をASCII文字だけで表現する場合、一般的には
849 「<-」のようにしますが、これを利用して、数式記号イメージ入力モードで
850 `\leftarrow'を入力するには、`;'(セミコロン)を打ってから`<-'と入力します。
851 同様に、長い矢印←-(long-leftarrow) をASCII文字だけで表現する場合「<--」
852 とするので、`\longleftarrow'を入力するためには、`;<--'と入力します。あ
853 るいは無限大記号をASCII文字だけで表現する時は「oo」のようにすることから、
854 `\infty' を入力する時は、`;oo'とキー入力します。
856 これらの操作をまとめると次のようになります。
858 INPUT 入力される LaTeX コマンド
859 ; < - `\leftarrow'
860 ; < - - `\longleftarrow'
861 ; < - - > `\longleftrightarrow'
862 ; o `\circ'
863 ; o o `\infty'
866 いずれの場合も、イメージ入力を行っている途中で望みのものがバッファに
867 表示されたなら、そこでイメージ入力を止めて次の編集動作に移っても構いま
868 せん。
870 数式環境中で`;'自身を入力するには`;;'のようにします。イメージ入力の途
871 中でTABを押すと、それまで入力した文字で始まるもの一覧が表示されます。こ
872 こで目的の LaTeX コマンドまでカーソルを移動し再度TABを押すことでその
873 LaTeX コマンドがバッファに挿入されます。
875 どのキー入力にどの記号が対応しているか全て知りたい時は、`;'を押した直
876 後にTABを押してください。以下の例は、`;<'と押した後にTABを押したもので
877 す。
879 KEY LaTeX sequence sign
880 < \leq ≦
881 << \ll 《
882 <- \leftarrow ←
883 <= \Leftarrow <=
885 左から[入力キー]、[対応する LaTeX コマンド]、[(擬似)記号図示]、という順
886 でメニューが出て来るので、よく使うものを覚えておくと良いでしょう。もの
887 によってはASCII文字で表現することが困難なので、あまり覚えやすいキー並び
888 ではないものがあるでしょうから、そのような場合は \maketitle 型補完で入
889 力するか、以下に述べる対応表の設定を行って単純なキー並びのものを設定す
890 ると良いでしょう。
892 入力キーと LaTeX コマンド、記号の対応表を個人的に設定したい場合は
893 Emacs-Lisp 変数 `YaTeX-math-sign-alist-private' に定義してください。そ
894 の内容とデフォルトのものを合わせたものが対応表として使用されます
895 (privateの方が優先される)。なお、この変数の構造については
896 `yatexmth.el' を参照してください。
899 
900 File: yatexj, Node: Greek letter completion, Prev: Image completion, Up: Completion
902 ギリシャ文字補完
903 ================
905 もう一つ、数式環境中で`:'を押すとギリシャ文字入力モードに入ります。
906 `:'を押した直後に`a'を押すと`\alpha'が、`g' を押すと `\gamma'が、などア
907 ルファベットに対応したギリシャ文字が挿入されます。操作方法は;の数式記号
908 補完とまったく同じです。まずは`:'の直後にTABを押してどのアルファベット
909 にどのギリシャ文字が対応しているか調べてみてください。
911 `;'と`:'を数式環境中で押しているにもかかわらず、イメージ補完が働かな
912 い場合は、`C-u ;'のように universal-argument をつけてキーを押すことによ
913 り、強制的にイメージ補完に入ることができます。また、この時にどのような
914 状態で数式環境内判定に失敗したかをご連絡下さい。
917 
918 File: yatexj, Node: Local dictionary, Next: Commenting out, Prev: Completion, Up: Top
920 ローカル辞書
921 ************
923 補完入力用の候補は三種類の辞書から構成されています。一つは`yatex.el'
924 に組み込まれた「標準辞書」、もう一つはユーザが個人的に常用するコマンド
925 を保存する「ユーザ辞書」、そしてもうひとつはあるディレクトリでのみ有効
926 なコマンドを保存する「ローカル辞書」です。
928 補完入力時に新しい単語を入れた場合に、その単語をどの辞書に入れるか聞
929 いて来ます。
931 `foo' is not in table. Register into: U)serDic L)ocalDic N)one D)iscard
933 というプロンプトに対し、`u'と答えると「ユーザ辞書」を、`l'と答えるとロー
934 カル辞書を更新し、`n'と答えると辞書ファイルは更新せず現在のEmacsセッショ
935 ンのみ有効な単語とし、`d'と答えると新たな単語を学習せずに捨てることにな
936 ります。
938 もし、ローカル辞書の機能はいらず、全てユーザ辞書の更新のみでよいと言
939 う場合には`~/.emacs'などで、
941 (setq YaTeX-nervous nil)
943 として下さい。
946 
947 File: yatexj, Node: Commenting out, Next: Cursor jump, Prev: Local dictionary, Up: Top
949 コメントアウト
950 **************
953 LaTeXの編集には試行錯誤がつきものです。ある部分を一括でコメントアウト
954 したり、コメントを外したりしたいことがあります。
956 `[prefix] >'
957 ... リジョンを % でコメントアウト
958 `[prefix] <'
959 ... リジョンの % のコメントを外す
961 は、あらかじめ設定したリジョンに対しての操作、
963 `[prefix] .'
964 ... 現在のパラグラフをコメントアウト
965 `[prefix] ,'
966 ... 現在のパラグラフのコメントを外す
968 は、カーソルの位置するパラグラフ全体に対しての操作です。なお、ここでい
969 う「パラグラフ」は (`mark-paragraph') 関数によりマークされる範囲を指し
970 ます(標準設定で`ESC h'にバインドされている)。なお、既に`%'でコメントア
971 ウトされているパラグラフに対して繰り返しパラグラフのコメントを使用した
972 場合の動作は保証しませんので御注意ください。
974 さて、文章に対してだけでなく、時には`\begin', `\end' 自体に対
975 してもコメントアウトの操作をしたいときがあります。このようなときは、
976 `\begin{}' あるいは `\end{}' の行にカーソルを合わせ、
978 `[prefix] >'
979 ... `\begin{}'〜`\end{}' 全てコメントアウト
980 `[prefix] <'
981 ... `\begin{}'〜`\end{}' 全てコメントを外す
983 とすることで、`\begin〜\end'で囲まれる環境全てに対してコメント操作し、
985 `[prefix] .'
986 ... `\begin{}' と `\end{}' をコメントアウト
987 `[prefix] ,'
988 ... `\begin{}' と `\end{}' のコメントを外す
990 は、対応する `\begin' と `\end' 2行だけを、コメント操作の対象とします。
991 リジョンをコメントアウトしようとして、マークを設定したのちにカーソルを
992 移動し`[preifx] >' を押してもカーソルが `\begin{}' の上にあると
993 `\begin{}'〜`\end{}'モードでコメント機能が働いてしまうので注意して下さ
994 い。
997 
998 File: yatexj, Node: Cursor jump, Next: Modifying/Deleting, Prev: Commenting out, Up: Top
1000 カーソルジャンプ
1001 ****************
1004 * Menu:
1006 * 対応オブジェクトへのジャンプ::
1007 * お絵描きツール起動::
1008 * メインファイルへのジャンプ::
1009 * 環境を単位としたジャンプ::
1010 * 最後の補完位置へのジャンプ::
1014 File: yatexj, Node: 対応オブジェクトへのジャンプ, Next: お絵描きツール起動, Prev: Cursor jump, Up: Cursor jump
1016 対応オブジェクトへのジャンプ
1017 ============================
1019 文書中のいろいろな場所で
1021 `[prefix] g'
1022 ... 対応するオブジェクトにジャンプ
1024 を押すことにより、カーソル位置のLaTeXコマンドに対応する場所にジャンプし
1025 ます。対応関係が存在すると解釈されるコマンドには以下のものがあります。
1027 * `\begin{}' ←→ `\end{}'
1028 * `%#BEGIN' ←→ `%#END'
1029 * 画像ファイルの取り込みマクロ → 対応するviewer/お絵かきツール起動
1030 * `\label{}' ←→ `\ref{}'
1031 * `\include(\input)' → 対応するファイル
1032 * `\bibitem{}' ←→ `\cite{}'
1034 `\begin{}' か `\end{}' の行で`[prefix] g'を押すことに
1035 より、対応する`end/begin'の行にジャンプします。もちろん対応するものが
1036 ない場合はエラーになります。またこれは、領域固定のための `%#BEGIN' と
1037 `%#END' のペアに対しても同様に動作します。なお、`label/ref'や
1038 `cite/bibitem'対応するものが別ファイルにある時は、ジャンプ先となるファ
1039 イルがオープンされていなければなりません。*Note %#notation::.
1040 メインの .tex ファイルの `\include{chap1}' などにカーソルを合わせ、
1041 `[prefix] g' を押すと、`chap1.tex' にジャンプします。
1043 また、
1045 `[prefix] 4 g'
1046 ... 別ウィンドウで対応オブジェクトにジャンプ
1048 を押すと、対応するオブジェクトへのジャンプを別ウィンドウで行います。た
1049 だし、この機能は `begin/end', `%#BEGIN/%#END' 間のジャンプに対しては(意
1050 味がないと思われるので)機能しないので注意してください。
1054 File: yatexj, Node: お絵描きツール起動, Next: メインファイルへのジャンプ, Prev: 対応オブジェクトへのジャンプ, Up: Cursor jump
1056 お絵描きツール起動
1057 ==================
1059 上記の「画像ファイルの取り込みマクロ」とは、例えば
1060 `\epsfile{file=foo}' のような挿絵取り込みコマンドのことで、この行にカー
1061 ソルを合わせて`[prefix] g'を押すとその画像ファイルの元となったファイル
1062 を対応するお絵描きツールを起動してオープンします。起動するツールの判定
1063 は以下のようになされます。
1065 1. カレント行が変数 `YaTeX-processed-file-regexp-alist' に定義されて
1066 いる正規表現のいずれかとマッチしたら、ファイル名に相当する部分を
1067 (\\)から抜き出して覚えておく(何番目の\\(\\)かは変数の各リストの
1068 cdr 部に入れておく)。マッチしなければ何もしない。
1069 2. 行末に、変数 `YaTeX-file-processor-alist' に登録されているコマンド
1070 が「%コマンド」 のように書いてあれば強制的に「コマンド ファイル
1071 名.拡張子」を起動。
1072 3. なければ、変数 `YaTeX-file-processor-alist' の各リストのcdr部に入っ
1073 ている拡張子を「ファイル名」の後ろに足したファイルが存在するか順次
1074 調べて、存在した場合car部に入っているコマンドを起動する。
1075 4. 以上どれかにマッチしなければあきらめる。
1078 変数 `YaTeX-file-processor-alist' と変数 `YaTeX-file-processor-alist'
1079 の設定方法についてはそれぞれの変数について describe-variable して説明を
1080 読んで下さい。うまく設定すると、画像ファイルにかぎらず、任意の形式のファ
1081 イルを任意のプロセッサで処理するコマンドを簡単に呼び出すことができます。
1085 File: yatexj, Node: メインファイルへのジャンプ, Next: 環境を単位としたジャンプ, Prev: お絵描きツール起動, Up: Cursor jump
1087 メインファイルへのジャンプ
1088 ==========================
1090 `chap1.tex'のようなサブファイルで、
1092 `[prefix] ^'
1093 ... メインファイルにジャンプ
1094 `[prefix] 4 ^'
1095 ... 別ウィンドウでメインファイルにジャンプ
1097 を押すと、メインファイルの編集バッファに切替えます。もし、メインファイ
1098 ルをオープンしていない場合は、カレントディレクトリから探して自動的にオー
1099 プンします。
1103 File: yatexj, Node: 環境を単位としたジャンプ, Next: 最後の補完位置へのジャンプ, Prev: メインファイルへのジャンプ, Up: Cursor jump
1105 環境を単位としたジャンプ
1106 ========================
1108 さらに現在の環境を単位として機能するコマンドに以下のものがあります。
1110 `M-C-a'
1111 ... 環境の先頭(`\begin')へジャンプ
1112 `M-C-e'
1113 ... 環境の末尾(`\end')へジャンプ
1114 `M-C-@'
1115 ... 環境全体をマーク
1117 上記のコマンドは通常の`[prefix]'キーではなく`META'キーをプリフィクスと
1118 して機能するのでご注意下さい。
1122 File: yatexj, Node: 最後の補完位置へのジャンプ, Prev: 環境を単位としたジャンプ, Up: Cursor jump
1124 最後の補完位置へのジャンプ
1125 ==========================
1127 野鳥は補完入力した位置を常にレジスタ `3'に保存しています。入力途中で如
1128 何なるファイルの如何なる位置に行ったとしても、`C-x j
1129 3'(`jump-to-register')を使って直ちに最後の補完入力位置に戻ることができ
1130 ます。
1134 File: yatexj, Node: Modifying/Deleting, Next: Filling, Prev: Cursor jump, Up: Top
1136 変更/削除
1137 *********
1139 既に入力されている LaTeX コマンドの変更/削除のために以下の機能が用意
1140 されています。
1142 `[prefix] c'
1143 ... カーソル位置の LaTeX コマンドの変更
1144 `[prefix] k'
1145 ... カーソル位置の LaTeX コマンドの削除
1147 これらのコマンドは、コマンドを起動する場所によって動作を決定するので注
1148 意して下さい。
1150 * Menu:
1152 * Changing LaTeX command:: LaTeX コマンドの変更
1153 * Killing LaTeX command:: LaTeX コマンドの削除
1157 File: yatexj, Node: Changing LaTeX command, Next: Killing LaTeX command, Prev: Modifying/Deleting, Up: Modifying/Deleting
1159 LaTeX コマンドの変更
1160 ====================
1162 変更したい LaTeX コマンドにカーソルを合わせて `[prefix] c'
1163 を押すとそのコマンドを補完入力などを用いて手軽に変えることができます。
1164 `[prefix] c' で変更できるコマンドには以下のものがあります。
1166 * `begin/end' の環境名
1167 * section型コマンドのコマンド名
1168 * section型コマンドの引数
1169 * section型コマンドのオプションパラメータ([]で囲まれたもの)
1170 * large型コマンド
1171 * (イメージ補完で入力可能な)数式モード専用のmaketitle型コマンド
1173 変えたいsection型コマンドの引数がさらに LaTeX コマンドを含む場合は、
1174 その引数を囲む中括弧の上で `[prefix] c' を押すことで中のコマンドを変更
1175 対象判定から除外することができます。
1180 File: yatexj, Node: Killing LaTeX command, Prev: Changing LaTeX command, Up: Modifying/Deleting
1182 LaTeX コマンドの削除
1183 ====================
1185 `[prefix] k' は起動する位置により次のような動作を行います。
1188 起動位置 動作
1189 \begin, \endの行 `\begin\end'ペアの削除
1190 %#BEGIN, %#END の行 %#BEGIN,%#ENDペアの削除
1191 section型コマンドの上(中) section型コマンドの削除
1192 フォント指定括弧の上 フォント指定の削除
1193 括弧の上 対をなす括弧の削除
1195 `\begin, \end' および `%#BEGIN, %#END' を削除する場合、`\begin, \end'
1196 や `%#BEGIN, %#END' の存在する行はまるごと削除されるので、それらの一行
1197 に `\begin' などを二つ以上連ねて書かないように注意してください。上記の
1198 ものはすべて本文を囲う「容器」を削除するように働きますが、
1199 universal-argument (`C-u') を打った後で`[prefix] k'をタイプすると、それ
1200 ぞれの「容器」に含まれる「中身」も一気に削除します。以下の例を参考にし
1201 て下さい。
1203 元のテキスト: [prefix] k C-u [prefix] k
1204 本文\footnote{脚注}です。 本文脚注です。 本文です。
1205 ↑(カーソル位置)
1209 File: yatexj, Node: Filling, Next: Includeonly, Prev: Modifying/Deleting, Up: Top
1211 桁揃え
1212 ******
1215 itemの桁揃え
1216 ============
1218 itemize 環境中にある`\item'の項目(文章)が複数行に渡る場合に、項目の先
1219 頭を桁揃えしたい場合には、
1222 `M-q'
1223 ... 桁揃え
1225 によって、その item のインデントの深さに応じて fill されます。なお、古
1226 いNTT jTeX を使用している場合には、Lisp 変数`NTT-jTeX'を`t'にセットして
1227 下さい。
1229 このとき、変数`YaTeX-item-regexp'の値(標準では `"\\\\item"')を
1230 項目指定コマンドの正規表現として検索に使用します。itemize 環境で、独自のコ
1231 マンドを定義して項目を列挙している場合(例えば`\underlineitem')は、
1232 `~/.emacs' で次のように指定して下さい。
1234 (setq YaTeX-item-regexp
1235 "\\(\\\\\\(sub\\)*item\\)\\|\\(\\\\underlineitem\\)")
1237 この変数の指定の仕方がよく分からない場合は、独自の項目列挙コマンドの名前を
1238 ``"\item"'で始まるものにして下さい(例えば"\itembf"')。
1240 野鳥の `M-q' では `\item' を環境に応じて以下のように「ハングインデント」
1241 します。
1243 itemize, enumerate環境:
1244 >\item[ほげほげ] 英語では、特に意味のない単語を `foo' であらわしま
1245 > すが、これの日本語版ともいえる単語が「ほげほげ」
1246 > です。
1247 description環境:
1248 > \item[へろへろ] 「ほげほげ」をでたらめが単語として使った時に、第
1249 > 2のでたらめな単語として「へろへろ」が使われることが多
1250 > いようです。
1253 パラグラフの桁揃え
1254 ==================
1256 itemize環境以外でのパラグラフの桁揃え(fill)は、基本的に他のモードと同
1257 じように機能しますが、verbatim環境や、tabular環境など桁揃えをすると悲惨
1258 な状況になるような環境中では機能しません。また、\verb で括ってあるもの
1259 は決して行分割されません(変数 `YaTeX-verb-regexp' で制御) )。さらに、一
1260 時的にインデントの深さを変えてある箇所では、そのインデントの先頭で
1261 `M-q'を押すことにより fill-prefix をいちいち変更しなくて桁揃えができま
1262 す。
1267 File: yatexj, Node: Includeonly, Next: What column, Prev: Filling, Up: Top
1269 勝手にincludeonly
1270 *****************
1272 ファイルを分割して文章を入力している時には、メインファイル中に
1274 \includeonly{現在編集中のファイル名}
1276 のように書いておくことで、タイプセットの時間を節約できますが、ちょっと
1277 他のファイルを手直ししたい時には
1279 \includeonly{ちょっと手直ししたいファイル名}
1281 と書き直さなければならず手間がかかります。野鳥では現在編集しているファ
1282 イル名がメインファイルの`\includeonly'にない場合には自動的にこれを検出
1283 し、次の指示を仰ぎます。
1285 A)dd R)eplace %)comment?
1287 現在編集中のファイルを `\includeonly' のリストに加えたい時には`a'を、現
1288 在編集中のファイルだけを `\includeonly' にしたい時は`r'を、
1289 `\includeonly' の行をコメントアウトして無効化したい時には、`%'をそれぞ
1290 れ押して下さい。
1294 File: yatexj, Node: What column, Next: Intelligent newline, Prev: Includeonly, Up: Top
1296 ここはどこ?
1297 ***********
1299 項目数の多い tabular などをたくさん書いていると下の方の行で、いま書い
1300 ている桁がどこに対応するのかわからなくなってしまうことがあります。例え
1301 ば、以下のような tabular において、
1303 \begin{tabular}{|c|c|c|c|c|c|c|c|}\hline
1304 氏名&所属&〒&住所&電話&FAX&帰省先&帰省先電話\\ \hline
1305 矢上二郎 & 6 & 223 & 横浜市港北区日吉 & xxx-yyy &
1306 zzz-www & トンガ & 9876-54321 \\
1307 日吉小僧 & 2 & \multicolumn{2}{c|}{教えない}
1308 &&&(???)
1309 \\ \hline
1310 \end{tabular}
1312 (???)の部分がどの項目なのかすぐに判断するのは難しいでしょう。こんな時は、
1314 `[prefix] &'
1315 ... 現在のカラム表示
1317 を押すとカーソル位置のカラムがどの項目に該当するかをミニバッファに表示
1318 します。tabular/array環境の第1行目を項目名の並びとみなして対応するもの
1319 を探します。もし項目名として別のものを表示して欲しい場合は、行頭を`%'に
1320 してダミーの項目並びを作っておくと良いでしょう。
1324 File: yatexj, Node: Intelligent newline, Next: Usepackage cheker, Prev: What column, Up: Top
1326 おまかせ改行
1327 ************
1329 tabular[*], array, itemize, enumerate, tabbing 環境をbegin型補完で入
1330 力した時、または各環境内で
1332 `ESC RET'
1333 ... おまかせ改行
1335 を押すと、その環境に応じた行エントリを次の行に挿入します(begin型補完時
1336 に自動挿入されたエントリが不要な場合は undo によって消去できます)。例え
1337 ば、tabular環境では、その環境のカラム数に対応した個数の `&' に加え、行
1338 末の `\\' を入れます。この時それ以前に `\hline' があればそれも付け加え
1339 ます。環境とそれに応じて自動入力するものの対応は以下のようになります。
1341 * `tabular', `tabular*', `array'
1343 カラム数-1 だけの `&' と `\\'。必要に応じて `\hline'
1345 * `tabbing'
1347 一行目で定義している `\=' と同じ個数の `\>'。
1349 * `itemize', `enumerate', `description', `list'
1351 `\item' または `item[]'
1353 tabular 環境の例のように、本機能は各環境の一行目の内容を参考にして動
1354 作するので、なるべく二行目以降で呼び出すようにしてください。
1356 もし、その他の環境、例えば `foo'、に対して`おまかせ改行'を動作
1357 させたい時は、`YaTeX-intelligent-newline-foo' という名前の関数を定義
1358 します。定義した関数は、現在の行に改行を挿入した直後の行頭の位置で呼ばれま
1359 す。関数 `YaTeX-indent-line' を呼ぶと現在の環境のネストに応じた深さに
1360 インデントされるので、これを呼んでから何かを挿入するようなコードを書くとよ
1361 いでしょう。`yatexenv.el'内の関数
1362 `YaTeX-intelligent-newline-itemize' の定義などを参考にしてください。
1367 File: yatexj, Node: Usepackage cheker, Next: Changing mode of YaTeX, Prev: Intelligent newline, Up: Top
1369 先回りusepackage
1370 ****************
1372 begin型、section型、maketitle型、いずれかのLaTeX2eマクロを補完入力す
1373 ると、そのマクロの利用に外部パッケージを必要とする場合、そのパッケージ
1374 を本文中で `\usepackage{}' しているかどうかを調査し、もししていなければ
1375 プリアンブルに対応するパッケージを引数にした `\usepackage' 文を(確認後
1376 に)挿入します。
1378 ただしこの機能が働くためには、パッケージ名とその中で定義されているマ
1379 クロ群をalistの形式で変数 `YaTeX-package-alist-private' に設定しておく
1380 必要があります。
1384 File: yatexj, Node: Changing mode of YaTeX, Next: Online help, Prev: Usepackage cheker, Up: Top
1386 野鳥の動作モード切り替え
1387 ************************
1389 `[prefix] w'
1390 ... 野鳥動作モード切り替えメニュー
1392 で野鳥自身の動作を決定する以下のモードを切り替えます。
1394 * 修正モード
1395 * 野鳥数式モード
1397 修正モードは、開き括弧入力時の処理をコントロールし、修正モードONの時は
1398 開き括弧の入力は開き括弧のみの入力になり、修正モードOFFの時は開き括弧の
1399 入力だけで閉じ括弧まで入力します。デフォルト(起動時)の設定は*OFF*です。
1401 野鳥数式モードは、変数 `YaTeX-auto-math-mode' が `nil' の時の
1402 み有効で、このとき`;'や`:'を押した時(*Note Image completion::参照)に、
1403 どのようなイメージ補完を機能させるか、通常のキーとして機能させるかを手動で
1404 切り替えます。自動判定が遅いマシンでは`YaTeX-auto-math-mode'
1405 `nil'にセットし、野鳥数式モードを手動で切り替えると良いでしょう。
1410 File: yatexj, Node: Online help, Next: Inclusion hierarchy browser, Prev: Changing mode of YaTeX, Up: Top
1412 オンラインヘルプ
1413 ****************
1415 使おうとする LaTeX コマンドの用法がよく分からない時は、オンラインヘル
1416 プをひきましょう。ヘルプに関するキーには以下のものがあります。
1418 `[prefix] ?'
1419 ... オンラインヘルプ
1420 `[prefix] /'
1421 ... オンラインapropos
1424 オンラインヘルプ
1425 ================
1427 「オンラインヘルプ」は、一般的な LaTeX コマンド(デフォルトでカーソル
1428 位置のコマンド)に対する説明を隣のバッファに表示します。この時参照される
1429 ヘルプ用ファイルには「グローバルヘルプ」と「プライベートヘルプ」の二種
1430 類があり、前者は LaTeX の標準コマンドの主なものの説明を含むファイルで、
1431 変数`YaTeX-help-file'の値で指定されます。このファイルは通常公共の場所
1432 (デフォルトで`$EMACSEXECPATH')に置かれ、誰もがその内容を更新できるよう
1433 に全員に書き込み権が与えられるべきものです。後者は、非標準もしくは個人
1434 的なマクロ定義に関する説明が書かれているファイルで、変数
1435 `YaTeX-help-file-private'の値で指定されます。こちらはユーザのホームディ
1436 レクトリの下などに置かれます。
1439 オンラインapropos
1440 =================
1442 「オンラインapropos」は GNU Emacs の apropos と同様、ユーザが指定した
1443 キーワードを説明文に含む項目すべてを隣のバッファに表示します。
1445 もし、調べようとしたLaTeXコマンドに対する説明がヘルプファイル中に見つ
1446 からなかった場合は、説明文の入力を求めてくるので、可能であれば参考書な
1447 どを調べてそのコマンドの説明を入力してください。もし、なにか標準的なコ
1448 マンドに対する説明を書いたならばぜひ私までその説明をお送り下さい。次回
1449 の配布に含めたいと思います。
1453 File: yatexj, Node: Inclusion hierarchy browser, Next: Cooperation with other packages, Prev: Online help, Up: Top
1455 インクルード構造ブラウザ
1456 ************************
1458 複数のファイルに分割しているドキュメントを書いている場合、
1460 `[prefix] d'
1461 ... インクルード構造ブラウズ
1463 を押すと、そのドキュメントの親ファイルを聞いて来ます。ここで全てのファ
1464 イルの親となるファイル(デフォルトが示されているので大抵はRETのみ)を入力
1465 するとインクルードしている全てのファイルを解析し、インクルード状況を視
1466 覚的に表示します。このバッファでは以下のキー操作が有効です。
1468 `n'
1469 ... 次の行に移動し対応するファイルを隣のバッファに表示
1470 `p'
1471 ... 上の行に移動し対応するファイルを隣のバッファに表示
1472 `N'
1473 ... 同じインクルードレベルの次のファイルに移動
1474 `P'
1475 ... 同じインクルードレベルの前のファイルに移動
1476 `j'
1477 ... 次の行に移動
1478 `k'
1479 ... 上の行に移動
1480 `u'
1481 ... 一代親にあたるファイルに移動
1482 `.'
1483 ... カーソル位置のファイルを隣のバッファに表示
1484 `SPC'
1485 ... 隣のバッファの対応ファイルをスクロールアップ
1486 `DEL, b'
1487 ... 隣のバッファの対応ファイルをスクロールダウン
1488 `<'
1489 ... 隣のバッファの対応ファイルの先頭を表示
1490 `>'
1491 ... 隣のバッファの対応ファイルの末尾を表示
1492 `''
1493 ... (`<'や`>'の後で)元の表示位置に戻る
1494 `RET, g'
1495 ... カーソル位置のファイルを隣のバッファでオープン
1496 `mouse-2'
1497 ... RETと同じ(ウィンドウ使用時のみ)
1498 `o'
1499 ... 隣のウィンドウに移動
1500 `1'
1501 ... 他のウィンドウを消す
1502 `-'
1503 ... ブラウズウィンドウを小さくする
1504 `+'
1505 ... ブラウズウィンドウを大きくする
1506 `?'
1507 ... ヘルプ表示
1508 `q'
1509 ... 表示前の状態に戻る
1511 ただし、隣のウィンドウのファイルの内容を表示する機能に関しては、対応
1512 するファイルをクローズしてしまうとうまく働きませんのでご注意ください。
1516 File: yatexj, Node: Cooperation with other packages, Next: Customizations, Prev: Inclusion hierarchy browser, Up: Top
1518 他パッケージとの連携
1519 ********************
1522 gmhist
1523 ======
1525 `gmhist.el'と`gmhist-mh.el' をロードしている場合、プレヴューコマンド
1526 の入力(`[prefix] tp]')、印刷コマンドの入力(`[prefix] tl')の時に独立した
1527 ヒストリを利用できます。それぞれのプロンプトで、`M-p' を押すと直前に利
1528 用したコマンド文字列をくり返し呼び出すことができます。
1531 min-out
1532 =======
1534 `min-out.el' (`outline-minor-mode') と野鳥を組み合わせて使うこともも
1535 ちろん可能です。設定の方法に関しては`yatexm-o.el'をご覧ください。
1539 File: yatexj, Node: Customizations, Next: Etc, Prev: Cooperation with other packages, Up: Top
1541 カスタマイズ
1542 ************
1544 野鳥の動作を制御する種々の変数を独自に設定することにより、補完入力を
1545 起動するキーアサインを変えたり、環境名の補完候補をさらに充実させること
1546 などができます。
1548 * Menu:
1550 * Lisp variables:: lisp 変数
1551 * Add-in functions:: 付加関数(アドイン関数)
1555 File: yatexj, Node: Lisp variables, Next: Add-in functions, Prev: Customizations, Up: Customizations
1557 lisp 変数
1558 =========
1560 例えば prefix キーを `C-c' 以外のキーにしたい場合は、`YaTeX-prefix'に
1561 prefix キーにしたいシンボルを定義してください。さらに、「`C-c 英字'」と
1562 いうキーバインドは独自の関数が割り当ててあるので使いたくない。このよう
1563 な時は、`YaTeX-inhibit-prefix-letter' を `t' に設定することにより、
1564 `C-c 英字…'のバインドが全て、対応する`C-c C-英字…'に変わります(ただし、
1565 begin型 large型補完の大文字起動によるリジョン指定は可能なままです。これ
1566 も無効にしたい場合は`t'ではなく 1 にセットして下さい。)。
1568 * Menu:
1570 * All customizable variables:: カスタマイズ変数一覧
1571 * Sample definitions:: カスタマイズ変数設定例
1572 * Hook variables:: hook変数
1573 * Hook file:: hook用ファイル
1577 File: yatexj, Node: All customizable variables, Next: Sample definitions, Prev: Lisp variables, Up: Lisp variables
1579 カスタマイズ変数一覧
1580 --------------------
1582 yatex-mode における次の変数がカスタマイズ可能です。`~/.emacs' で
1583 `setq' しておけば、そちらの定義が優先されます。括弧の中はデフォルト値で
1584 す。実際に変数の値を変更する場合は `M-x describe-variable' で変数の詳細
1585 な説明を参照してください。
1587 -- Variable: YaTeX-prefix
1588 yatex-mode 中のプリフィクスキー (`\C-c')
1590 -- Variable: YaTeX-inhibit-prefix-letter
1591 prefix キーの直後のキーバインドで `英字' のものを `C-英字' に変更
1592 (`nil')
1594 -- Variable: YaTeX-fill-prefix
1595 本文を書く時の行頭に挿入する接頭辞すなわち fill-prefix
1596 (`""(nil)')
1598 -- Variable: YaTeX-user-completion-table
1599 学習したLaTeXコマンド保存ファイル名 (`"~/.yatexrc"')
1601 -- Variable: YaTeX-kanji-code
1602 文書を作成する時の漢字コードnil=既存のコードのまま
1603 0=no-conversion 1=Shift JIS, 2=JIS, 3=EUC, 4=UTF-8 (2 (MS-DOSでは
1604 1))
1606 -- Variable: tex-command
1607 LaTeXタイプセッタコマンド名 (`"platex"')
1609 -- Variable: dvi2-command
1610 プレヴューアコマンド名 (`"xdvi -geo +0+0 -s 4"')
1612 -- Variable: dviprint-command-format
1613 dviファイルの印刷に使われるコマンド式 (`"dvi2ps %f %t %s | lpr"')
1615 -- Variable: dviprint-from-format
1616 上の`%f'に相当する開始ページ指定書式、`%b' が開始ページ番号に変わ
1617 る (`"-f %b"')
1619 -- Variable: dviprint-to-format
1620 `%t' に相当する終了ページ指定書式、`%e'が終了ページ番号に変わる
1621 (`"-t %e"')
1623 -- Variable: makeindex-command
1624 makeindexコマンド (`"makeindex"' (MS-DOSでは`"makeind"'))
1626 -- Variable: YaTeX-need-nonstop
1627 `\nonstopmode{}'を自動的に付加するか (`nil')
1629 -- Variable: latex-warning-regexp
1630 latexコマンドの出力するウォーニング行の正規表現 (`"line.*
1631 [0-9]*"')
1633 -- Variable: latex-error-regexp
1634 同じくエラー行の正規表現 (`"l\\.[1-9][0-9]*"')
1636 -- Variable: latex-dos-emergency-message
1637 MS-DOS上で動作する latex コマンドが、エラーにより停止するとき出力
1638 するメッセージ (`"Emergency stop"')
1640 -- Variable: latex-message-kanji-code
1641 タイプセッタの出力するメッセージの漢字コード.タイプセットバッファ
1642 の出力が化ける時は、これを設定する (2, Nemacsでのみ有効)
1644 -- Variable: NTT-jTeX
1645 古いNTT-jTeX使用時のようにインデントした行の先頭と前の行の(タイプ
1646 セット後の)字間が空いてしまうのを嫌う場合は`t'にする(`nil')
1648 -- Variable: YaTeX-item-regexp
1649 itemの桁揃えの時に用いる、itemの正規表現 (`"\\\\(sub\\)*item"')
1651 -- Variable: YaTeX-verb-regexp
1652 verbコマンドの正規表現。先頭の\\\\はつけない
1653 (`"verb\\*?\\|path"')
1655 -- Variable: YaTeX-nervous
1656 ローカル辞書を用いる時 `t' (`t')
1658 -- Variable: YaTeX-sectioning-regexp
1659 セクション区切り設定コマンドの正規表現
1660 (`"\\(part\\|chapter\\*?\\|\\(sub\\)*\\(section\\|paragraph\\)\\*?\\)\\b"')
1662 -- Variable: YaTeX-fill-inhibit-environments
1663 fill を抑止する環境名のリスト (`'("tabular" "tabular*" "array"
1664 picture" "eqnarray" "eqnarray*" "equation" "math" "displaymath"
1665 verbatim" "verbatim*")')
1667 -- Variable: YaTeX-uncomment-once
1668 領域uncommentで行頭の複数の`%'を全て削除するか (`nil')
1670 -- Variable: YaTeX-close-paren-always
1671 開き括弧の入力で常に閉じ括弧を入力する (`t')
1673 -- Variable: YaTeX-auto-math-mode
1674 数式モードの切り替えを自動的に行う (`t')
1676 -- Variable: YaTeX-math-key-list-private
1677 数式イメージ補完で用いる (プリフィクスキー . 対応補完テーブル) の
1678 alist (`nil')。補完テーブルの書き方については`yatexmth.el'を参照。
1680 -- Variable: YaTeX-default-pop-window-height
1681 1画面の時にタイプセットバッファを初めて作成する時の高さ。数値で行
1682 数、数字文字列でEmacsウィンドウに対する百分率 (10)
1684 -- Variable: YaTeX-help-file
1685 共用ヘルプファイル (`$doc-directory/../../site-lisp/YATEXHLP.jp')
1687 -- Variable: YaTeX-help-file-private
1688 個人用ヘルプファイル (`"~/YATEXHLP.jp"')
1690 -- Variable: YaTeX-no-begend-shortcut
1691 `[prefix] b ??' のショートカットを使わず、`[prefix] b' だけで補完
1692 入力に入る (`nil')
1694 -- Variable: YaTeX-hilit-pattern-adjustment-private
1695 正規表現とそれにマッチするものの論理的意味をシンボルであらわしたも
1696 ののリスト…のリスト。hilit19 を組み込んでいる時のみ有効。詳しくは
1697 `(assq 'yatex-mode hilit-patterns-alist)' した結果と、変数
1698 `YaTeX-hilit-pattern-adjustment-default' の値(と場合によっては
1699 hilit19 のドキュメント)を参照せよ。
1701 -- Variable: YaTeX-sectioning-level
1702 LaTeXのセクション単位宣言コマンドとその論理的高さのalist。
1704 -- Variable: YaTeX-hierarchy-ignore-heading-regexp
1705 Hierarchy バッファは通常ファイルヘッダとして、LaTeXのセクション宣
1706 言コマンドの引数を検索し、それがなければコメント行を探すが、その際
1707 にヘッダとしては意味を持たないパターンをこの変数に設定する。デフォ
1708 ルトでは RCS ヘッダとモード指定行(-*- xxx -*-)が設定されている。
1710 -- Variable: YaTeX-skip-default-reader
1711 Non-nil に設定するとsection型コマンドの引数入力時、アドイン関数が
1712 なければミニバッファでの読み込みをせずに入力を完了させる (`nil')
1714 -- Variable: YaTeX-create-file-prefix-g
1715 `\include'などで `prefix g'した時に、ジャンプ先が存在しないファイ
1716 ルであってもオープンする (`nil')
1718 -- Variable: YaTeX-simple-messages
1719 各種補完時のメッセージ出力を簡素化する (`nil')
1721 -- Variable: YaTeX-hilit-sectioning-face
1722 色付けが有効な時の `\part' の色 (`'(yellow/dodgerblue
1723 yellow/slateblue)')。リストの第一要素は `hilit-background-mode' が
1724 `'light' の時の、第二要素は `'dark' の時の `\chapter' の色で、文字
1725 色/背景色 のように指定する。
1727 -- Variable: YaTeX-hilit-sectioning-attenuation-rate
1728 色付けが有効な時の、`\subparagraph' の色を `\chapter' の濃度の何%
1729 薄くしたものにするか (`'(15 40)') `YaTeX-hilit-sectioning-face'の
1730 項参照。
1732 -- Variable: YaTeX-use-AMS-LaTeX
1733 AMS-LaTeX を使用する場合は `t' に設定する (`nil')
1735 -- Variable: YaTeX-use-LaTeX2e
1736 LaTeX2e を使用する場合は `t' に設定する (`t')
1738 -- Variable: YaTeX-template-file
1739 新規ファイル作成時に自動挿入するファイル名
1740 (`~/work/template.tex')
1742 -- Variable: YaTeX-search-file-from-top-directory
1743 inputするファイルを探すときの基準ディレクトリをmainファイルのある
1744 ディレクトリにするか (`t')
1745 -- Variable: YaTeX-use-font-lock
1746 ソースの色づけパッケージとして font-lock を利用するかどうか
1747 (`(featurep 'font-lock)')
1749 -- Variable: YaTeX-use-hilit19
1750 ソースの色づけパッケージとして hilit19 を利用するかどうか
1751 (`(featurep 'hilit19)')
1753 -- Variable: YaTeX-use-italic-bold
1754 italic, boldフォントを野鳥が探すかどうか (Emacs20以降なら`t')
1755 font-lock利用時のみ有効。(`(featurep 'hilit19)'
1757 -- Variable: YaTeX-singlecmd-suffix
1758 全てのmaketitle型コマンドの補完入力直後に挿入する文字列。
1759 `"{}"' などがお勧め。
1761 -- Variable: YaTeX-package-alist-private
1762 LaTeX2eのパッケージ名とその中に含まれるマクロのリスト。適切に設定
1763 しておくと本文入力時にマクロを補完入力するとそのマクロに必要なパッ
1764 ケージを usepackage するか自動的に検査してくれる。していなければ
1765 usepackage を自動追加することもできる。リストは'((パッケージ名1
1766 (補完タイプ マクロのリスト……) (補完タイプ マクロのリスト……))
1767 (パッケージ名2 (補完タイプ マクロのリスト……) (補完タイプ マクロ
1768 のリスト……))………)という形式にする。補完タイプは `env,
1769 section, maketitle' のどれか。具体例は変数
1770 `YaTeX-package-alist-default'の値参照。
1772 -- Variable: YaTeX-tabular-indentation
1773 tabular/array 環境で現在行の先頭位置が表の第Nカラムのときは標準イ
1774 ンデント位置から N*YaTeX-tabular-indentation 桁下げたインデントに
1775 する。
1777 -- Variable: YaTeX-noindent-env-regexp
1778 別の環境内にあっても \begin{} が行頭から始まるべき環境名の正規表現。
1779 verbatim環境などを指定する。
1781 -- Variable: YaTeX-ref-default-label-string
1782 \ref{} のラベル補完でラベル未設定のものに自動的に生成するラベル名
1783 の書式。strftime(3)関数に似た日付ベースで指定する。利用できる書式
1784 は以下のとおり。%y -> 西暦下二桁, %b -> 月の英名, %m -> 月(1〜12)
1785 %d -> 日, %H -> 時, %M -> 分, %S -> 秒, %qx -> アルファベットで26
1786 進数化した yymmdd. %qX -> アルファベットで26進数化した HHMMSS. デ
1787 フォルトは "%H%M%S_%d%b%y"
1789 -- Variable: YaTeX-ref-generate-label-function
1790 \ref{}のラベル名自動生成のときに使う関数のシンボル。デフォルトは標
1791 準の YaTeX::ref-generate-label 関数が割り当ててある。引数を2つ取る
1792 関数を定義して、この変数にセットするとその関数を呼んだ結果をデフォ
1793 ルトのラベル名候補とする。設定例:
1794 (setq YaTeX-ref-generate-label-function 'my-yatex-generate-label)
1795 (defun my-yatex-generate-label (command value)
1796 (and (string= command "caption")
1797 (re-search-backward "\\\\begin{\\(figure\\|table\\)}" nil t)
1798 (setq command (match-string 1)))
1799 (let ((alist '(("chapter" . "chap")
1800 ("section" . "sec")
1801 ("subsection" . "subsec")
1802 ("figure" . "fig")
1803 ("table" . "tbl"))))
1804 (if (setq command (cdr (assoc command alist)))
1805 (concat command ":" value)
1806 (YaTeX::ref-generate-label nil nil))))
1810 File: yatexj, Node: Sample definitions, Next: Hook variables, Prev: All customizable variables, Up: Lisp variables
1812 カスタマイズ変数設定例
1813 ----------------------
1815 たとえば、prefix キーとして`ESC'を使用し、新たな補完候補を格納するファ
1816 イルを、`~/src/emacs/yatexrc' にし、行頭の prefix をタブ文字一つに変え
1817 たいときは、
1819 (setq YaTeX-prefix "\e"
1820 YaTeX-user-completion-table "~/src/emacs/yatexrc"
1821 YaTeX-fill-prefix " ")
1823 を `~/.emacs' に加えます。
1827 File: yatexj, Node: Hook variables, Next: Hook file, Prev: Sample definitions, Up: Lisp variables
1829 hook変数
1830 --------
1832 また、hook 変数 `yatex-mode-hook', `yatex-mode-load-hook' を用意して
1833 います。すべての yatex-mode のバッファで作用させたいものは、
1834 `yatex-mode-hook' に記述し、`yatex.el' をロードする時だけ作用させたいも
1835 のは`yatex-mode-load-hook' に記述します。例えば、`outline-minor-mode'
1836 を利用する場合、それぞれのバッファで `outline-minor-mode' を有効にした
1837 いので、`yatex-mode-hook' を次のように設定します。
1839 (setq yatex-mode-hook
1840 '(lambda () (outline-minor-mode t)))
1842 逆に、独自のキー定義を行いたい時などは、`yatex-mode-load-hook' を利用し
1843 ます。例えば、begin 型補完において、 document や、enumerate 以外の環境
1844 名もショートカットキーで入れたいなどという時は、次のようにします。以下
1845 の例は、`[prefix] ba' で `\begin{abstract}', `\end{abstract}' を挿入し
1846 ます。
1848 (setq yatex-mode-load-hook
1849 '(lambda() (YaTeX-define-begend-key "ba" "abstract")))
1851 なお、新たなキーの定義には、関数 `YaTeX-define-key'
1852 `YaTeX-define-begend-key'を利用するようにしてください。
1856 File: yatexj, Node: Hook file, Prev: Hook variables, Up: Lisp variables
1858 hook用ファイル
1859 --------------
1861 変数 `yatex-mode-load-hook' で定義する内容が多い時は、`yatexhks.el'と
1862 いうファイルを作り、その中に野鳥関連の設定を書く事で、初期化の時に自動
1863 的にロードします。
1868 File: yatexj, Node: Add-in functions, Prev: Lisp variables, Up: Customizations
1870 付加関数(アドイン関数)
1871 ======================
1873 各種補完時に、環境名やコマンド名に応じたきめ細やかな補完入力機能を実
1874 現するための関数を作成することができます。この関数の作成方法や、組み込
1875 み方法に関しては、`yatexadd.doc' をご覧ください。
1879 File: yatexj, Node: Etc, Next: Copying, Prev: Customizations, Up: Top
1881 その他
1882 ******
1884 野鳥の標準の LaTeX コマンドの辞書には、作者が頻繁に使うものしか登録さ
1885 れていません。これは、補完候補に使いそうもないコマンドが存在して、補完
1886 したいコマンドを出すまでのストローク数を増やしてしまう事を防止するため
1887 です。標準辞書にないコマンドも、できるだけ補完入力方式を利用し、ユーザ
1888 辞書を充実させることで、あなたの LaTeX スタイルにあった野鳥へと育ってい
1889 くことでしょう。
1893 File: yatexj, Node: Copying, Next: Concept Index, Prev: Etc, Up: Top
1895 取り扱い
1896 ********
1898 本プログラムはフリーソフトウェアです。本プログラムを使用して生じたい
1899 かなる結果に対しても作者は責任を負わないこととします。転載等に関しては
1900 制限いたしません。常識的に扱ってください。また、本プログラムに含まれる
1901 コードを利用すること、改造することも自由に行なって構いませんが、流用す
1902 ることにより契約締結の必要が生じる場合、私はいかなる契約も締結しません。
1903 具体的にはGPLへのサインはしませんので、GNUに寄贈するものを作っている場
1904 合私の作品から取り込んだコードを流用すると苦労するかもしれません。いか
1905 なるコード流用も拒否しませんが契約締結は辞退します。
1907 苦情、希望、バグ報告、感想等は歓迎いたします。連絡は yuuji@yatex.org
1908 まで(2004年1月現在)。継続的に使用してくださる方はメイリングリスト「fj野
1909 鳥の会」に是非加入してください。加入方法については本パッケージの
1910 `docs/qanda'ファイルの「その他」の章を御覧ください。
1912 仕様は、予告なく確実に(気分次第で)変更されます:-p。
1914 広瀬雄二
1918 File: yatexj, Node: Concept Index, Prev: Copying, Up: Top
1920 索引
1921 ****
1923 * Menu:
1925 * :: Greek letter completion. (line 5)
1926 * ;: Image completion. (line 5)
1927 * []: Image completion. (line 5)
1928 * []: Enclose section-type command. (line 5)
1929 * []: large^. (line 22)
1930 * []: 2 section^R}h. (line 5)
1931 * []: Accent mark completion. (line 5)
1932 * []: Image completion. (line 5)
1933 * []: Image completion. (line 5)
1934 * []: Filling. (line 5)
1935 * []: Intro. (line 5)
1936 * &[&]: Intelligent newline. (line 5)
1937 * []: Sample definitions. (line 5)
1938 * []: Arbitrary completion. (line 5)
1939 * []: begin^. (line 82)
1940 * ?[?]: What column. (line 5)
1941 * []: 2 section^R}h. (line 26)
1942 * []: begin^. (line 5)
1943 * []: Killing LaTeX command. (line 7)
1944 * []: PWv. (line 8)
1945 * []: PWv. (line 8)
1946 * A[]: Recursive completion. (line 5)
1947 * AEgC[]: view-sectioning. (line 5)
1948 * ANZgL[]: Accent mark completion. (line 5)
1949 * apropos: Online help. (line 5)
1950 * autoload: Installation. (line 5)
1951 * auto-mode-alist: Installation. (line 5)
1952 * %#BEGIN: Fix region for typesetting. (line 5)
1953 * begin^[begin]: begin^. (line 5)
1954 * C-c: Invocation. (line 5)
1955 * CN[h\[]: Inclusion hierarchy browser. (line 5)
1956 * ^CvZb^[]: Invocation. (line 5)
1957 * ^CvZb^g[]: Changing typesetter. (line 13)
1958 * ^CvZbg[]: Fix region for typesetting. (line 5)
1959 * ^CvZbgG[[]: Calling typesetter. (line 5)
1960 * ^CvZb^N[]: Calling typesetter. (line 5)
1961 * C[W[]: Image completion. (line 5)
1962 * CXg[[]: Installation. (line 5)
1963 * Demacs: Intro. (line 5)
1964 * .emacs: Installation. (line 5)
1965 * %#END: Fix region for typesetting. (line 5)
1966 * end[end]: end. (line 5)
1967 * ;ゥg[;]: Image completion. (line 33)
1968 * G[C[]: Calling typesetter. (line 5)
1969 * G`c[N[]: G`c[N. (line 5)
1970 * ghostview: Splitting input files. (line 17)
1971 * gmhist: Cooperation with other packages. (line 9)
1972 * ヌtabular[tabular]: What column. (line 5)
1973 * ョ[h[]: Image completion. (line 5)
1974 * [h[]: Changing mode of YaTeX. (line 5)
1975 * hook[hook]: Hook variables. (line 5)
1976 * ICwv[]: Online help. (line 5)
1977 * includeonly: Includeonly. (line 5)
1978 * includeonly[includeonly]: Includeonly. (line 5)
1979 * Install: Installation. (line 5)
1980 * item[item]: Filling. (line 9)
1981 * [Jォ[]: Local dictionary. (line 5)
1982 * J\ヲ[]: What column. (line 23)
1983 * jlatex: Invocation. (line 5)
1984 * J[\Wv[]: Cursor jump. (line 5)
1985 * JX^}CY[]: Customizations. (line 5)
1986 * JX^}CY[]: All customizable variables. (line 5)
1987 * K[]: Fix region for typesetting. (line 27)
1988 * _Kw[]: view-sectioning. (line 44)
1989 * large^[large]: large^. (line 5)
1990 * L[ATC[]: Customizations. (line 5)
1991 * LaTeX: Intro. (line 5)
1992 * ョLC[W[]: Image completion. (line 5)
1993 * leftarrow: Image completion. (line 5)
1994 * L[[h[]: Online help. (line 5)
1995 * lpr format: lpr format. (line 5)
1996 * lpr[[lpr]: lpr format. (line 5)
1997 * lprtH[}bg[lpr]: lpr format. (line 5)
1998 * lprtH[}bgX[lpr]: Editing %# notation. (line 20)
1999 * %#L@ゥ苽%#]: Editing %# notation. (line 5)
2000 * maketitle^[maketitle]: maketitle^. (line 5)
2001 * M-C-@: PWv. (line 8)
2002 * M-C-a: PWv. (line 8)
2003 * M-C-e: PWv. (line 8)
2004 * min-out: Cooperation with other packages. (line 18)
2005 * M-q: Filling. (line 47)
2006 * Mule: Intro. (line 5)
2007 * MV[]: Greek letter completion. (line 5)
2008 * }[N[]: PWv. (line 8)
2009 * NR}h[]: Changing typesetter. (line 8)
2010 * NTT-jTeX[]: Filling. (line 17)
2011 * oIy[W[]: Print out. (line 10)
2012 * oJny[W[]: Print out. (line 10)
2013 * O[owv[]: Online help. (line 17)
2014 * pbP[WAg[]: Cooperation with other packages. (line 5)
2015 * platex: Invocation. (line 5)
2016 * pOt[]: Filling. (line 47)
2017 * prefix ,: Commenting out. (line 5)
2018 * prefix .: Commenting out. (line 5)
2019 * prefix >: Commenting out. (line 5)
2020 * prefix <: Commenting out. (line 5)
2021 * prefix /: Online help. (line 5)
2022 * prefix ?: Online help. (line 5)
2023 * prefix &: What column. (line 5)
2024 * prefix a: Accent mark completion. (line 5)
2025 * prefix b: begin^. (line 5)
2026 * prefix c: Modifying/Deleting. (line 5)
2027 * prefix d: Inclusion hierarchy browser. (line 5)
2028 * prefix e: end. (line 5)
2029 * prefix g: Cursor jump. (line 5)
2030 * prefix i: Filling. (line 9)
2031 * prefix k: Modifying/Deleting. (line 5)
2032 * prefix key: Invocation. (line 5)
2033 * prefix l: large^. (line 5)
2034 * prefix m: maketitle^. (line 5)
2035 * prefix s: section^. (line 5)
2036 * prefix SPC: Arbitrary completion. (line 5)
2037 * prefix w: Changing mode of YaTeX. (line 5)
2038 * prefixL[X[prefix]: Lisp variables. (line 5)
2039 * qXg[]: Cooperation with other packages. (line 9)
2040 * RgAEg[]: Commenting out. (line 5)
2041 * R}hqXg[]: Cooperation with other packages. (line 9)
2042 * s[]: Intelligent newline. (line 5)
2043 * section^[section]: section^. (line 5)
2044 * t@C[]: Includeonly. (line 12)
2045 * t@C[]: Splitting input files. (line 12)
2046 * t@C苽]: Fix region for typesetting. (line 36)
2047 * TCYwq[]: large^. (line 18)
2048 * tHgwq[]: large^. (line 18)
2049 * [Uォ[]: begin^. (line 72)
2050 * ubN[]: begin^. (line 82)
2051 * usepackage[]: Usepackage cheker. (line 5)
2052 * v[A[]: Invocation. (line 5)
2053 * vCx[gwv[]: Online help. (line 17)
2054 * vgAEg[]: Invocation. (line 5)
2055 * Wv[]: view-sectioning. (line 44)
2056 * X[]: Changing LaTeX command. (line 21)
2057 * xゥ[]: label-generation. (line 5)
2058 * X/[/]: Modifying/Deleting. (line 5)
2059 * YaTeX-help-file: Online help. (line 17)
2060 * YaTeX-help-file-private: Online help. (line 17)
2061 * YaTeX-item-regexp: Filling. (line 21)
2062 * YaTeX-math-sign-alist-private: Image completion. (line 60)
2063 * yatex-mode-hook: Hook variables. (line 5)
2064 * yatex-mode-load-hook: Hook variables. (line 5)
2065 * YaTeX-nervous: Local dictionary. (line 23)
2066 * .yatexrc: Local dictionary. (line 5)
2067 * y[WmFlprN[lpr]: Print out. (line 13)
2068 * ZNV[]: view-sectioning. (line 44)
2069 * ZNVobt@[]: view-sectioning. (line 20)
2071 Tag table:
2072 Node: Top145
2073 Node: Intro1199
2074 Node: Terminology1502
2075 Node: Main features2142
2076 Node: Installation3203
2077 Node: Invocation4428
2078 Node: Calling typesetter5088
2079 Node: Calling previewer6062
2080 Node: Print out6378
2081 Node: %#notation6644
2082 Node: Changing typesetter7018
2083 Node: Splitting input files7276
2084 Node: Fix region for typesetting8228
2085 Node: lpr format9136
2086 Node: Editing %# notation9930
2087 Node: Completion10363
2088 Node: begin型補完10753
2089 Node: section型補完13336
2090 Node: 2個以上の引数をとる section型コマンド14428
2091 Node: Enclose section-type command15242
2092 Node: Recursive completion15479
2093 Node: view-sectioning15784
2094 Node: label-generation16980
2095 Node: large型補完17331
2096 Node: maketitle型補完17910
2097 Node: Arbitrary completion18209
2098 Node: end補完18522
2099 Node: Accent mark completion18863
2100 Node: Image completion19289
2101 Node: Greek letter completion21103
2102 Node: Local dictionary21563
2103 Node: Commenting out22167
2104 Node: Cursor jump23327
2105 Node: 対応オブジェクトへのジャンプ23544
2106 Node: お絵描きツール起動24530
2107 Node: メインファイルへのジャンプ25445
2108 Node: 環境を単位としたジャンプ25781
2109 Node: 最後の補完位置へのジャンプ26138
2110 Node: Modifying/Deleting26375
2111 Node: Changing LaTeX command26780
2112 Node: Killing LaTeX command27330
2113 Node: Filling28201
2114 Node: Includeonly29530
2115 Node: What column30089
2116 Node: Intelligent newline30867
2117 Node: Usepackage cheker31898
2118 Node: Changing mode of YaTeX32325
2119 Node: Online help32900
2120 Node: Inclusion hierarchy browser33877
2121 Node: Cooperation with other packages35155
2122 Node: Customizations35610
2123 Node: Lisp variables35907
2124 Node: All customizable variables36513
2125 Node: Sample definitions43761
2126 Node: Hook variables44195
2127 Node: Hook file45088
2128 Node: Add-in functions45294
2129 Node: Etc45521
2130 Node: Copying45806
2131 Node: Concept Index46430
2133 End tag table