yatex

view docs/yatexj @ 271:d467c0fb6083

Preparing for 1.76 release
author HIROSE Yuuji <yuuji@gentei.org>
date Thu, 10 May 2012 11:40:02 +0900
parents 0b10d1fea265
children 78d0fdc0459c
line source
1 Info file: yatexj, -*-Text-*-
2 produced by `texinfo-format-buffer'
3 from file `yatexj.tex'
4 using `texinfmt.el' version 2.38 of 3 July 1998.
10 
11 File: yatexj, Node: Top, Next: Intro, Prev: (dir), Up: (dir)
13 * Menu:
15 * Intro:: はじめに
16 * Terminology:: マニュアル参照上の注意
17 * Main features:: 主な機能
18 * Installation:: インストール
19 * Invocation:: プロセス起動
20 * %#notation :: %#記法
21 * Completion:: 補完入力
22 * Local dictionary:: ローカル辞書
23 * Commenting out:: コメントアウト
24 * Cursor jump:: カーソルジャンプ
25 * Modifying/Deleting:: LaTeXコマンドの変更/削除
26 * Filling:: 桁揃え
27 * Includeonly:: 勝手に includeonly
28 * What column:: カラム位置ガイド
29 * Intelligent newline:: おまかせ改行
30 * Usepackage cheker:: 先回りusepackage
31 * Changing mode of YaTeX:: 野鳥動作モード変更
32 * Online help:: LaTeXオンラインヘルプ
33 * Inclusion hierarchy browser:: ファイル分割階層構造の表示
34 * Cooperation with other packages:: 他パッケージとの連携
35 * Customizations:: カスタマイズ
36 * Etc:: その他
37 * Copying:: 取り扱い
38 * Concept Index:: 索引
42 
43 File: yatexj, Node: Intro, Next: Terminology, Prev: Top, Up: Top
45 はじめに
46 ********
48 野鳥は、GNU Emacs で LaTeX 用の文書を作成する時に pLaTeX などのタイプセッ
49 トコマンドや、プレヴューアの起動を Emacs 編集画面中から行えるようにすると
50 共に、拡張性の高い種々の補完機能によりソーステキストの編集を支援します。さ
51 らに LaTeX コマンドのオンラインヘルプによりマニュアルを調べる手間を軽減し
52 ます。
54 English manual *Note Top: (yatexe)Top.
57 
58 File: yatexj, Node: Terminology, Next: Main features, Prev: Intro, Up: Top
60 本マニュアル参照上の注意
61 ************************
63 本マニュアルでは以下の表記を用います。
65 * begin型コマンド
67 `\begin{環境} 〜 \end{環境}'という形式のLaTeXコマンドを指します。
68 begin型コマンドを補完入力することをbegin型補完と呼びます。
70 * section型コマンド
72 `\section{タイトル}'や`\mbox{内容}'のように引数を取るLaTeXコマンドを
73 指します。
75 * maketitle型コマンド
77 `\maketitle'や`\tableofcontents'のように引数を取らないLaTeXコマンドを
78 指します。
80 * large型コマンド
82 `{\large ...}' や `{\tt ...}' のようなフォント/サイズ指定子を指します。
84 * `[prefix]'
86 野鳥の機能を呼び出すためのプリフィクスキー。デフォルトでは`C-c'に割り
87 当てられているので、特に変更していない場合本マニュアルの `[prefix]'
88 という表記は、`C-c' と読み換えてください。
91 
92 File: yatexj, Node: Main features, Next: Installation, Prev: Terminology, Up: Top
94 主な機能
95 ********
97 * タイプセッタやプレヴューアなどの編集画面からの起動(`C-c t')
98 * カーソル位置によらない固定リジョンの部分タイプセット
99 * \includeonlyのワンタッチ更新
100 * エラー箇所への自動ジャンプ(`C-c '')
101 * `\begin{}, \end{}, \section...' などの LaTeX コマンドの補完入力(`C-c
102 b', `C-c s', `C-c l', `C-c m')
103 * 既に入力したテキストを環境やコマンド引数の中に取り込む括り補完(`C-u'
104 +通常補完キー)
105 * セクション区切り入力時の文書構造アウトライン表示
106 * セクションコマンドの一括シフト (*Note view-sectioning::)
107 * 補完辞書の学習
108 * LaTeX の環境やコマンドに応じたガイド付き引数入力
109 * 野鳥にないガイド付き引数入力関数の自動生成(`yatexgen.el')
110 * LaTeX コマンドの削除/変更(`C-c k', `C-c c')
111 * ファイル間、`\begin'<->`\end'間、`\ref'<->`\label'間、
112 `\cite'<->`\bibitem'ジャンプ(`C-c g')
113 * 一括コメントアウト/アンコメントアウト(`C-c >', `C-c <', `C-c ,', `C-c
114 .')
115 * アクセント記号/数式環境用コマンド/ギリシャ文字の入力支援(`C-c a',
116 `;', `/')
117 * tabular/array環境のカラム位置ガイド
118 * 標準的 LaTeX コマンドのオンラインヘルプ(`C-c ?', `C-c /')
119 * ドキュメントのインクルード構造の視覚的表示とバッファ切り替え(`C-c d')
120 * 補完入力したマクロに応じて必要な \userpackage を入れてくれる先回り
121 userpackage
122 * \labelを打つことはもう忘れよう! refやcite補完入力で自動生成します
125 
126 File: yatexj, Node: Installation, Next: Invocation, Prev: Main features, Up: Top
128 起動法
129 ******
131 野鳥起動のための設定
132 ====================
134 ~/.emacsに下の2項目を加えます。
136 (setq auto-mode-alist
137 (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
138 (autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
140 次に野鳥の emacs-lisp ファイル群を置くディレクトリを load-path に加えます。
141 たとえば、 `~/src/emacs/yatex'に置くのであれば、
143 (setq load-path (cons (expand-file-name "~/src/emacs/yatex") load-path))
145 などとします。
147 以上の設定により、拡張子が .tex であるファイルを編集すると自動的に野鳥が
148 ロードされます。野鳥が正常に起動できたときはモードラインの表示が「やてふ」
149 に変わります。
152 タイプセッタ/プレヴューア環境の設定
153 ===================================
155 利用する外部プログラムに関する以下の変数を確認し、必要なら正しい値に変更
156 します。
157 `tex-command'
158 ... 起動するタイプセッタのコマンド名
159 `dvi2-command'
160 ... 起動するプレヴューアのコマンド名
161 `NTT-jTeX'
162 ... 改行+インデントによって、タイプセット後の字間が空いてしま
163 うのを抑制する場合にtにする(古いNTT-jTeXで顕著に現れる)。具体的には、
164 fillするときに各行の終わりに%を付加するようになる。
165 `YaTeX-kanji-code'
166 ... 文書を作成する時の漢字コード
167 `dviprint-command-format'
168 ... ファイルの印刷に使われるコマンド列の書式
169 `makeindex-command'
170 ... makeindexコマンド
172 これらを変更する場合は、やはり`~/.emacs'にて、たとえば(setq tex-command
173 "pdflatex") のようにしてください。どのような値をセットすれば良いかについて
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 e'
192 ... タイプセッタ起動(ポイント位置の環境または数式モードのみ対
193 象)
194 `[prefix] t k'
195 ... 動作中のタイプセッタの停止
196 `[prefix] t b'
197 ... jbibtex起動
198 `[prefix] t i'
199 ... makeindex起動
200 `[prefix] t d'
201 ... タイプセット完了後dvipdfmx起動
202 `[prefix] t p'
203 ... プレヴューア起動
204 `[prefix] t l'
205 ... lpr(プリントアウト用)コマンド起動
206 `[prefix] t s'
207 ... xdvi -remote でのサーチ
209 * Menu:
211 * Calling typesetter:: タイプセッタ起動
212 * Calling previewer:: プレヴューア起動
213 * Print out:: プリントアウト用コマンドの起動
216 
217 File: yatexj, Node: Calling typesetter, Next: Calling previewer, Prev: Invocation, Up: Invocation
219 タイプセッタ起動
220 ================
222 タイプセッタを起動すると、編集ウィンドウが2つに分割され、片方のウィンド
223 ウにタイプセット画面が表示されます。出力されるメッセージと連動しタイプセッ
224 トバッファは自動的にスクロールします。もし、途中でエラーが起こって止まって
225 しまった場合にはタイプセットバッファに移り、(`C-x o') タイプセッタの出して
226 いる ? プロンプトに対して、`x' (処理の中断)などの指示を送ることができます。
227 エラーを修正する場合は、
229 `[prefix] ''
230 `(prefix+アポストロフィ)'
231 ... 直前のエラー発生行へジャンプ
233 を入力することにより、タイプセッタがエラーを発生した行に移ることができます。
234 また、タイプセッタの出力する overfull hbox などのウォーニング行にも対応し
235 ていますので、順次 `[prefix] '' を押すことにより、一つ前のウォーニング発生
236 行にジャンプしていきます。
238 もし、気になるエラー行があった場合は、タイプセットバッファで、エラーの表
239 示されている行にカーソルを合わせスペースキーを押すと LaTeX ソースの対応す
240 る行にジャンプします。
243 領域タイプセット
244 ----------------
246 ポイントとマークの間、あるいはテキスト中に埋め込んだ `%#BEGIN' と`%#END'
247 の間の領域(*Note %#notation::)だけを切り取ってタイプセットすることができま
248 す。この場合メインファイルのプリアンブルが一時ファイルのプリアンブルとして
249 使われます。したがってプリアンブルにないマクロ定義が領域内にあるとエラーに
250 なります。領域タイプセットを使う場合、必ずマクロ定義はプリアンブル
251 (`\begin{document}'より前)に置くようにして下さい。一時ファイルはメインファ
252 イルのあるディレクトリの`texput.tex'という名前で出力されるので、上書きには
253 注意してください。
256 環境タイプセット
257 ----------------
259 `[prefix] te' を押すと、ポイント位置の最も内側の環境、または数式モード内
260 の場合はその数式モード全体が自動的に領域選択されて、領域タイプセットを呼び
261 出します。tabular環境や数式モードで複雑なものを作っている場合は確かめたい
262 部分だけを確認できるので便利です。これも `texput.tex' に該当部分を書き出し
263 ます。プレヴューアで `texput.dvi' を開いたままにしておけば修正と確認が素早
264 くできるでしょう。
267 
268 File: yatexj, Node: Calling previewer, Next: Print out, Prev: Calling typesetter, Up: Invocation
270 プレヴューア起動
271 ================
272 `[prefix] t p' によりプレヴューアの起動ができます。さらに、もしあなたが、-
273 remote 機能つきのxdviを利用している場合は `[prefix] t s' を押すことにより
274 カーソル位置の文字列を検索してそのページを表示するようにすでに起動中のxdvi
275 に命令を送ります。これにより、現在編集中の箇所のタイプセット結果を即座に見
276 ることができます。
280 
281 File: yatexj, Node: Print out, Prev: Calling previewer, Up: Invocation
283 プリントアウト
284 ==============
286 `[prefix] t l'を押してプリントアウトを指示すると、出力開始/終了ページを
287 聞いてくるので、それぞれに答えます。これを省略したい時は、
288 universal-argument をつけ、
291 `C-u [prefix] t l'
292 ... ページ確認省略lpr起動
294 のように起動してください。
297 
298 File: yatexj, Node: %#notation, Next: Completion, Prev: Invocation, Up: Top
300 %#記法
301 ******
303 本文中に`%#'ではじまるキーワードを埋め込むことでタイプセッタ起動等の制御
304 をすることができます。
306 * Menu:
308 * Changing typesetter:: タイプセット用コマンドの変更
309 * Splitting input files:: 入力ファイル分割
310 * Fix region for typesetting:: 領域の固定
311 * lpr format:: プリントアウトコマンド用フォーマット
312 * Controlling which command to invoke:: その他の起動コマンド制御
313 * Editing %# notation:: %#記法の編集
316 
317 File: yatexj, Node: Changing typesetter, Next: Splitting input files, Prev: %#notation, Up: %#notation
319 タイプセット用コマンド変更
320 ==========================
322 起動するコマンドを変えたい時は本文中に次のような行を書きます。
325 %#!jlatex-ntt
327 NTT jTeX と、ASCII jTeX を使い分けたいような場合に便利でしょう。
331 
332 File: yatexj, Node: Splitting input files, Next: Fix region for typesetting, Prev: Changing typesetter, Up: %#notation
334 入力ファイル分割
335 ================
337 また、章毎に別ファイルの .tex を作成している場合で、`main.tex'から
338 `sub.tex' を `\include'しているような時は、`sub.tex'の任意の位置に次のよう
339 な行を埋め込みます。
341 %#!platex main.tex
344 上の例のようにコマンド名だけでなく引数も書いた場合には、全てをそのまま
345 shell に渡すので次のように書けば、ghostview などをプレヴューアに使う時に便
346 利です。
349 %#!platex main && dvi2ps main.dvi > main
351 なお、この行の最後の単語のピリオド以前を「メインファイル」のベースネームで
352 あると仮定します(上の2つの場合どちらも`main')。この行に記述した、`%f'はメ
353 インファイル名に、 `%r' はメインファイルの拡張子を取り除いた部分に置換され
354 ます。ただし、`%f,%r'を利用した場合、初回タイプセット時に必ずメインファイ
355 ル名の入力を促されます。
357 `[prefix] g' (*Note Cursor jump::参照) でのファイル間ジャンプを有効に機
358 能させるため、入力ファイル分割時には次のことに注意して下さい。
360 1. サブディレクトリを作って、その中にサブファイルを置くことはできるがサ
361 ブディレクトリのサブディレクトリには置けない。
362 2. メインファイルからサブディレクトリ内のファイルを include する時には、
363 相対パス指定を用いて、`\include{chap1/sub}'のように記述。
364 3. メインファイルが一つ上のディレクトリにある場合も、サブファイルには
365 %#!platex main.tex のように記述する(../mainではない)。
370 
371 File: yatexj, Node: Fix region for typesetting, Next: lpr format, Prev: Splitting input files, Up: %#notation
373 領域の固定
374 ==========
376 `[prefix] tr' の領域指定のタイプセットでは、とくに指定のないかぎり、
377 `C-SPC'でマークした位置と、ポイント(カーソル位置)の間を領域とみなしますが、
378 必ず決まった領域をタイプセットしたい場合は、その領域を
380 %#BEGIN
381 <渡したい領域>
382 %#END
384 のように`%#BEGIN'と`%#END'で囲み、カーソルを「`%#BEGIN'以降」に置いてくだ
385 さい。この時の領域決定規則をまとめると次のようになります。
388 1. カーソル位置よりバッファの先頭方向に`%#BEGIN'というキーワードがある場
389
391 1. `%#BEGIN'よりバッファの末尾方向に`%#END'というキーワードが見つかっ
392 た場合。
393 =>`%#BEGIN' から、その `%#END' のある位置まで。
394 2. `%#END' が見つからなかった場合。=>バッファの最後尾まで。
396 2. カーソル位置よりバッファの先頭方向に `%#BEGIN' というキーワードが
397 見つからなかった場合。
398 =>マーク(`C-SPC'位置)とポイント(カーソル位置)の間の領域。
400 tabular 環境を何度も試行錯誤しているような場合は、`\begin'の前の行に
401 `%#BEGIN' と書き、`\end' の次の行に `%#END' と書いておくと簡単に作表結果を
402 テストすることができます。また、長い .tex ファイルの後半に `%#BEGIN' を書
403 いておけば、前半の部分は無視できます。このBEGINとEND の消し忘れには十分ご
404 注意下さい。
408 
409 File: yatexj, Node: lpr format, Next: Controlling which command to invoke, Prev: Fix region for typesetting, Up: %#notation
411 lprフォーマット
412 ===============
414 まず、プリントアウト用コマンド列のフォーマットについて説明します。コマン
415 ド列フォーマットは、3つの Lisp 変数によって表現されます。デフォルトの
416 dvi2ps 用のフォーマットを例に説明します。
418 `(1)dviprint-command-format'
419 `"dvi2ps %f %t %s | lpr"'
421 `(2)dviprint-from-format'
422 `"-f %b"'
424 `(3)dviprint-to-format'
425 `"-t %e"'
427 実際にプリントアウトする時は、(1)中の %s がファイル名に置き換えられ、%f が
428 (2)の内容、%t が(3)の内容に置き換えられます。その際に(2)の文字列中の %b は
429 「出力開始ページ」、(3)の文字列中の %e は「出力終了ページ」に置き換えられ
430 ます。もし、ページを指定しない時には、%f, %t 両方とも無視されます。
432 この、dviprint-command-format を臨時に変えたい時は、LaTeX のソーステキス
433 ト中の任意の場所に、
435 %#LPR dvi2ps %f %t %s | 4up -page 4 | texfix | lpr -Plp2
437 のように書いて下さい。プリントアウトするページ範囲をいちいち聞かせないよう
438 にする時に
440 %#LPR dvi2ps %s | lpr
442 などとするのも便利かもしれません。
445 
446 File: yatexj, Node: Controlling which command to invoke, Next: Editing %# notation, Prev: lpr format, Up: %#notation
448 その他の起動コマンド制御
449 ========================
451 LaTeX 文書に関連するコマンドは以下の %# 記法で指定することができます。
453 `%#BIBTEX'
455 ... makeindexを行なうコマンドライン([prefix] t b)
456 `%#MAKEINDEX'
458 ... bibtexを行なうコマンドライン([prefix] t i)
460 行頭がこれらのキーワードで始まる行をLaTeX文書の先頭付近に書いておけば、そ
461 れで指定したコマンドを起動できます。
464 
465 File: yatexj, Node: Editing %# notation, Prev: Controlling which command to invoke, Up: %#notation
467 %#記法自体の編集
468 ================
470 以上のような`%#'で始まる各種制御記法を編集するためには
472 `[prefix] %'
473 ... `%#'記法編集メニュー
475 を押します。
477 !)Edit-%#! B)EGIN-END-region L)Edit-%#LPR
479 というメニューが出て来るので、`%#!'に続くコマンドを変更したい時には`!'を、
480 `%#LPR'で lpr フォーマットを変えたい時は`l'を、あらかじめ設定したリジョン
481 を `%#BEGIN' 〜 `%#END' で括りたい時は、`b'を押します。`b'を選んだ時には、
482 それまでバッファ中に置かれていた`%#BEGIN', `%#END' が自動的に消去されます。
485 
486 File: yatexj, Node: Completion, Next: Local dictionary, Prev: %#notation, Up: Top
488 補完入力
489 ********
491 LaTeX での環境名などは、野鳥の補完機能を利用して能率的に入力することがで
492 きます。
494 * Menu:
496 * begin型補完::
497 * section型補完::
498 * large型補完::
499 * maketitle型補完::
500 * Arbitrary completion:: 随時補完
501 * end補完::
502 * Accent mark completion:: アクセント記号補完
503 * Image completion:: 数式記号イメージ補完
504 * Greek letter completion:: ギリシャ文字補完
507 
508 File: yatexj, Node: begin型補完, Next: section型補完, Prev: Completion, Up: Completion
510 begin型補完
511 ===========
513 `\begin{env}...\end{env}'の様な形式の入力の補完をbegin型補完と呼ぶことに
514 します。begin 型補完は、
516 `[prefix] b'
517 ... begin 型補完開始(標準では `C-c b')
519 で始まります。頻繁に用いられる次の LaTeX 環境の補完は、[prefix] `b' に続く
520 次の1文字を入力するだけで、`\begin{xxx}...\end{xxx}'を完成させます。
522 `[prefix] b c'
523 ... `\begin{center}...\end{center}'
524 `[prefix] b d'
525 ... `\begin{document}...\end{document}'
526 `[prefix] b D'
527 ... `\begin{description}...\end{description}'
528 `[prefix] b e'
529 ... `\begin{enumerate}...\end{enumerate}'
530 `[prefix] b E'
531 ... `\begin{equation}...\end{equation}'
532 `[prefix] b i'
533 ... `\begin{itemize}...\end{itemize}'
534 `[prefix] b l'
535 ... `\begin{flushleft}...\end{flushleft}'
536 `[prefix] b m'
537 ... `\begin{minipage}...\end{minipage}'
538 `[prefix] b t'
539 ... `\begin{tabbing}...\end{tabbing}'
540 `[prefix] b T'
541 ... `\begin{tabular}...\end{tabular}'
542 `[prefix] b ^T'
543 ... `\begin{table}...\end{table}'
544 `[prefix] b p'
545 ... `\begin{picture}...\end{picture}'
546 `[prefix] b q'
547 ... `\begin{quote}...\end{quote}'
548 `[prefix] b Q'
549 ... `\begin{quotation}...\end{quotation}'
550 `[prefix] b r'
551 ... `\begin{flushright}...\end{flushright}'
552 `[prefix] b v'
553 ... `\begin{verbatim}...\end{verbatim}'
554 `[prefix] b V'
555 ... `\begin{verse}...\end{verse}'
557 上記のもの以外の環境名は Emacs の持つインクリメンタルな補完機能を用いて
558 入力します(上記の環境名も以下の補完入力可能)。
560 `[prefix] b SPC'
561 ... begin 型補完入力
563 `[prefix] b SPC' と入力すると、最下行のミニバッファに
565 Begin environment(default document):
567 と表示されます。ここで、何も入れずにリターンキーのみ押すと、括弧内に出てい
568 るデフォルトの環境名が入力されますが、適当な環境名を入力すると、`\begin{環
569 境名} … \end{環境名}'が文書中に挿入されます。ミニバッファで環境名を入力す
570 るときに、環境名の頭文字を入力し「スペース」をたたくと、一致する環境名が内
571 部テーブルに存在した場合、正しい環境名に補完されるので、入力の手間が省けま
572 す。内部テーブルに存在しない環境名を入力した時はユーザ専用のテーブルに登録
573 され、さらにそのテーブルを自動的に、ユーザ辞書(デフォルトでは
574 `~/.yatexrc')に保存します。
576 さらに、特定の環境を補完入力した時にはその環境で必ず用いられるエントリを自
577 動挿入します(例: `itemize'環境における`\item'など)。挿入されたエントリが不
578 要な場合にはundoによって消去して下さい。
581 既に書いたテキストを環境で括る
582 ------------------------------
584 ところで、最初に書いてしまったブロックを後から、itemize 環境の中に閉じこ
585 めたいと思うことがありますが、そのようなときは、あらかじめ閉じこめたい段落
586 をマークして、begin 型補完の各コマンドの `[prefix]' の次の『小文字の 'b'』
587 を『大文字』に変えて起動して下さい。(または、`C-u' を先に打ち、universal
588 argument をつけても可能です)
590 例えばあるパラグラフを description 環境の中に入れたいときは、そのパラグ
591 ラフをマークしてから、
593 `[prefix] B D'
594 `(または ESC 1 [prefix] b D)'
595 `(または C-u [prefix] b D など)'
597 とタイプしてください。これは、`[prefix] b SPC'の補完入力にもあてはまり、
598 `b' を大文字に変えて、`[prefix] B SPC' とタイプすれば、あらかじめマークし
599 ておいたリジョンを、begin と end の環境で括ります。
602 
603 File: yatexj, Node: section型補完, Next: large型補完, Prev: begin型補完, Up: Completion
605 section型補完
606 =============
608 `\section{目的}' のような形式の入力の補完を section 型補完と呼ぶことにし
609 ます。section 型補完は、
611 `[prefix] s'
612 ... section 型補完
615 で実行します。`[prefix] s' を入力するとミニバッファに、
617 (C-v for view-section) \???{} (default documentclass):
619 というプロンプトが現れるので、そこで `section' のような LaTeX コマンド名を
620 入力します。ここでもリターンキーのみで括弧内のデフォルト値が選択されるほか、
621 `chapter'などのような頻度の高い名称入力にはスペースキーによる補完機能が有
622 効です。 次に、{}の中身の入力を促す、
624 \section{???}:
626 というプロンプトが現れるので、セクションのタイトルなどを入力します。たとえ
627 ば、
629 (C-v for view-section) \???{} (default documentclass): section
630 \section{???}: 目的
632 のように入力した場合は、文章中に
634 \section{目的}
636 が挿入され、
638 (C-v for view-section) \???{} (default section): vspace*
639 \vspace*{???}:
641 のように{}の中身を省略したときは、
643 \vspace*{}
645 だけが挿入され、改行はせずカーソルは自動的に中括弧の内側に移動します。
647 * Menu:
649 * 2個以上の引数をとる section型コマンド::
650 * Enclose section-type command:: 括り補完
651 * Recursive completion:: 再帰補完
652 * view-sectioning:: セクション区切りのアウトライン表示
653 * label-generation:: ラベル自動生成
656 
657 File: yatexj, Node: 2個以上の引数をとる section型コマンド, Next: Enclose section-type command, Prev: section型補完, Up: section型補完
659 2個以上の引数をとる section型コマンド
660 -------------------------------------
662 ところで、`\addtolength{\topmargin}{8mm}' などのように、引数を二つ以上取
663 る LaTeX コマンドがあります。このようなコマンドの補完入力には、 section 型
664 補完呼び出しに引数を付けてください。例えば上の`addtolength' の例であれば、
665 引数2を指定します。つまり、
667 C-u 2 [prefix] s (または、ESC 2 [prefix] s)
669 と section 型補完を呼び出した後、
671 (Ctrl-v for view-section) \???{} (default vspace*): addtolength
672 \addtolength{???}: \topmargin
673 Argument 2: 8mm
675 のように入力してください。最初の addtolength の部分と、第一引数である
676 \topmargin の入力は当然スペースによる補完入力が可能です。ユーザ辞書に登録
677 される LaTeX コマンドには、この引数の数も学習されるので、最初の補完の時引
678 数の数を指定して起動しておけば、以後の補完時には、記憶された個数だけ引数を
679 聞いて来るようになります。あとで引数の個数を変えたい時は、再び `C-u' を用
680 いて個数を指定し直すことで、自動的に辞書中の引数の個数の部分を更新します。
684 
685 File: yatexj, Node: Enclose section-type command, Next: Recursive completion, Prev: 2個以上の引数をとる section型コマンド, Up: section型補完
687 既に書いたテキストを括る
688 ------------------------
690 また、起動コマンドの`s'を大文字に変えて起動すると、あらかじめ書いた文章
691 を section 型コマンドの第一引数として括ります。
694 
695 File: yatexj, Node: Recursive completion, Next: view-sectioning, Prev: Enclose section-type command, Up: section型補完
697 再帰補完
698 --------
700 高度な使い方になるかもしれませんが、section型補完の引数の入力時にさらに
701 補完入力を利用することができます(section/large/maketitle型に限る)。section
702 型コマンドの引数に更に LaTeX コマンドが来る場合にはミニバッファで野鳥の補
703 完キーを再帰的に入力することで引数の入力も効率的に行なえます。
706 
707 File: yatexj, Node: view-sectioning, Next: label-generation, Prev: Recursive completion, Up: section型補完
709 セクション区切りのアウトライン表示
710 ----------------------------------
712 通常のsection型補完の時にミニバッファで`C-v'を押すと現在存在するセクショ
713 ン区切りコマンド全てを `*Sectioning Lines*'というバッファに一覧表示します
714 (「<<--」のついている行がもっとも近いセクション区切り)。この時ミニバッファ
715 で`C-p', `C-n' を押すと`part', `chapter', ..., `subparagraph' のコマンドが
716 論理階層の高さにしたがって上下します。また、`C-v', `M-v' を押すとセクショ
717 ン区切り一覧バッファがスクロールし、数字の`0'〜`7'を押すとある高さ以上のセ
718 クション区切りだけを選んで表示します(実際にやって見れば分かります)。
720 `*Sectioning Lines*'バッファは、
722 `M-x YaTeX-section-overview'
723 ... セクション区切り一覧バッファを生成
725 で作成することができます。このバッファを選択し任意の行でスペースを押すと、
726 該当するセクション区切りのある本文中の場所にジャンプします。さらに、同バッ
727 ファで `u' を押すと、ソーステキストの対応するセクションコマンドが一階層上
728 がり(例: subsection が section に変わる)、`d'を押すと一階層下がります。
729 `*Sectioning Lines*'バッファにあるセクション区切りの行をマークしておいて
730 `U'を押すとリジョン内のものに対応するソーステキストのセクションコマンドす
731 べてが一階層上がり、`D'を押すと下がります。セクション区切り一覧バッファで
732 利用できるキーコマンドには以下のものがあります。
734 `SPC'
735 ... 対応するソース行へジャンプ
736 `.'
737 ... 対応するソース行を表示
738 `u'
739 ... カーソル位置に対応するセクションコマンドを一階層上げる
740 `d'
741 ... カーソル位置に対応するセクションコマンドを一階層下げる
742 `U'
743 ... マークしたセクションコマンドを一階層上げる
744 `D'
745 ... マークしたセクションコマンドを一階層上げる
746 `0〜6'
747 ... レベル n 以下のセクションコマンドを隠して表示
751 
752 File: yatexj, Node: label-generation, Prev: view-sectioning, Up: section型補完
754 ラベル自動生成
755 --------------
757 `\ref{}' や `\cite{}' マクロをsection型補完で入れた場合参照先となり得る
758 ものを全て探してメニューにして選択できます。参照先には`\label{}'をつけてお
759 く必要はありません。もしあれば、そのラベルを使い、なければその場で参照先に
760 `\label{}'を作らせてくれます。ラベル名を考えるのは苦痛に感じるものです。全
761 てのカウンタにラベルをつけるのもたいへんです。もうラベル名に何をつけるか、
762 ラベルをつけるかつけまいか、などということは忘れましょう!
765 
766 File: yatexj, Node: large型補完, Next: maketitle型補完, Prev: section型補完, Up: Completion
768 large型補完
769 ===========
771 `{\large }' のような形式の補完を large 型補完と呼ぶことにします。
773 `[prefix] l'
774 ... large 型補完開始
776 がlarge型補完の開始です。`[prefix] l' を押すと、ミニバッファに
778 {\??? } (default large):
781 と表示されるので、上記のものと同じ要領で補完入力して下さい。補完候補に用意
782 されているのは、`footnotesize' や `huge' のような文字サイズ指定子と、`bf'
783 や`dg'のようなフォント指定子です。
786 既に書いた文字を括る
787 --------------------
789 また、begin型補完の時と同様、先に書いてしまった一連の文章の文字のサイズ
790 を変えたいと思う時がありますが、そのような時は、サイズや大きさを変えたい文
791 字の範囲をマークしてから、呼び出しキーを `[prefix] L' と、大文字の L に変
792 えて呼び出せば、そのリジョン全体が、ブレースで囲まれます。
795 
796 File: yatexj, Node: maketitle型補完, Next: Arbitrary completion, Prev: large型補完, Up: Completion
798 maketitle型補完
799 ===============
801 `\maketitle' の形式の補完を maketitle 型補完と呼ぶことにします。
803 `[prefix] m'
804 ... maketitle 型補完開始
806 で、maketitle 型補完を開始します。補完の要領は今までのものとまったく同じで
807 す。LaTeX 用のコマンド名が補完候補として用意されています。
810 
811 File: yatexj, Node: Arbitrary completion, Next: end補完, Prev: maketitle型補完, Up: Completion
813 随時補完
814 ========
816 さて、今まで述べた典型的な LaTeX コマンド形式の補完入力を用いずに、今入
817 力しようとしている LaTeX コマンドを文書中の任意の位置で随時補完することも
818 できます。LaTeX コマンド(先頭が\で始まる)を入力している途中で、
820 `[prefix] SPC'
821 ... 随時補完
823 を入力すれば、全ての補完候補の中から一致するものが選ばれカーソル位置に挿入
824 されます。
827 
828 File: yatexj, Node: end補完, Next: Accent mark completion, Prev: Arbitrary completion, Up: Completion
830 end補完
831 =======
833 現在開いたままの環境名を自動的に検出し、`\end{環境名}'を挿入します。
834 begin 型補完を用いれば環境の閉じ忘れはないのですが、時にはついつい手で
835 `\begin{環境名}' を入れてしまい、悲しい思いをすることがあります。そのよう
836 な時には気にせず続けて文章を入力し、しかるのちに
838 `[prefix] e'
839 ... end 補完
841 とすることで、現在開いている環境名で \end{} が補われます。
844 
845 File: yatexj, Node: Accent mark completion, Next: Image completion, Prev: end補完, Up: Completion
847 アクセント記号補完
848 ==================
850 欧文のアクセント記号(`\`{o}'など)を入力する時は、
852 `[prefix] a'
853 ... アクセント記号入力
855 を押すと、ミニバッファに
857 1:` 2:' 3:^ 4:" 5:~ 6:= 7:. u v H t c d b
859 というメニューが出て来るので、数字、または対応する記号/英字を入力して下さ
860 い。すると編集バッファに、
862 \`{}
864 が現われ、カーソルが{}内に位置するので、さらに一文字入力する事で、
866 \`{o}
868 が完成され、カーソルは{}の外に戻ります。
871 
872 File: yatexj, Node: Image completion, Next: Greek letter completion, Prev: Accent mark completion, Up: Completion
874 数式記号イメージ補完
875 ====================
877 主に数式モードで使用される、矢印やΣなどの記号を擬似的に表現するキー入力
878 で、LaTeX コマンドを入力できます。これは野鳥自身の「数式モード」でのみ動作
879 します。野鳥はカーソルがTeXの数式環境の中にある時に`;'や、`:'に特殊な機能
880 を持たせます。
882 さて、例えば、←(leftarrow)をASCII文字だけで表現する場合、一般的には「<-」
883 のようにしますが、これを利用して、数式記号イメージ入力モードで`\leftarrow'
884 を入力するには、`;'(セミコロン)を打ってから`<-'と入力します。同様に、長い
885 矢印←-(long-leftarrow) をASCII文字だけで表現する場合「<--」とするので、
886 `\longleftarrow'を入力するためには、`;<--' と入力します。あるいは無限大記
887 号をASCII文字だけで表現する時は「oo」のようにすることから、`\infty' を入力
888 する時は、`;oo'とキー入力します。
890 これらの操作をまとめると次のようになります。
892 INPUT 入力される LaTeX コマンド
893 ; < - `\leftarrow'
894 ; < - - `\longleftarrow'
895 ; < - - > `\longleftrightarrow'
896 ; o `\circ'
897 ; o o `\infty'
901 いずれの場合も、イメージ入力を行っている途中で望みのものがバッファに表示
902 されたなら、そこでイメージ入力を止めて次の編集動作に移っても構いません。
904 数式環境中で`;'自身を入力するには`;;'のようにします。イメージ入力の途中
905 でTABを押すと、それまで入力した文字で始まるもの一覧が表示されます。ここで
906 目的の LaTeX コマンドまでカーソルを移動し再度TABを押すことでその LaTeX コ
907 マンドがバッファに挿入されます。
909 どのキー入力にどの記号が対応しているか全て知りたい時は、`;'を押した直後
910 にTABを押してください。以下の例は、`;<'と押した後にTABを押したものです。
912 KEY LaTeX sequence sign
913 < \leq ≦
914 << \ll 《
915 <- \leftarrow ←
916 <= \Leftarrow <=
918 左から[入力キー]、[対応する LaTeX コマンド]、[(擬似)記号図示]、という順で
919 メニューが出て来るので、よく使うものを覚えておくと良いでしょう。ものによっ
920 てはASCII文字で表現することが困難なので、あまり覚えやすいキー並びではない
921 ものがあるでしょうから、そのような場合は \maketitle 型補完で入力するか、以
922 下に述べる対応表の設定を行って単純なキー並びのものを設定すると良いでしょう。
924 入力キーと LaTeX コマンド、記号の対応表を個人的に設定したい場合は
925 Emacs-Lisp 変数 `YaTeX-math-sign-alist-private' に定義してください。その内
926 容とデフォルトのものを合わせたものが対応表として使用されます(private の方
927 が優先される)。なお、この変数の構造については `yatexmth.el' を参照してくだ
928 さい。
931 
932 File: yatexj, Node: Greek letter completion, Prev: Image completion, Up: Completion
934 ギリシャ文字補完
935 ================
937 もう一つ、数式環境中で`:'を押すとギリシャ文字入力モードに入ります。`:'を
938 押した直後に`a'を押すと`\alpha'が、`g' を押すと `\gamma'が、などアルファベッ
939 トに対応したギリシャ文字が挿入されます。操作方法は;の数式記号補完とまった
940 く同じです。まずは`:'の直後にTABを押してどのアルファベットにどのギリシャ文
941 字が対応しているか調べてみてください。
943 `;'と`:'を数式環境中で押しているにもかかわらず、イメージ補完が働かない場
944 合は、`C-u ;'のように universal-argument をつけてキーを押すことにより、強
945 制的にイメージ補完に入ることができます。また、この時にどのような状態で数式
946 環境内判定に失敗したかをご連絡下さい。
949 
950 File: yatexj, Node: Local dictionary, Next: Commenting out, Prev: Completion, Up: Top
952 ローカル辞書
953 ************
955 補完入力用の候補は三種類の辞書から構成されています。一つは`yatex.el'に組
956 み込まれた「標準辞書」、もう一つはユーザが個人的に常用するコマンドを保存す
957 る「ユーザ辞書」、そしてもうひとつはあるディレクトリでのみ有効なコマンドを
958 保存する「ローカル辞書」です。
960 補完入力時に新しい単語を入れた場合に、その単語をどの辞書に入れるか聞いて
961 来ます。
963 `foo' is not in table. Register into: U)serDic L)ocalDic N)one D)iscard
965 というプロンプトに対し、`u'と答えると「ユーザ辞書」を、`l'と答えるとローカ
966 ル辞書を更新し、`n'と答えると辞書ファイルは更新せず現在のEmacs セッション
967 のみ有効な単語とし、`d'と答えると新たな単語を学習せずに捨てることになりま
968 す。
970 もし、ローカル辞書の機能はいらず、全てユーザ辞書の更新のみでよいと言う場
971 合には`~/.emacs'などで、
973 (setq YaTeX-nervous nil)
975 として下さい。
978 
979 File: yatexj, Node: Commenting out, Next: Cursor jump, Prev: Local dictionary, Up: Top
981 コメントアウト
982 **************
985 LaTeXの編集には試行錯誤がつきものです。ある部分を一括でコメントアウトし
986 たり、コメントを外したりしたいことがあります。
988 `[prefix] >'
989 ... リジョンを % でコメントアウト
990 `[prefix] <'
991 ... リジョンの % のコメントを外す
993 は、あらかじめ設定したリジョンに対しての操作、
995 `[prefix] .'
996 ... 現在のパラグラフをコメントアウト
997 `[prefix] ,'
998 ... 現在のパラグラフのコメントを外す
1000 は、カーソルの位置するパラグラフ全体に対しての操作です。なお、ここでいう
1001 「パラグラフ」は (`mark-paragraph') 関数によりマークされる範囲を指します
1002 (標準設定で`ESC h'にバインドされている)。なお、既に`%'でコメントアウトされ
1003 ているパラグラフに対して繰り返しパラグラフのコメントを使用した場合の動作は
1004 保証しませんので御注意ください。
1006 さて、文章に対してだけでなく、時には`\begin', `\end' 自体に対してもコメ
1007 ントアウトの操作をしたいときがあります。このようなときは、`\begin{}' ある
1008 いは `\end{}' の行にカーソルを合わせ、
1010 `[prefix] >'
1011 ... `\begin{}'〜`\end{}' 全てコメントアウト
1012 `[prefix] <'
1013 ... `\begin{}'〜`\end{}' 全てコメントを外す
1015 とすることで、`\begin〜\end'で囲まれる環境全てに対してコメント操作し、
1017 `[prefix] .'
1018 ... `\begin{}' と `\end{}' をコメントアウト
1019 `[prefix] ,'
1020 ... `\begin{}' と `\end{}' のコメントを外す
1022 は、対応する `\begin' と `\end' 2行だけを、コメント操作の対象とします。リ
1023 ジョンをコメントアウトしようとして、マークを設定したのちにカーソルを移動し
1024 `[preifx] >' を押してもカーソルが `\begin{}' の上にあると`\begin{}'〜
1025 `\end{}'モードでコメント機能が働いてしまうので注意して下さい。
1029 File: yatexj, Node: Cursor jump, Next: Modifying/Deleting, Prev: Commenting out, Up: Top
1031 カーソルジャンプ
1032 ****************
1035 * Menu:
1037 * 対応オブジェクトへのジャンプ::
1038 * お絵描きツール起動::
1039 * メインファイルへのジャンプ::
1040 * 環境を単位としたジャンプ::
1041 * 最後の補完位置へのジャンプ::
1045 File: yatexj, Node: 対応オブジェクトへのジャンプ, Next: お絵描きツール起動, Prev: Cursor jump, Up: Cursor jump
1047 対応オブジェクトへのジャンプ
1048 ============================
1050 文書中のいろいろな場所で
1052 `[prefix] g'
1053 ... 対応するオブジェクトにジャンプ
1055 を押すことにより、カーソル位置のLaTeXコマンドに対応する場所にジャンプしま
1056 す。対応関係が存在すると解釈されるコマンドには以下のものがあります。
1058 * `\begin{}' ←→ `\end{}'
1059 * `%#BEGIN' ←→ `%#END'
1060 * 画像ファイルの取り込みマクロ → 対応するviewer/お絵かきツール起動
1061 * `\label{}' ←→ `\ref{}'
1062 * `\include(\input)' → 対応するファイル
1063 * `\bibitem{}' ←→ `\cite{}'
1065 `\begin{}' か `\end{}' の行で`[prefix] g'を押すことにより、対応する
1066 `end/begin'の行にジャンプします。もちろん対応するものがない場合はエラーに
1067 なります。またこれは、領域固定のための `%#BEGIN' と `%#END' のペアに対して
1068 も同様に動作します。なお、`label/ref'や`cite/bibitem'対応するものが別ファ
1069 イルにある時は、ジャンプ先となるファイルがオープンされていなければなりませ
1070 ん。*Note %#notation::. メインの .tex ファイルの `\include{chap1}' などに
1071 カーソルを合わせ、`[prefix] g' を押すと、`chap1.tex' にジャンプします。
1073 また、
1075 `[prefix] 4 g'
1076 ... 別ウィンドウで対応オブジェクトにジャンプ
1078 を押すと、対応するオブジェクトへのジャンプを別ウィンドウで行います。ただし、
1079 この機能は `begin/end', `%#BEGIN/%#END' 間のジャンプに対しては(意味がない
1080 と思われるので)機能しないので注意してください。
1084 File: yatexj, Node: お絵描きツール起動, Next: メインファイルへのジャンプ, Prev: 対応オブジェクトへのジャンプ, Up: Cursor jump
1086 お絵描きツール起動
1087 ==================
1089 上記の「画像ファイルの取り込みマクロ」とは、例えば `\epsfile{file=foo}' の
1090 ような挿絵取り込みコマンドのことで、この行にカーソルを合わせて`[prefix] g'
1091 を押すとその画像ファイルの元となったファイルを対応するお絵描きツールを起動
1092 してオープンします。起動するツールの判定は以下のようになされます。
1094 1. カレント行が変数 `YaTeX-processed-file-regexp-alist' に定義されている
1095 正規表現のいずれかとマッチしたら、ファイル名に相当する部分を \\(\\)か
1096 ら抜き出して覚えておく(何番目の\\(\\)かは変数の各リストの cdr 部に入
1097 れておく)。マッチしなければ何もしない。
1098 2. 行末に、変数 `YaTeX-file-processor-alist' に登録されているコマンドが
1099 「%コマンド」 のように書いてあれば強制的に「コマンド ファイル名.拡張
1100 子」を起動。
1101 3. なければ、変数 `YaTeX-file-processor-alist' の各リストのcdr部に入って
1102 いる拡張子を「ファイル名」の後ろに足したファイルが存在するか順次調べ
1103 て、存在した場合car部に入っているコマンドを起動する。
1104 4. 以上どれかにマッチしなければあきらめる。
1107 変数 `YaTeX-file-processor-alist' と変数 `YaTeX-file-processor-alist' の設
1108 定方法についてはそれぞれの変数について describe-variable して説明を読んで
1109 下さい。うまく設定すると、画像ファイルにかぎらず、任意の形式のファイルを任
1110 意のプロセッサで処理するコマンドを簡単に呼び出すことができます。
1114 File: yatexj, Node: メインファイルへのジャンプ, Next: 環境を単位としたジャンプ, Prev: お絵描きツール起動, Up: Cursor jump
1116 メインファイルへのジャンプ
1117 ==========================
1119 `chap1.tex'のようなサブファイルで、
1121 `[prefix] ^'
1122 ... メインファイルにジャンプ
1123 `[prefix] 4 ^'
1124 ... 別ウィンドウでメインファイルにジャンプ
1126 を押すと、メインファイルの編集バッファに切替えます。もし、メインファイルを
1127 オープンしていない場合は、カレントディレクトリから探して自動的にオープンし
1128 ます。
1132 File: yatexj, Node: 環境を単位としたジャンプ, Next: 最後の補完位置へのジャンプ, Prev: メインファイルへのジャンプ, Up: Cursor jump
1134 環境を単位としたジャンプ
1135 ========================
1137 さらに現在の環境を単位として機能するコマンドに以下のものがあります。
1139 `M-C-a'
1140 ... 環境の先頭(`\begin')へジャンプ
1141 `M-C-e'
1142 ... 環境の末尾(`\end')へジャンプ
1143 `M-C-@'
1144 ... 環境全体をマーク
1146 上記のコマンドは通常の`[prefix]'キーではなく`META'キーをプリフィクスとして
1147 機能するのでご注意下さい。
1151 File: yatexj, Node: 最後の補完位置へのジャンプ, Prev: 環境を単位としたジャンプ, Up: Cursor jump
1153 最後の補完位置へのジャンプ
1154 ==========================
1156 野鳥は補完入力した位置を常にレジスタ `3'に保存しています。入力途中で如何な
1157 るファイルの如何なる位置に行ったとしても、`C-x j 3'(`jump-to-register')を
1158 使って直ちに最後の補完入力位置に戻ることができます。
1162 File: yatexj, Node: Modifying/Deleting, Next: Filling, Prev: Cursor jump, Up: Top
1164 変更/削除
1165 *********
1167 既に入力されている LaTeX コマンドの変更/削除のために以下の機能が用意され
1168 ています。
1170 `[prefix] c'
1171 ... カーソル位置の LaTeX コマンドの変更
1172 `[prefix] k'
1173 ... カーソル位置の LaTeX コマンドの削除
1176 これらのコマンドは、コマンドを起動する場所によって動作を決定するので注意し
1177 て下さい。
1179 * Menu:
1181 * Changing LaTeX command:: LaTeX コマンドの変更
1182 * Killing LaTeX command:: LaTeX コマンドの削除
1186 File: yatexj, Node: Changing LaTeX command, Next: Killing LaTeX command, Prev: Modifying/Deleting, Up: Modifying/Deleting
1188 LaTeX コマンドの変更
1189 ====================
1191 変更したい LaTeX コマンドにカーソルを合わせて `[prefix] c' を押すとそのコ
1192 マンドを補完入力などを用いて手軽に変えることができます。`[prefix] c' で変
1193 更できるコマンドには以下のものがあります。
1195 * `begin/end' の環境名
1196 * section型コマンドのコマンド名
1197 * section型コマンドの引数
1198 * section型コマンドのオプションパラメータ([]で囲まれたもの)
1199 * large型コマンド
1200 * (イメージ補完で入力可能な)数式モード専用のmaketitle型コマンド
1202 変えたいsection型コマンドの引数がさらに LaTeX コマンドを含む場合は、その
1203 引数を囲む中括弧の上で `[prefix] c' を押すことで中のコマンドを変更対象判定
1204 から除外することができます。
1209 File: yatexj, Node: Killing LaTeX command, Prev: Changing LaTeX command, Up: Modifying/Deleting
1211 LaTeX コマンドの削除
1212 ====================
1214 `[prefix] k' は起動する位置により次のような動作を行います。
1217 起動位置 動作
1218 \begin, \endの行 `\begin\end'ペアの削除
1219 %#BEGIN, %#END の行 %#BEGIN,%#ENDペアの削除
1220 section型コマンドの上(中) section型コマンドの削除
1221 フォント指定括弧の上 フォント指定の削除
1222 括弧の上 対をなす括弧の削除
1225 `\begin, \end' および `%#BEGIN, %#END' を削除する場合、`\begin, \end' や
1226 `%#BEGIN, %#END' の存在する行はまるごと削除されるので、それらの一行に
1227 `\begin' などを二つ以上連ねて書かないように注意してください。上記のものは
1228 すべて本文を囲う「容器」を削除するように働きますが、universal-argument
1229 (`C-u') を打った後で`[prefix] k'をタイプすると、それぞれの「容器」に含まれ
1230 る「中身」も一気に削除します。以下の例を参考にして下さい。
1232 元のテキスト: [prefix] k C-u [prefix] k
1233 本文\footnote{脚注}です。 本文脚注です。 本文です。
1234 ↑(カーソル位置)
1238 File: yatexj, Node: Filling, Next: Includeonly, Prev: Modifying/Deleting, Up: Top
1240 桁揃え
1241 ******
1244 itemの桁揃え
1245 ============
1247 itemize 環境中にある`\item'の項目(文章)が複数行に渡る場合に、項目の先頭
1248 を桁揃えしたい場合には、
1251 `M-q'
1252 ... 桁揃え
1254 によって、その item のインデントの深さに応じて fill されます。なお、古い
1255 NTT jTeX を使用している場合には、Lisp 変数`NTT-jTeX'を`t'にセットして下さ
1256 い。
1258 このとき、変数`YaTeX-item-regexp'の値(標準では `"\\\\item"')を項目指定コ
1259 マンドの正規表現として検索に使用します。itemize 環境で、独自のコマンドを定
1260 義して項目を列挙している場合(例えば`\underlineitem')は、`~/.emacs' で次の
1261 ように指定して下さい。
1263 (setq YaTeX-item-regexp
1264 "\\(\\\\\\(sub\\)*item\\)\\|\\(\\\\underlineitem\\)")
1267 この変数の指定の仕方がよく分からない場合は、独自の項目列挙コマンドの名前を
1268 ``"\item"'で始まるものにして下さい(例えば"\itembf"')。
1270 野鳥の `M-q' では `\item' を環境に応じて以下のように「ハングインデント」し
1271 ます。
1273 itemize, enumerate環境:
1274 >\item[ほげほげ] 英語では、特に意味のない単語を `foo' であらわしま
1275 > すが、これの日本語版ともいえる単語が「ほげほげ」
1276 > です。
1277 description環境:
1278 > \item[へろへろ] 「ほげほげ」をでたらめが単語として使った時に、第
1279 > 2のでたらめな単語として「へろへろ」が使われることが多
1280 > いようです。
1283 パラグラフの桁揃え
1284 ==================
1286 itemize環境以外でのパラグラフの桁揃え(fill)は、基本的に他のモードと同じ
1287 ように機能しますが、verbatim環境や、tabular環境など桁揃えをすると悲惨な状
1288 況になるような環境中では機能しません。また、\verb で括ってあるものは決して
1289 行分割されません(変数 `YaTeX-verb-regexp' で制御) )。さらに、一時的にイン
1290 デントの深さを変えてある箇所では、そのインデントの先頭で`M-q'を押すことに
1291 より fill-prefix をいちいち変更しなくて桁揃えができます。
1296 File: yatexj, Node: Includeonly, Next: What column, Prev: Filling, Up: Top
1298 勝手にincludeonly
1299 *****************
1301 ファイルを分割して文章を入力している時には、メインファイル中に
1303 \includeonly{現在編集中のファイル名}
1305 のように書いておくことで、タイプセットの時間を節約できますが、ちょっと他の
1306 ファイルを手直ししたい時には
1308 \includeonly{ちょっと手直ししたいファイル名}
1311 と書き直さなければならず手間がかかります。野鳥では現在編集しているファイル
1312 名がメインファイルの`\includeonly'にない場合には自動的にこれを検出し、次の
1313 指示を仰ぎます。
1315 A)dd R)eplace %)comment?
1318 現在編集中のファイルを `\includeonly' のリストに加えたい時には`a' を、現在
1319 編集中のファイルだけを `\includeonly' にしたい時は`r'を、`\includeonly' の
1320 行をコメントアウトして無効化したい時には、`%'をそれぞれ押して下さい。
1324 File: yatexj, Node: What column, Next: Intelligent newline, Prev: Includeonly, Up: Top
1326 ここはどこ?
1327 ***********
1329 項目数の多い tabular などをたくさん書いていると下の方の行で、いま書いて
1330 いる桁がどこに対応するのかわからなくなってしまうことがあります。例えば、以
1331 下のような tabular において、
1333 \begin{tabular}{|c|c|c|c|c|c|c|c|}\hline
1334 氏名&所属&〒&住所&電話&FAX&帰省先&帰省先電話\\ \hline
1335 矢上二郎 & 6 & 223 & 横浜市港北区日吉 & xxx-yyy &
1336 zzz-www & トンガ & 9876-54321 \\
1337 日吉小僧 & 2 & \multicolumn{2}{c|}{教えない}
1338 &&&(???)
1339 \\ \hline
1340 \end{tabular}
1343 (???)の部分がどの項目なのかすぐに判断するのは難しいでしょう。こんな時は、
1345 `[prefix] &'
1346 ... 現在のカラム表示
1348 を押すとカーソル位置のカラムがどの項目に該当するかをミニバッファに表示しま
1349 す。tabular/array環境の第1行目を項目名の並びとみなして対応するものを探しま
1350 す。もし項目名として別のものを表示して欲しい場合は、行頭を`%'にしてダミー
1351 の項目並びを作っておくと良いでしょう。
1355 File: yatexj, Node: Intelligent newline, Next: Usepackage cheker, Prev: What column, Up: Top
1357 おまかせ改行
1358 ************
1360 tabular[*], array, itemize, enumerate, tabbing 環境をbegin型補完で入力し
1361 た時、または各環境内で
1363 `ESC RET'
1364 ... おまかせ改行
1367 を押すと、その環境に応じた行エントリを次の行に挿入します(begin型補完時に自
1368 動挿入されたエントリが不要な場合は undo によって消去できます)。例えば、
1369 tabular環境では、その環境のカラム数に対応した個数の `&' に加え、行末の
1370 `\\' を入れます。この時それ以前に `\hline' があればそれも付け加えます。環
1371 境とそれに応じて自動入力するものの対応は以下のようになります。
1373 * `tabular', `tabular*', `array'
1375 カラム数-1 だけの `&' と `\\'。必要に応じて `\hline'
1377 * `tabbing'
1379 一行目で定義している `\=' と同じ個数の `\>'。
1381 * `itemize', `enumerate', `description', `list'
1383 `\item' または `item[]'
1385 tabular 環境の例のように、本機能は各環境の一行目の内容を参考にして動作す
1386 るので、なるべく二行目以降で呼び出すようにしてください。
1388 もし、その他の環境、例えば `foo'、に対して`おまかせ改行'を動作させたい時
1389 は、`YaTeX-intelligent-newline-foo' という名前の関数を定義します。定義した
1390 関数は、現在の行に改行を挿入した直後の行頭の位置で呼ばれます。関数
1391 `YaTeX-indent-line' を呼ぶと現在の環境のネストに応じた深さにインデントされ
1392 るので、これを呼んでから何かを挿入するようなコードを書くとよいでしょう。
1393 `yatexenv.el'内の関数 `YaTeX-intelligent-newline-itemize' の定義などを参考
1394 にしてください。
1399 File: yatexj, Node: Usepackage cheker, Next: Changing mode of YaTeX, Prev: Intelligent newline, Up: Top
1401 先回りusepackage
1402 ****************
1404 begin型、section型、maketitle型、いずれかのLaTeX2eマクロを補完入力すると、
1405 そのマクロの利用に外部パッケージを必要とする場合、そのパッケージを本文中で
1406 `\usepackage{}' しているかどうかを調査し、もししていなければプリアンブルに
1407 対応するパッケージを引数にした `\usepackage' 文を(確認後に)挿入します。
1409 ただしこの機能が働くためには、パッケージ名とその中で定義されているマクロ
1410 群をalistの形式で変数 `YaTeX-package-alist-private' に設定しておく必要があ
1411 ります。
1415 File: yatexj, Node: Changing mode of YaTeX, Next: Online help, Prev: Usepackage cheker, Up: Top
1417 野鳥の動作モード切り替え
1418 ************************
1420 `[prefix] w'
1421 ... 野鳥動作モード切り替えメニュー
1423 で野鳥自身の動作を決定する以下のモードを切り替えます。
1425 * 修正モード
1426 * 野鳥数式モード
1428 修正モードは、開き括弧入力時の処理をコントロールし、修正モードONの時は開き
1429 括弧の入力は開き括弧のみの入力になり、修正モードOFFの時は開き括弧の入力だ
1430 けで閉じ括弧まで入力します。デフォルト(起動時)の設定は*OFF*です。
1432 野鳥数式モードは、変数 `YaTeX-auto-math-mode' が `nil' の時のみ有効で、
1433 このとき`;'や`:'を押した時(*Note Image completion::参照)に、どのようなイメー
1434 ジ補完を機能させるか、通常のキーとして機能させるかを手動で切り替えます。自
1435 動判定が遅いマシンでは`YaTeX-auto-math-mode' `nil'にセットし、野鳥数式モー
1436 ドを手動で切り替えると良いでしょう。
1441 File: yatexj, Node: Online help, Next: Inclusion hierarchy browser, Prev: Changing mode of YaTeX, Up: Top
1443 オンラインヘルプ
1444 ****************
1446 使おうとする LaTeX コマンドの用法がよく分からない時は、オンラインヘルプ
1447 をひきましょう。ヘルプに関するキーには以下のものがあります。
1449 `[prefix] ?'
1450 ... オンラインヘルプ
1451 `[prefix] /'
1452 ... オンラインapropos
1455 オンラインヘルプ
1456 ================
1458 「オンラインヘルプ」は、一般的な LaTeX コマンド(デフォルトでカーソル位置
1459 のコマンド)に対する説明を隣のバッファに表示します。この時参照されるヘルプ
1460 用ファイルには「グローバルヘルプ」と「プライベートヘルプ」の二種類があり、
1461 前者は LaTeX の標準コマンドの主なものの説明を含むファイルで、変数
1462 `YaTeX-help-file'の値で指定されます。このファイルは通常公共の場所(デフォル
1463 トで`$EMACSEXECPATH')に置かれ、誰もがその内容を更新できるように全員に書き
1464 込み権が与えられるべきものです。後者は、非標準もしくは個人的なマクロ定義に
1465 関する説明が書かれているファイルで、変数`YaTeX-help-file-private'の値で指
1466 定されます。こちらはユーザのホームディレクトリの下などに置かれます。
1469 オンラインapropos
1470 =================
1472 「オンラインapropos」は GNU Emacs の apropos と同様、ユーザが指定したキー
1473 ワードを説明文に含む項目すべてを隣のバッファに表示します。
1475 もし、調べようとしたLaTeXコマンドに対する説明がヘルプファイル中に見つか
1476 らなかった場合は、説明文の入力を求めてくるので、可能であれば参考書などを調
1477 べてそのコマンドの説明を入力してください。もし、なにか標準的なコマンドに対
1478 する説明を書いたならばぜひ私までその説明をお送り下さい。次回の配布に含めた
1479 いと思います。
1483 File: yatexj, Node: Inclusion hierarchy browser, Next: Cooperation with other packages, Prev: Online help, Up: Top
1485 インクルード構造ブラウザ
1486 ************************
1488 複数のファイルに分割しているドキュメントを書いている場合、
1490 `[prefix] d'
1491 ... インクルード構造ブラウズ
1493 を押すと、そのドキュメントの親ファイルを聞いて来ます。ここで全てのファイル
1494 の親となるファイル(デフォルトが示されているので大抵はRETのみ)を入力すると
1495 インクルードしている全てのファイルを解析し、インクルード状況を視覚的に表示
1496 します。このバッファでは以下のキー操作が有効です。
1498 `n'
1499 ... 次の行に移動し対応するファイルを隣のバッファに表示
1500 `p'
1501 ... 上の行に移動し対応するファイルを隣のバッファに表示
1502 `N'
1503 ... 同じインクルードレベルの次のファイルに移動
1504 `P'
1505 ... 同じインクルードレベルの前のファイルに移動
1506 `j'
1507 ... 次の行に移動
1508 `k'
1509 ... 上の行に移動
1510 `u'
1511 ... 一代親にあたるファイルに移動
1512 `.'
1513 ... カーソル位置のファイルを隣のバッファに表示
1514 `SPC'
1515 ... 隣のバッファの対応ファイルをスクロールアップ
1516 `DEL, b'
1517 ... 隣のバッファの対応ファイルをスクロールダウン
1518 `<'
1519 ... 隣のバッファの対応ファイルの先頭を表示
1520 `>'
1521 ... 隣のバッファの対応ファイルの末尾を表示
1522 `''
1523 ... (`<'や`>'の後で)元の表示位置に戻る
1524 `RET, g'
1525 ... カーソル位置のファイルを隣のバッファでオープン
1526 `mouse-2'
1527 ... RETと同じ(ウィンドウ使用時のみ)
1528 `o'
1529 ... 隣のウィンドウに移動
1530 `1'
1531 ... 他のウィンドウを消す
1532 `-'
1533 ... ブラウズウィンドウを小さくする
1534 `+'
1535 ... ブラウズウィンドウを大きくする
1536 `?'
1537 ... ヘルプ表示
1538 `q'
1539 ... 表示前の状態に戻る
1541 ただし、隣のウィンドウのファイルの内容を表示する機能に関しては、対応する
1542 ファイルをクローズしてしまうとうまく働きませんのでご注意ください。
1546 File: yatexj, Node: Cooperation with other packages, Next: Customizations, Prev: Inclusion hierarchy browser, Up: Top
1548 他パッケージとの連携
1549 ********************
1552 gmhist
1553 ======
1555 `gmhist.el'と`gmhist-mh.el' をロードしている場合、プレヴューコマンドの入
1556 力(`[prefix] tp]')、印刷コマンドの入力(`[prefix] tl')の時に独立したヒスト
1557 リを利用できます。それぞれのプロンプトで、`M-p' を押すと直前に利用したコマ
1558 ンド文字列をくり返し呼び出すことができます。
1561 min-out
1562 =======
1564 `min-out.el' (`outline-minor-mode') と野鳥を組み合わせて使うことももちろ
1565 ん可能です。設定の方法に関しては`yatexm-o.el'をご覧ください。
1569 File: yatexj, Node: Customizations, Next: Etc, Prev: Cooperation with other packages, Up: Top
1571 カスタマイズ
1572 ************
1574 野鳥の動作を制御する種々の変数を独自に設定することにより、補完入力を起動
1575 するキーアサインを変えたり、環境名の補完候補をさらに充実させることなどがで
1576 きます。
1578 * Menu:
1580 * Lisp variables:: lisp 変数
1581 * Add-in functions:: 付加関数(アドイン関数)
1585 File: yatexj, Node: Lisp variables, Next: Add-in functions, Prev: Customizations, Up: Customizations
1587 lisp 変数
1588 =========
1590 例えば prefix キーを `C-c' 以外のキーにしたい場合は、`YaTeX-prefix'に
1591 prefix キーにしたいシンボルを定義してください。さらに、「`C-c 英字'」とい
1592 うキーバインドは独自の関数が割り当ててあるので使いたくない。このような時は、
1593 `YaTeX-inhibit-prefix-letter' を `t' に設定することにより、`C-c 英字…'の
1594 バインドが全て、対応する`C-c C-英字…'に変わります(ただし、begin型 large型
1595 補完の大文字起動によるリジョン指定は可能なままです。これも無効にしたい場合
1596 は`t'ではなく 1 にセットして下さい。)。
1598 * Menu:
1600 * All customizable variables:: カスタマイズ変数一覧
1601 * Sample definitions:: カスタマイズ変数設定例
1602 * Hook variables:: hook変数
1603 * Hook file:: hook用ファイル
1607 File: yatexj, Node: All customizable variables, Next: Sample definitions, Prev: Lisp variables, Up: Lisp variables
1609 カスタマイズ変数一覧
1610 --------------------
1612 yatex-mode における次の変数がカスタマイズ可能です。`~/.emacs' で `setq'
1613 しておけば、そちらの定義が優先されます。括弧の中はデフォルト値です。実際に
1614 変数の値を変更する場合は `M-x describe-variable' で変数の詳細な説明を参照
1615 してください。
1617 -- Variable: YaTeX-prefix
1618 yatex-mode 中のプリフィクスキー (`\C-c')
1620 -- Variable: YaTeX-inhibit-prefix-letter
1621 prefix キーの直後のキーバインドで `英字' のものを `C-英字' に変更
1622 (`nil')
1624 -- Variable: YaTeX-fill-prefix
1625 本文を書く時の行頭に挿入する接頭辞すなわち fill-prefix (`""(nil)')
1627 -- Variable: YaTeX-user-completion-table
1628 学習したLaTeXコマンド保存ファイル名 (`"~/.yatexrc"')
1630 -- Variable: YaTeX-kanji-code
1631 文書を作成する時の漢字コードnil=既存のコードのまま 0=no-conversion
1632 1=Shift JIS, 2=JIS, 3=EUC, 4=UTF-8 (2 (MS-DOSでは1))
1634 -- Variable: tex-command
1635 LaTeXタイプセッタコマンド名 (`"platex"')
1638 -- Variable: dvi2-command
1639 プレヴューアコマンド名 (`"xdvi -geo +0+0 -s 4"')
1641 -- Variable: dviprint-command-format
1642 dviファイルの印刷に使われるコマンド式 (`"dvi2ps %f %t %s | lpr"')
1644 -- Variable: dviprint-from-format
1645 上の`%f'に相当する開始ページ指定書式、`%b' が開始ページ番号に変わる
1646 (`"-f %b"')
1648 -- Variable: dviprint-to-format
1649 `%t' に相当する終了ページ指定書式、`%e'が終了ページ番号に変わる (`"-t
1650 %e"')
1652 -- Variable: makeindex-command
1653 makeindexコマンド (`"makeindex"' (MS-DOSでは`"makeind"'))
1655 -- Variable: YaTeX-dvipdf-command
1656 dviをPDFに変換するコマンド (`"dvipdfmx"')
1658 -- Variable: YaTeX-need-nonstop
1659 `\nonstopmode{}'を自動的に付加するか (`nil')
1661 -- Variable: latex-warning-regexp
1662 latexコマンドの出力するウォーニング行の正規表現 (`"line.* [0-9]*"')
1664 -- Variable: latex-error-regexp
1665 同じくエラー行の正規表現 (`"l\\.[1-9][0-9]*"')
1667 -- Variable: latex-dos-emergency-message
1668 MS-DOS上で動作する latex コマンドが、エラーにより停止するとき出力する
1669 メッセージ (`"Emergency stop"')
1671 -- Variable: latex-message-kanji-code
1672 タイプセッタの出力するメッセージの漢字コード.タイプセットバッファの出
1673 力が化ける時は、これを設定する (2, Nemacsでのみ有効)
1675 -- Variable: NTT-jTeX
1676 古いNTT-jTeX使用時のようにインデントした行の先頭と前の行の(タイプセッ
1677 ト後の)字間が空いてしまうのを嫌う場合は`t'にする(`nil')
1679 -- Variable: YaTeX-item-regexp
1680 itemの桁揃えの時に用いる、itemの正規表現 (`"\\\\(sub\\)*item"')
1682 -- Variable: YaTeX-verb-regexp
1683 verbコマンドの正規表現。先頭の\\\\はつけない (`"verb\\*?\\|path"')
1685 -- Variable: YaTeX-nervous
1686 ローカル辞書を用いる時 `t' (`t')
1688 -- Variable: YaTeX-sectioning-regexp
1689 セクション区切り設定コマンドの正規表現
1690 (`"\\(part\\|chapter\\*?\\|\\(sub\\)*\\(section\\|paragraph\\)\\*?\\)\\b"')
1692 -- Variable: YaTeX-fill-inhibit-environments
1693 fill を抑止する環境名のリスト (`'("tabular" "tabular*" "array"
1694 "picture" "eqnarray" "eqnarray*" "equation" "math" "displaymath"
1695 "verbatim" "verbatim*")')
1697 -- Variable: YaTeX-uncomment-once
1698 領域uncommentで行頭の複数の`%'を全て削除するか (`nil')
1700 -- Variable: YaTeX-close-paren-always
1701 開き括弧の入力で常に閉じ括弧を入力する (`t')
1703 -- Variable: YaTeX-auto-math-mode
1704 数式モードの切り替えを自動的に行う (`t')
1706 -- Variable: YaTeX-math-key-list-private
1707 数式イメージ補完で用いる (プリフィクスキー . 対応補完テーブル) の
1708 alist (`nil')。補完テーブルの書き方については`yatexmth.el'を参照。
1710 -- Variable: YaTeX-default-pop-window-height
1711 1画面の時にタイプセットバッファを初めて作成する時の高さ。数値で行数、
1712 数字文字列でEmacsウィンドウに対する百分率 (10)
1714 -- Variable: YaTeX-help-file
1715 共用ヘルプファイル (`$doc-directory/../../site-lisp/YATEXHLP.jp')
1717 -- Variable: YaTeX-help-file-private
1718 個人用ヘルプファイル (`"~/YATEXHLP.jp"')
1720 -- Variable: YaTeX-no-begend-shortcut
1721 `[prefix] b ??' のショートカットを使わず、`[prefix] b' だけで補完入力
1722 に入る (`nil')
1724 -- Variable: YaTeX-hilit-pattern-adjustment-private
1725 正規表現とそれにマッチするものの論理的意味をシンボルであらわしたもの
1726 のリスト…のリスト。hilit19 を組み込んでいる時のみ有効。詳しくは
1727 `(assq 'yatex-mode hilit-patterns-alist)' した結果と、変数
1728 `YaTeX-hilit-pattern-adjustment-default' の値(と場合によっては
1729 hilit19 のドキュメント)を参照せよ。
1731 -- Variable: YaTeX-sectioning-level
1732 LaTeXのセクション単位宣言コマンドとその論理的高さのalist。
1734 -- Variable: YaTeX-hierarchy-ignore-heading-regexp
1735 Hierarchy バッファは通常ファイルヘッダとして、LaTeXのセクション宣言コ
1736 マンドの引数を検索し、それがなければコメント行を探すが、その際にヘッ
1737 ダとしては意味を持たないパターンをこの変数に設定する。デフォルトでは
1738 RCS ヘッダとモード指定行(-*- xxx -*-)が設定されている。
1740 -- Variable: YaTeX-skip-default-reader
1741 Non-nil に設定するとsection型コマンドの引数入力時、アドイン関数がなけ
1742 ればミニバッファでの読み込みをせずに入力を完了させる (`nil')
1744 -- Variable: YaTeX-create-file-prefix-g
1745 `\include'などで `prefix g'した時に、ジャンプ先が存在しないファイルで
1746 あってもオープンする (`nil')
1748 -- Variable: YaTeX-simple-messages
1749 各種補完時のメッセージ出力を簡素化する (`nil')
1751 -- Variable: YaTeX-hilit-sectioning-face
1752 色付けが有効な時の `\part' の色 (`'(yellow/dodgerblue
1753 yellow/slateblue)')。リストの第一要素は `hilit-background-mode' が
1754 `'light' の時の、第二要素は `'dark' の時の `\chapter' の色で、文字色/
1755 背景色 のように指定する。
1757 -- Variable: YaTeX-hilit-sectioning-attenuation-rate
1758 色付けが有効な時の、`\subparagraph' の色を `\chapter' の濃度の何%薄く
1759 したものにするか (`'(15 40)') `YaTeX-hilit-sectioning-face' の項参照。
1761 -- Variable: YaTeX-use-AMS-LaTeX
1762 AMS-LaTeX を使用する場合は `t' に設定する (`nil')
1764 -- Variable: YaTeX-use-LaTeX2e
1765 LaTeX2e を使用する場合は `t' に設定する (`t')
1767 -- Variable: YaTeX-template-file
1768 新規ファイル作成時に自動挿入するファイル名 (`~/work/template.tex')
1770 -- Variable: YaTeX-search-file-from-top-directory
1771 inputするファイルを探すときの基準ディレクトリをmainファイルのあるディ
1772 レクトリにするか (`t')
1773 -- Variable: YaTeX-use-font-lock
1774 ソースの色づけパッケージとして font-lock を利用するかどうか
1775 (`(featurep 'font-lock)')
1777 -- Variable: YaTeX-use-hilit19
1778 ソースの色づけパッケージとして hilit19 を利用するかどうか(`(featurep
1779 'hilit19)')
1781 -- Variable: YaTeX-use-italic-bold
1782 italic, boldフォントを野鳥が探すかどうか (Emacs20以降なら`t')
1783 font-lock利用時のみ有効。(`(featurep 'hilit19)'
1785 -- Variable: YaTeX-singlecmd-suffix
1786 全てのmaketitle型コマンドの補完入力直後に挿入する文字列。`"{}"' など
1787 がお勧め。
1789 -- Variable: YaTeX-package-alist-private
1790 LaTeX2eのパッケージ名とその中に含まれるマクロのリスト。適切に設定して
1791 おくと本文入力時にマクロを補完入力するとそのマクロに必要なパッケージ
1792 を usepackage するか自動的に検査してくれる。していなければ
1793 \usepackage を自動追加することもできる。リストは'((パッケージ名1 (補
1794 完タイプ マクロのリスト……) (補完タイプ マクロのリスト……)) (パッケー
1795 ジ名2 (補完タイプ マクロのリスト……) (補完タイプ マクロのリス
1796 ト……))………) という形式にする。補完タイプは `env, section,
1797 maketitle' のどれか。具体例は変数 `YaTeX-package-alist-default' の値
1798 参照。
1800 -- Variable: YaTeX-tabular-indentation
1801 tabular/array 環境で現在行の先頭位置が表の第Nカラムのときは標準インデ
1802 ント位置から N*YaTeX-tabular-indentation 桁下げたインデントにする。
1804 -- Variable: YaTeX-noindent-env-regexp
1805 別の環境内にあっても \begin{} が行頭から始まるべき環境名の正規表現。
1806 verbatim環境などを指定する。
1808 -- Variable: YaTeX-ref-default-label-string
1809 \ref{} のラベル補完でラベル未設定のものに自動的に生成するラベル名の書
1810 式。strftime(3)関数に似た日付ベースで指定する。利用できる書式は以下の
1811 とおり。%y -> 西暦下二桁, %b -> 月の英名, %m -> 月(1〜12) %d -> 日,
1812 %H -> 時, %M -> 分, %S -> 秒, %qx -> アルファベットで26進数化した
1813 yymmdd. %qX -> アルファベットで26進数化した HHMMSS. デフォルトは
1814 "%H%M%S_%d%b%y"
1816 -- Variable: YaTeX-ref-generate-label-function
1817 \ref{}のラベル名自動生成のときに使う関数のシンボル。デフォルトは標準
1818 の YaTeX::ref-generate-label 関数が割り当ててある。引数を2つ取る関数
1819 を定義して、この変数にセットするとその関数を呼んだ結果をデフォルトの
1820 ラベル名候補とする。設定例:
1821 (setq YaTeX-ref-generate-label-function 'my-yatex-generate-label)
1822 (defun my-yatex-generate-label (command value)
1823 (and (string= command "caption")
1824 (re-search-backward "\\\\begin{\\(figure\\|table\\)}" nil t)
1825 (setq command (match-string 1)))
1826 (let ((alist '(("chapter" . "chap")
1827 ("section" . "sec")
1828 ("subsection" . "subsec")
1829 ("figure" . "fig")
1830 ("table" . "tbl"))))
1831 (if (setq command (cdr (assoc command alist)))
1832 (concat command ":" value)
1833 (YaTeX::ref-generate-label nil nil))))
1837 File: yatexj, Node: Sample definitions, Next: Hook variables, Prev: All customizable variables, Up: Lisp variables
1839 カスタマイズ変数設定例
1840 ----------------------
1842 たとえば、prefix キーとして`ESC'を使用し、新たな補完候補を格納するファイ
1843 ルを、`~/src/emacs/yatexrc' にし、行頭の prefix をタブ文字一つに変えたいと
1844 きは、
1846 (setq YaTeX-prefix "\e"
1847 YaTeX-user-completion-table "~/src/emacs/yatexrc"
1848 YaTeX-fill-prefix " ")
1850 を `~/.emacs' に加えます。
1854 File: yatexj, Node: Hook variables, Next: Hook file, Prev: Sample definitions, Up: Lisp variables
1856 hook変数
1857 --------
1859 また、hook 変数 `yatex-mode-hook', `yatex-mode-load-hook' を用意していま
1860 す。すべての yatex-mode のバッファで作用させたいものは、`yatex-mode-hook'
1861 に記述し、`yatex.el' をロードする時だけ作用させたいものは
1862 `yatex-mode-load-hook' に記述します。例えば、`outline-minor-mode' を利用す
1863 る場合、それぞれのバッファで `outline-minor-mode' を有効にしたいので、
1864 `yatex-mode-hook' を次のように設定します。
1866 (setq yatex-mode-hook
1867 '(lambda () (outline-minor-mode t)))
1870 逆に、独自のキー定義を行いたい時などは、`yatex-mode-load-hook' を利用しま
1871 す。例えば、begin 型補完において、 document や、enumerate 以外の環境名も
1872 ショートカットキーで入れたいなどという時は、次のようにします。以下の例は、
1873 `[prefix] ba' で `\begin{abstract}', `\end{abstract}' を挿入します。
1875 (setq yatex-mode-load-hook
1876 '(lambda() (YaTeX-define-begend-key "ba" "abstract")))
1878 なお、新たなキーの定義には、関数 `YaTeX-define-key'
1879 `YaTeX-define-begend-key'を利用するようにしてください。
1883 File: yatexj, Node: Hook file, Prev: Hook variables, Up: Lisp variables
1885 hook用ファイル
1886 --------------
1888 変数 `yatex-mode-load-hook' で定義する内容が多い時は、`yatexhks.el'とい
1889 うファイルを作り、その中に野鳥関連の設定を書く事で、初期化の時に自動的にロー
1890 ドします。
1895 File: yatexj, Node: Add-in functions, Prev: Lisp variables, Up: Customizations
1897 付加関数(アドイン関数)
1898 ======================
1900 各種補完時に、環境名やコマンド名に応じたきめ細やかな補完入力機能を実現す
1901 るための関数を作成することができます。この関数の作成方法や、組み込み方法に
1902 関しては、`yatexadd.doc' をご覧ください。
1906 File: yatexj, Node: Etc, Next: Copying, Prev: Customizations, Up: Top
1908 その他
1909 ******
1911 野鳥の標準の LaTeX コマンドの辞書には、作者が頻繁に使うものしか登録され
1912 ていません。これは、補完候補に使いそうもないコマンドが存在して、補完したい
1913 コマンドを出すまでのストローク数を増やしてしまう事を防止するためです。標準
1914 辞書にないコマンドも、できるだけ補完入力方式を利用し、ユーザ辞書を充実させ
1915 ることで、あなたの LaTeX スタイルにあった野鳥へと育っていくことでしょう。
1919 File: yatexj, Node: Copying, Next: Concept Index, Prev: Etc, Up: Top
1921 取り扱い
1922 ********
1924 本プログラムはフリーソフトウェアです。本プログラムを使用して生じたいかな
1925 る結果に対しても作者は責任を負わないこととします。転載等に関しては制限いた
1926 しません。常識的に扱ってください。また、本プログラムに含まれるコードを利用
1927 すること、改造することも自由に行なって構いませんが、流用することにより契約
1928 締結の必要が生じる場合、私はいかなる契約も締結しません。具体的にはGPLへの
1929 サインはしませんので、GNUに寄贈するものを作っている場合私の作品から取り込
1930 んだコードを流用すると苦労するかもしれません。いかなるコード流用も拒否しま
1931 せんが契約締結は辞退します。
1933 苦情、希望、バグ報告、感想等は歓迎いたします。連絡は yuuji@yatex.org ま
1934 で(2004年1月現在)。継続的に使用してくださる方はメイリングリスト「fj野鳥の
1935 会」に是非加入してください。加入方法については本パッケージの `docs/qanda'
1936 ファイルの「その他」の章を御覧ください。
1938 仕様は、予告なく確実に(気分次第で)変更されます:-p。
1940 広瀬雄二
1944 File: yatexj, Node: Concept Index, Prev: Copying, Up: Top
1946 索引
1947 ****
1949 * Menu:
1951 * :: Greek letter completion. 4.
1952 * ;: Image completion. 4.
1953 * Σ[しくま]: Image completion. 4.
1954 * 括る[くくる]: Enclose section-type command. 4.
1955 * 括る[くくる]: large型補完. 22.
1956 * 引数[ひきすう]: 2個以上の引数をとる section型コマンド. 4.
1957 * 欧文[おうふん]: Accent mark completion. 4.
1958 * ;自身[;ししん]: Image completion. 32.
1959 * ∞[むけんたい]: Image completion. 4.
1960 * 矢印[やしるし]: Image completion. 4.
1961 * ブロック[ふろつく]: begin型補完. 81.
1962 * ヒストリ[ひすとり]: Cooperation with other packages. 8.
1963 * 桁揃え[けたそろえ]: Filling. 4.
1964 * やちょう[やちよう]: Intro. 4.
1965 * ジャンプ[しやんふ]: view-sectioning. 42.
1966 * &入力[&にゆうりよく]: Intelligent newline. 4.
1967 * 設定例[せつていれい]: Sample definitions. 4.
1968 * 随時補完[すいしほかん]: Arbitrary completion. 4.
1969 * 閉じ込める[としこめる]: begin型補完. 81.
1970 * 再帰補完[さいきほかん]: Recursive completion. 4.
1971 * ユーザ辞書[ゆうさししよ]: begin型補完. 71.
1972 * 論理階層[ろんりかいそう]: view-sectioning. 42.
1973 * ここはどこ?[ここはとこ?]: What column. 4.
1974 * お絵描きツール起動[おえかきつうるきとう]: お絵描きツール起動. 4.
1975 * 環境の先頭へ[かんきようのせんとうへ]: 環境を単位としたジャンプ. 7.
1976 * 環境の末尾へ[かんきようのまつひへ]: 環境を単位としたジャンプ. 7.
1977 * 環境をマーク[かんきようをまあく]: 環境を単位としたジャンプ. 7.
1978 * カスタマイズ[かすたまいす]: Customizations. 4.
1979 * キーアサイン[きいあさいん]: Customizations. 4.
1980 * 数式モード[すうしきもおと]: Image completion. 4.
1981 * インストール[いんすとおる]: Installation. 4.
1982 * タイプセッタ[たいふせつた]: Invocation. 4.
1983 * プレヴューア[ふれひゆうあ]: Invocation. 4.
1984 * アウトライン[あうとらいん]: view-sectioning. 4.
1985 * 引数の個数を変える[ひきすうのこすうをかえる]: 2個以上の引数をとる section型コマンド. 24.
1986 * アクセント記号補完[あくせんときこうほかん]: Accent mark completion. 4.
1987 * カスタマイズ変数一覧[かすたまいすへんすういちらん]: All customizable variables. 4.
1988 * 環境名の補完[かんきようめいのほかん]: begin型補完. 4.
1989 * エラー修正[えらあしゆうせい]: Calling typesetter. 4.
1990 * タイプセッタ起動[たいふせつたきとう]: Calling typesetter. 4.
1991 * タイプセットエラー[たいふせつとえらあ]: Calling typesetter. 4.
1992 * 環境名の変更[かんきようめいのへんこう]: Changing LaTeX command. 20.
1993 * モード切り替え[もうときりかえ]: Changing mode of YaTeX. 4.
1994 * タイプセッタの使い分け[たいふせつたのつかいわけ]: Changing typesetter. 12.
1995 * 起動するコマンドを変える[きとうするこまんとをかえる]: Changing typesetter. 7.
1996 * コメントアウト[こめんとあうと]: Commenting out. 4.
1997 * その他のコマンド制御[そのたのこまんとせいきよ]: Controlling which command to invoke. 4.
1998 * 他パッケージとの連携[たはつけえしとのれんけい]: Cooperation with other packages. 4.
1999 * コマンドヒストリ[こまんとひすとり]: Cooperation with other packages. 8.
2000 * カーソルジャンプ[かあそるしやんふ]: Cursor jump. 4.
2001 * %#記法自体の編集[%#きほうしたいのへんしゆう]: Editing %# notation. 4.
2002 * パラグラフの桁揃え[はらくらふのけたそろえ]: Filling. 47.
2003 * 領域決定規則[りよういきけつていきそく]: Fix region for typesetting. 25.
2004 * 長いファイルの編集[なかいふあいるのへんしゆう]: Fix region for typesetting. 34.
2005 * 固定領域のタイプセット[こていりよういきのたいふせつと]: Fix region for typesetting. 4.
2006 * ギリシャ文字補完[きりしやもしほかん]: Greek letter completion. 4.
2007 * イメージ補完[いめえしほかん]: Image completion. 4.
2008 * 数式記号イメージ補完[すうしききこういめえしほかん]: Image completion. 4.
2009 * 他のファイルの手直し[ほかのふあいるのてなおし]: Includeonly. 11.
2010 * インクルード構造[いんくるうとこうそう]: Inclusion hierarchy browser. 4.
2011 * おまかせ改行[おまかせかいきよう]: Intelligent newline. 4.
2012 * プリントアウト[ふりんとあうと]: Invocation. 4.
2013 * 環境の削除[かんきようのさくしよ]: Killing LaTeX command. 6.
2014 * ラベル自動生成[らへるしとうせいせい]: label-generation. 4.
2015 * フォント指定子[ふおんとしていし]: large型補完. 18.
2016 * 文字サイズ指定子[もしさいすしていし]: large型補完. 18.
2017 * ローカル辞書[ろおかるししよ]: Local dictionary. 4.
2018 * 変更/削除[へんこう/さくしよ]: Modifying/Deleting. 4.
2019 * グローバルヘルプ[くろおはるへるふ]: Online help. 16.
2020 * オンラインヘルプ[おんらいんへるふ]: Online help. 4.
2021 * キーワード検索[きいわあとけんさく]: Online help. 4.
2022 * プライベートヘルプ[ふらいへえとへるふ]: Online help. 16.
2023 * 入力ファイル分割[にゆうりよくふあいるふんかつ]: Splitting input files. 11.
2024 * セクション区切り一覧バッファ[せくしよんくきりいちらんはつふあ]: view-sectioning. 18.
2025 * セクション区切り[せくしよんくきり]: view-sectioning. 42.
2026 * 現在のカラム表示[けんさいのからむひようし]: What column. 23.
2027 * apropos: Online help. 4.
2028 * autoload: Installation. 4.
2029 * auto-mode-alist: Installation. 4.
2030 * %#BEGIN: Fix region for typesetting. 4.
2031 * begin型補完[beginかたほかん]: begin型補完. 4.
2032 * C-c: Invocation. 4.
2033 * Demacs: Intro. 4.
2034 * .emacs: Installation. 4.
2035 * %#END: Fix region for typesetting. 4.
2036 * end補完[endほかん]: end補完. 4.
2037 * ghostview: Splitting input files. 16.
2038 * gmhist: Cooperation with other packages. 8.
2039 * hook変数[hookへんすう]: Hook variables. 4.
2040 * 出力終了ページ[しゆつりよくしゆうりようへえし]: Print out. 9.
2041 * includeonly: Includeonly. 4.
2042 * Install: Installation. 4.
2043 * itemなどの桁揃え[itemなとのけたそろえ]: Filling. 8.
2044 * 出力開始ページ[しゆつりよくかいしへえし]: Print out. 9.
2045 * jlatex: Invocation. 4.
2046 * large型補完[largeかたほかん]: large型補完. 4.
2047 * LaTeX: Intro. 4.
2048 * leftarrow: Image completion. 4.
2049 * lpr format: lpr format. 4.
2050 * lprフォーマットの変更[lprふおおまつとのへんこう]: Editing %# notation. 18.
2051 * lprふぉーまっと[lprふおおまつと]: lpr format. 4.
2052 * lprフォーマット[lprふおおまつと]: lpr format. 4.
2053 * maketitle型補完[maketitleかたほかん]: maketitle型補完. 4.
2054 * M-C-@: 環境を単位としたジャンプ. 7.
2055 * M-C-a: 環境を単位としたジャンプ. 7.
2056 * M-C-e: 環境を単位としたジャンプ. 7.
2057 * min-out: Cooperation with other packages. 17.
2058 * M-q: Filling. 47.
2059 * Mule: Intro. 4.
2060 * 勝手にincludeonly[かつてにincludeonly]: Includeonly. 4.
2061 * NTT-jTeX[えぬていいていいしえいてつく]: Filling. 15.
2062 * platex: Invocation. 4.
2063 * prefix ,: Commenting out. 4.
2064 * prefix .: Commenting out. 4.
2065 * prefix <: Commenting out. 4.
2066 * prefix >: Commenting out. 4.
2067 * prefix /: Online help. 4.
2068 * prefix ?: Online help. 4.
2069 * prefix &: What column. 4.
2070 * prefix a: Accent mark completion. 4.
2071 * prefix b: begin型補完. 4.
2072 * prefix c: Modifying/Deleting. 4.
2073 * prefix d: Inclusion hierarchy browser. 4.
2074 * prefix e: end補完. 4.
2075 * prefix g: Cursor jump. 4.
2076 * prefix i: Filling. 8.
2077 * prefix k: Modifying/Deleting. 4.
2078 * prefix key: Invocation. 4.
2079 * prefix l: large型補完. 4.
2080 * prefix m: maketitle型補完. 4.
2081 * prefix s: section型補完. 4.
2082 * prefix SPC: Arbitrary completion. 4.
2083 * prefix w: Changing mode of YaTeX. 4.
2084 * prefixキー変更[prefixきいへんこう]: Lisp variables. 4.
2085 * ページ確認省略lpr起動[へえしかくにんしようりやくlprきとう]: Print out. 12.
2086 * section型補完[sectionかたほかん]: section型補完. 4.
2087 * 複雑なtabular[ふくさつなtabular]: What column. 4.
2088 * 先回りusepackage[さきまわり]: Usepackage cheker. 4.
2089 * YaTeX-help-file: Online help. 16.
2090 * YaTeX-help-file-private: Online help. 16.
2091 * YaTeX-item-regexp: Filling. 20.
2092 * YaTeX-math-sign-alist-private: Image completion. 57.
2093 * yatex-mode-hook: Hook variables. 4.
2094 * yatex-mode-load-hook: Hook variables. 4.
2095 * YaTeX-nervous: Local dictionary. 22.
2096 * .yatexrc: Local dictionary. 4.
2101 Tag table:
2102 Node: Top149
2103 Node: Intro1203
2104 Node: Terminology1506
2105 Node: Main features2141
2106 Node: Installation3174
2107 Node: Invocation4392
2108 Node: Calling typesetter5211
2109 Node: Calling previewer6448
2110 Node: Print out6764
2111 Node: %#notation7030
2112 Node: Changing typesetter7458
2113 Node: Splitting input files7716
2114 Node: Fix region for typesetting8668
2115 Node: lpr format9569
2116 Node: Controlling which command to invoke10378
2117 Node: Editing %# notation10779
2118 Node: Completion11236
2119 Node: begin型補完11709
2120 Node: section型補完14293
2121 Node: 2個以上の引数をとる section型コマンド15388
2122 Node: Enclose section-type command16206
2123 Node: Recursive completion16443
2124 Node: view-sectioning16749
2125 Node: label-generation17945
2126 Node: large型補完18294
2127 Node: maketitle型補完18874
2128 Node: Arbitrary completion19173
2129 Node: end補完19486
2130 Node: Accent mark completion19828
2131 Node: Image completion20253
2132 Node: Greek letter completion22070
2133 Node: Local dictionary22530
2134 Node: Commenting out23135
2135 Node: Cursor jump24294
2136 Node: 対応オブジェクトへのジャンプ24531
2137 Node: お絵描きツール起動25519
2138 Node: メインファイルへのジャンプ26439
2139 Node: 環境を単位としたジャンプ26775
2140 Node: 最後の補完位置へのジャンプ27132
2141 Node: Modifying/Deleting27369
2142 Node: Changing LaTeX command27775
2143 Node: Killing LaTeX command28326
2144 Node: Filling29197
2145 Node: Includeonly30526
2146 Node: What column31087
2147 Node: Intelligent newline31866
2148 Node: Usepackage cheker32899
2149 Node: Changing mode of YaTeX33325
2150 Node: Online help33901
2151 Node: Inclusion hierarchy browser34877
2152 Node: Cooperation with other packages36155
2153 Node: Customizations36610
2154 Node: Lisp variables36907
2155 Node: All customizable variables37514
2156 Node: Sample definitions44815
2157 Node: Hook variables45249
2158 Node: Hook file46143
2159 Node: Add-in functions46349
2160 Node: Etc46576
2161 Node: Copying46860
2162 Node: Concept Index47491
2164 End tag table