yatex

view docs/yatexj.tex @ 57:18f4939986e6

(j)LaTeX2e supported yatex19.el fixed a lot
author yuuji
date Sat, 02 Dec 1995 18:35:28 +0000
parents a9653fbd1c1c
children 3a7c0c2bf16d
line source
1 \def\lang{jp} % -*- texinfo -*- for Texinfo V.3.1
2 \input texinfo
3 @setfilename yatexj
4 @settitle Yet Another tex-mode for Emacs
6 @iftex
7 @c @syncodeindex fn cp
8 @syncodeindex vr cp
9 @end iftex
11 @titlepage
12 @sp 10
13 @center
14 @subtitle Yet Another tex-mode for emacs
15 @title 『野鳥』
16 @subtitle // YaTeX //
17 @author @copyright{} 1991-1994 by HIROSE, Yuuji [yuuji@@ae.keio.ac.jp]
18 @end titlepage
20 @node Top, Intro, (dir), (dir)
21 @comment node-name, next, previous, up
23 @menu
24 * Intro:: はじめに
25 * Termnology:: マニュアル参照上の注意
26 * Main features:: 主な機能
27 * Installation:: インストール
28 * Invocation:: プロセス起動
29 * %#notation :: %#記法
30 * Completion:: 補完入力
31 * Local dictionary:: ローカル辞書
32 * Commenting out:: コメントアウト
33 * Cursor jump:: カーソルジャンプ
34 * Modifying/Deleting:: LaTeXコマンドの変更/削除
35 * Filling:: 桁揃え
36 * Includeonly:: 勝手に includeonly
37 * What column:: カラム位置ガイド
38 * Intelligent newline:: おまかせ改行
39 * Changing mode of YaTeX:: 野鳥動作モード変更
40 * Online help:: LaTeXオンラインヘルプ
41 * Cooperation with other packages:: 他パッケージとの連携
42 * Customizations:: カスタマイズ
43 * Etc:: その他
44 * Copying:: 取り扱い
45 * Concept Index:: 索引
47 --- The Detailed Node Listing ---
49 latexコマンド起動
51 * Calling typesetter:: タイプセッタ起動
52 * Print out:: プリントアウト用コマンドの起動
54 %#記法
56 * Changing typesetter:: タイプセット用コマンドの変更
57 * Splitting input files:: 入力ファイル分割
58 * Fix region for typesetting:: 領域の固定
59 * lpr format:: プリントアウトコマンド用フォーマット
60 * Editing %# notation:: %#記法の編集
62 補完入力
64 * begin型補完::
65 * section型補完::
66 * large型補完::
67 * maketitle型補完::
68 * Arbitrary completion:: 随時補完
69 * end補完::
70 * Accent mark completion:: アクセント記号補完
71 * Image completion:: 数式記号イメージ補完
72 * Greek letter completion:: ギリシャ文字補完
74 section型補完
76 * 2個以上の引数をとる section型コマンド::
77 * Enclose region-type command::
78 * Recursive completion:: 再帰補完
79 * view-sectioning:: セクション区切りのアウトライン表示
81 変更/削除
83 * Changing LaTeX command:: La@TeX{} コマンドの変更
84 * Killing LaTeX command:: La@TeX{} コマンドの削除
86 カスタマイズ
88 * Lisp variables:: lisp 変数
89 * Add-in functions:: 付加関数(アドイン関数)
91 lisp 変数
93 * All customizable variables:: カスタマイズ変数一覧
94 * Sample definitions:: カスタマイズ変数設定例
95 * Hook variables:: hook変数
96 * Hook file:: hook用ファイル
97 @end menu
99 @node Intro, Termnology, Top, Top
100 @comment node-name, next, previous, up
101 @chapter はじめに
102 @cindex Demacs
103 @cindex Mule
104 @cindex LaTeX
105 @cindex やちょう[やちよう]
107 野鳥は、GNU Emacs で La@TeX{} 用の文書を作成する時に jLa@TeX{} などの
108 タイプセットコマンドや、プレヴューアの起動を Emacs 編集画面中から
109 行えるようにすると共に、拡張性の高い種々の補完機能によりソーステキ
110 ストの編集を支援します。さらに La@TeX{} コマンドのオンラインヘルプに
111 よりマニュアルを調べる手間を軽減します。
113 English manual @xref{Top, , , yatexe,YaTeX English info}
115 @node Termnology, Main features, Intro, Top
116 @comment node-name, next, previous, up
117 @chapter 本マニュアル参照上の注意
119 本マニュアルでは以下の表記を用います。
121 @itemize @bullet
122 @item
123 begin型コマンド
125 @code{\begin@{環境@} 〜 \end@{環境@}}という形式のLaTeXコマンドを指します。
126 begin型コマンドを補完入力することをbegin型補完と呼びます。
128 @item
129 section型コマンド
131 @code{\section@{タイトル@}}や@code{\mbox@{内容@}}のように
132 引数を取るLaTeXコマンドを指します。
134 @item
135 maketitle型コマンド
137 @code{\maketitle}や@code{\tableofcontents}のように引数を取らないLaTeXコマ
138 ンドを指します。
140 @item
141 large型コマンド
143 @code{@{\large ...@}} や @code{@{\tt ...@}} のようなフォント/サイズ指定子
144 を指します。
146 @item @kbd{[prefix]}
148 野鳥の機能を呼び出すためのプリフィクスキー。デフォルトでは@kbd{C-c}に割り
149 当てられているので、特に変更していない場合本マニュアルの @kbd{[prefix]} と
150 いう表記は、@kbd{C-c} と読み換えてください。
151 @end itemize
153 @node Main features, Installation, Termnology, Top
154 @comment node-name, next, previous, up
155 @chapter 主な機能
157 @itemize @bullet
158 @item タイプセッタやプレヴューアなどの編集画面からの起動(@kbd{C-c t})
159 @item カーソル位置によらない固定リジョンの部分タイプセット
160 @item \includeonlyのワンタッチ更新
161 @item エラー箇所への自動ジャンプ(@kbd{C-c '})
162 @item @code{\begin@{@}, \end@{@}, \section...} などの La@TeX{}
163 コマンドの補完入力
164 (@kbd{C-c b}, @kbd{C-c s}, @kbd{C-c l}, @kbd{C-c m})
165 @item 既に入力したテキストを環境やコマンド引数の中に取り込む括り補完
166 (@kbd{C-u} +通常補完キー)
167 @item セクション区切り入力時の文書構造アウトライン表示
168 @item 補完辞書の学習
169 @item La@TeX{} の環境やコマンドに応じたガイド付き引数入力
170 @item 野鳥にないガイド付き引数入力関数の自動生成(@file{yatexgen.el})
171 @item La@TeX{} コマンドの削除/変更(@kbd{C-c k}, @kbd{C-c c})
172 @item ファイル間、@code{\begin}<->@code{\end}間、
173 @code{\ref}<->@code{\label}間、
174 @code{\cite}<->@code{\bibitem}ジャンプ(@kbd{C-c g})
175 @item 一括コメントアウト/アンコメントアウト
176 (@kbd{C-c >}, @kbd{C-c <}, @kbd{C-c ,}, @kbd{C-c .})
177 @item アクセント記号/数式環境用コマンド/ギリシャ文字の入力支援
178 (@kbd{C-c a}, @kbd{;}, @kbd{/})
179 @item tabular/array環境のカラム位置ガイド
180 @item 標準的 La@TeX{} コマンドのオンラインヘルプ(@kbd{C-c ?}, @kbd{C-c /})
181 @item ドキュメントのインクルード構造の視覚的表示とバッファ切り替え
182 (@kbd{C-c d})
183 @end itemize
185 @node Installation, Invocation, Main features, Top
186 @comment node-name, next, previous, up
187 @chapter 起動法
188 @cindex Install
189 @cindex インストール[いんすとおる]
190 @cindex .emacs
191 @cindex auto-mode-alist
192 @cindex autoload
193 @section 野鳥起動のための設定
195 ~/.emacsに下の2項目を加えます。
197 @lisp
198 (setq auto-mode-alist
199 (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
200 (autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
201 @end lisp
203 次に野鳥の emacs-lisp ファイル群を置くディレクトリを load-path に加えます。
204 たとえば、 @file{~/src/emacs/yatex}に置くのであれば、
206 @lisp
207 (setq load-path (cons (expand-file-name "~/src/emacs/yatex") load-path))
208 @end lisp
210 @noindent
211 などとします。
213 以上の設定により、拡張子が .tex であるファイルを編集すると自動的に野鳥が
214 ロードされます。野鳥が正常に起動できたときはモードラインの表示が「やてふ」
215 に変わります。
217 @section タイプセッタ/プレヴューア環境の設定
219 利用する外部プログラムに関する以下の変数を確認し、必要なら正しい値に変更
220 します。
221 @table @code
222 @item tex-command
223 @dots{} 起動するタイプセッタのコマンド名
224 @item dvi2-command
225 @dots{} 起動するプレヴューアのコマンド名
226 @item NTT-jTeX
227 @dots{} NTT jTeX を使用するなら t
228 @item YaTeX-kanji-code
229 @dots{} 文書を作成する時の漢字コード
230 @item dviprint-command-format
231 @dots{} ファイルの印刷に使われるコマンド列の書式
232 @item makeindex-command
233 @dots{} makeindexコマンド
234 @end table
236 これらを変更する場合は、やはり@file{~/.emacs}にて、たとえば
237 @lisp
238 (setq tex-command "bigjlatex")
239 @end lisp
240 のようにしてください。どのような値をセットすれば良いかについては、
241 @ref{All customizable variables}を参照してください。
244 @node Invocation, %#notation , Installation, Top
245 @comment node-name, next, previous, up
246 @chapter latexコマンド起動
247 @cindex prefix key
248 @cindex C-c
249 @cindex タイプセッタ[たいふせつた]
250 @cindex プレヴューア[ふれひゆうあ]
251 @cindex jlatex
252 @cindex プリントアウト[ふりんとあうと]
254 LaTeXソースの編集中、次のキー入力により、jlatex などのタイプセットプログラ
255 ム(以後タイプセッタと呼ぶ)、プレヴューアなどの起動ができます。
257 @table @kbd
258 @item [prefix] t j
259 @dots{} タイプセッタ(jlatex)起動
260 @item [prefix] t r
261 @dots{} タイプセッタ起動(領域指定)
262 @item [prefix] t k
263 @dots{} 動作中のタイプセッタの停止
264 @item [prefix] t b
265 @dots{} jbibtex起動
266 @item [prefix] t p
267 @dots{} プレヴューア起動
268 @item [prefix] t l
269 @dots{} lpr(プリントアウト用)コマンド起動
270 @end table
272 @menu
273 * Calling typesetter:: タイプセッタ起動
274 * Print out:: プリントアウト用コマンドの起動
275 @end menu
277 @node Calling typesetter, Print out, Invocation, Invocation
278 @comment node-name, next, previous, up
279 @section タイプセッタ起動
280 @cindex タイプセッタ起動
281 @cindex タイプセットエラー[たいふせつとえらあ]
282 @cindex エラー修正[えらあしゆうせい]
284 タイプセッタを起動すると、編集ウィンドウが2つに分割され、片方のウィンド
285 ウにタイプセット画面が表示されます。出力されるメッセージと連動しタイプセッ
286 トバッファは自動的にスクロールします。もし、途中でエラーが起こって止まって
287 しまった場合にはタイプセットバッファに移り、(@kbd{C-x o}) タイプセッタの出
288 している ? プロンプトに対して、@kbd{x} (処理の中断)などの指示を送ることが
289 できます。エラーを修正する場合は、
291 @table @kbd
292 @item [prefix] '
293 @itemx (prefix+アポストロフィ)
294 @dots{} 直前のエラー発生行へジャンプ
295 @end table
297 を入力することにより、タイプセッタがエラーを発生した行に移ることができます。
298 また、タイプセッタの出力する overfull hbox などのウォーニング行にも対応し
299 ていますので、順次 @kbd{[prefix] '} を押すことにより、一つ前のウォーニング
300 発生行にジャンプしていきます。
302 もし、気になるエラー行があった場合は、タイプセットバッファで、エ
303 ラーの表示されている行にカーソルを合わせスペースキーを押すと La@TeX{}
304 ソースの対応する行にジャンプします。
306 @subsection 領域タイプセット
308 ポイントとマークの間、あるいはテキスト中に埋め込んだ @code{%#BEGIN} と
309 @code{%#END}の間の領域(@ref{%#記法})だけを切り取ってタイプセットすることが
310 できます。この場合の documentstyle は、単一ファイルの La@TeX{} ソースの編
311 集時にはそのファイルの documentstyle が、別ファイルから include している場
312 合にはメインファイルの documentstyle が自動的に選択されます。指定領域は、
313 メインファイルのあるディレクトリの@file{texput.tex}という臨時ファイルに出
314 力されますので、上書きには注意してください。
316 @node Print out, , Calling typesetter, Invocation
317 @comment node-name, next, previous, up
318 @section プリントアウト
320 @kbd{[prefix] t l}を押してプリントアウトを指示すると、出力開始/終了ペー
321 ジを聞いてくるので、それぞれに答えます。これを省略したい時は、
322 universal-argument をつけ、
324 @cindex 出力開始ページ[しゆつりよくかいしへえし]
325 @cindex 出力終了ページ[しゆつりよくしゆうりようへえし]
327 @table @kbd
328 @item C-u [prefix] t l
329 @dots{} ページ確認省略lpr起動
330 @end table
331 @cindex ページ確認省略lpr起動[へえしかくにんしようりやくlprきとう]
333 @noindent
334 のように起動してください。
336 @node %#notation , Completion, Invocation, Top
337 @comment node-name, next, previous, up
338 @chapter %#記法
340 本文中に@code{%#}ではじまるキーワードを埋め込むことでタイプセッタ起動等
341 の制御をすることができます。
343 @menu
344 * Changing typesetter:: タイプセット用コマンドの変更
345 * Splitting input files:: 入力ファイル分割
346 * Fix region for typesetting:: 領域の固定
347 * lpr format:: プリントアウトコマンド用フォーマット
348 * Editing %# notation:: %#記法の編集
349 @end menu
351 @node Changing typesetter, Splitting input files, %#notation , %#notation
352 @comment node-name, next, previous, up
353 @section タイプセット用コマンド変更
355 起動するコマンドを変えたい時は本文中に次のような行を書きます。
357 @cindex 起動するコマンドを変える[きとうするこまんとをかえる]
359 @example
360 %#!jlatex-ntt
361 @end example
363 NTT jTeX と、ASCII jTeX を使い分けたいような場合に便利でしょう。
365 @cindex タイプセッタの使い分け[たいふせつたのつかいわけ]
367 @node Splitting input files, Fix region for typesetting, Changing typesetter, %#notation
368 @comment node-name, next, previous, up
369 @section 入力ファイル分割
371 また、章毎に別ファイルの .tex を作成している場合で、@file{main.tex}から
372 @file{sub.tex}を @code{\include}しているような時は、@file{sub.tex}の任意の
373 位置に次のような行を埋め込みます。
375 @example
376 %#!jlatex main.tex
377 @end example
379 @cindex 入力ファイル分割[にゆうりよくふあいるふんかつ]
381 上の例のようにコマンド名だけでなく引数も書いた場合には、全てをそのまま
382 shell に渡すので次のように書けば、ghostview などをプレヴューアに使う時に便
383 利です。
385 @cindex ghostview
387 @example
388 %#!jlatex main ; dvi2ps main.dvi > main
389 @end example
391 なお、この行の最後の単語のピリオド以前を「メインファイル」のベース
392 ネームであると仮定します(上の2つの場合どちらも@file{main})。
394 @kbd{[prefix] g} (@ref{Cursor jump}参照) での
395 ファイル間ジャンプを有効に機能させるため、入力ファイル分割時には次のことに
396 注意して下さい。
398 @enumerate
399 @item
400 サブディレクトリを作って、その中にサブファイルを置くことはできるが
401 サブディレクトリのサブディレクトリには置けない。
402 @item
403 メインファイルからサブディレクトリ内のファイルを include
404 する時には、相対パス指定を用いて、
405 @code{\include{chap1/sub}}のように記述。
406 @item
407 メインファイルが一つ上のディレクトリにある場合も、サブファイルには
408 %#!jlatex main.tex のように記述する(../mainではない)。
409 @end enumerate
413 @node Fix region for typesetting, lpr format, Splitting input files, %#notation
414 @comment node-name, next, previous, up
415 @section 領域の固定
416 @cindex 固定領域のタイプセット[こていりよういきのたいふせつと]
417 @cindex %#BEGIN
418 @cindex %#END
420 @kbd{[prefix] tr} の領域指定のタイプセットでは、とくに指定のないかぎり、
421 @kbd{C-SPC}でマークした位置と、ポイント(カーソル位置)の間を領域とみなしま
422 すが、必ず決まった領域をタイプセットしたい場合は、その領域を
424 @example
425 %#BEGIN
426 <渡したい領域>
427 %#END
428 @end example
430 @noindent
431 のように@code{%#BEGIN}と@code{%#END}で囲み、カーソルを「@code{%#BEGIN}以降」
432 に置いてください。この時の領域決定規則をまとめると次のようになります。
435 @enumerate
436 @item
437 カーソル位置よりバッファの先頭方向に@code{%#BEGIN}というキーワードが
438 ある場合
440 @enumerate
441 @item
442 @code{%#BEGIN}よりバッファの末尾方向に@code{%#END}というキーワードが見つかっ
443 た場合。
444 @result{}@code{%#BEGIN} から、その @code{%#END} のある位置まで。
445 @item
446 @code{%#END} が見つからなかった場合。
447 @result{}バッファの最後尾まで。
448 @end enumerate
449 @cindex 領域決定規則[りよういきけつていきそく]
451 @item
452 カーソル位置よりバッファの先頭方向に @code{%#BEGIN} というキーワードが
453 見つからなかった場合。
454 @result{}マーク(@kbd{C-SPC}位置)とポイント(カーソル位置)の間の領域。
455 @end enumerate
457 tabular 環境を何度も試行錯誤しているような場合は、@code{\begin}の前の行
458 に @code{%#BEGIN} と書き、@code{\end} の次の行に @code{%#END} と書いておく
459 と簡単に作表結果をテストすることができます。また、長い .tex ファイルの後半
460 に @code{%#BEGIN} を書いておけば、前半の部分は無視できます。このBEGINとEND
461 の消し忘れには十分ご注意下さい。
462 @cindex 長いファイルの編集[なかいふあいるのへんしゆう]
464 @node Require, lpr format, Fix region for typesetting, %#notation
465 @comment node-name, next, previous, up
467 @node lpr format, Editing %# notation, Fix region for typesetting, %#notation
468 @comment node-name, next, previous, up
469 @section lprフォーマット
470 @cindex lprふぉーまっと[lprふおおまつと]
471 @cindex lprフォーマット[lprふおおまつと]
472 @cindex lpr format
474 まず、プリントアウト用コマンド列のフォーマットについて説明します。
475 コマンド列フォーマットは、3つの Lisp 変数によって表現されます。デ
476 フォルトの dvi2ps 用のフォーマットを例に説明します。
478 @table @code
479 @item (1)dviprint-command-format
480 @code{"dvi2ps %f %t %s | lpr"}
482 @item (2)dviprint-from-format
483 @code{"-f %b"}
485 @item (3)dviprint-to-format
486 @code{"-t %e"}
487 @end table
489 実際にプリントアウトする時は、(1)中の %s がファイル名に置き換えられ、%f が
490 (2)の内容、%t が(3)の内容に置き換えられます。その際に(2)の文字列中の %b は
491 「出力開始ページ」、(3)の文字列中の %e は「出力終了ページ」に置き換えられ
492 ます。もし、ページを指定しない時には、%f, %t 両方とも無視されます。
494 この、dviprint-command-format を臨時に変えたい時は、La@TeX{} の
495 ソーステキスト中の任意の場所に、
497 @example
498 %#LPR dvi2ps %f %t %s | 4up -page 4 | texfix | lpr -Plp2
499 @end example
501 @noindent
502 のように書いて下さい。プリントアウトするページ範囲をいちいち聞かせないよう
503 にする時に
505 @example
506 %#LPR dvi2ps %s | lpr
507 @end example
509 @noindent
510 などとするのも便利かもしれません。
512 @node Editing %# notation, , lpr format, %#notation
513 @comment node-name, next, previous, up
514 @section %#記法自体の編集
515 @cindex %#きほうじたいのへんしゅう[%#きほうしたいのへんしゆう]
517 以上のような@code{%#}で始まる各種制御記法を編集するためには
519 @table @kbd
520 @item [prefix] %
521 @dots{} @code{%#}@var{記法編集メニュー}
522 @end table
524 @noindent
525 を押します。
527 @example
528 !)Edit-%#! B)EGIN-END-region L)Edit-%#LPR
529 @end example
531 @noindent
532 というメニューが出て来るので、@code{%#!}に続くコマンドを変更したい時には
533 @kbd{!}を、@code{%#LPR}で lpr フォーマットを変えたい時は@kbd{l}を、あらか
534 じめ設定したリジョンを @code{%#BEGIN} 〜 @code{%#END} で括りたい時は、
535 @kbd{b}を押します。@kbd{b}を選んだ時には、それまでバッファ中に置かれていた
536 @code{%#BEGIN}, @code{%#END} が自動的に消去されます。
537 @cindex lprフォーマットの変更[lprふおおまつとのへんこう]
539 @node Completion, Local dictionary, %#notation , Top
540 @comment node-name, next, previous, up
541 @chapter 補完入力
543 La@TeX{} での環境名などは、野鳥の補完機能を利用して能率的に入力すること
544 ができます。
546 @menu
547 * begin型補完::
548 * section型補完::
549 * large型補完::
550 * maketitle型補完::
551 * Arbitrary completion:: 随時補完
552 * end補完::
553 * Accent mark completion:: アクセント記号補完
554 * Image completion:: 数式記号イメージ補完
555 * Greek letter completion:: ギリシャ文字補完
556 @end menu
558 @node begin型補完, section型補完, Completion, Completion
559 @comment node-name, next, previous, up
560 @section begin型補完
561 @cindex begin型補完[beginかたほかん]
562 @cindex 環境名の補完[かんきようめいのほかん]
563 @cindex prefix b
565 @code{\begin@{env@}...\end@{env@}}の様な形式の入力の補完をbegin型補完と
566 呼ぶことにします。begin 型補完は、
568 @table @kbd
569 @item [prefix] b
570 @dots{} begin 型補完開始(標準では @kbd{C-c b})
571 @end table
573 @noindent
574 で始まります。頻繁に用いられる次の La@TeX{} 環境の補完は、[prefix] @kbd{b}
575 に続く次の1文字を入力するだけで、@code{\begin@{xxx@}...\end@{xxx@}}を完成
576 させます。
578 @table @kbd
579 @item [prefix] b c
580 @dots{} @code{\begin@{center@}...\end@{center@}}
581 @item [prefix] b d
582 @dots{} @code{\begin@{document@}...\end@{document@}}
583 @item [prefix] b D
584 @dots{} @code{\begin@{description@}...\end@{description@}}
585 @item [prefix] b e
586 @dots{} @code{\begin@{enumerate@}...\end@{enumerate@}}
587 @item [prefix] b E
588 @dots{} @code{\begin@{equation@}...\end@{equation@}}
589 @item [prefix] b i
590 @dots{} @code{\begin@{itemize@}...\end@{itemize@}}
591 @item [prefix] b l
592 @dots{} @code{\begin@{flushleft@}...\end@{flushleft@}}
593 @item [prefix] b m
594 @dots{} @code{\begin@{minipage@}...\end@{minipage@}}
595 @item [prefix] b t
596 @dots{} @code{\begin@{tabbing@}...\end@{tabbing@}}
597 @item [prefix] b T
598 @dots{} @code{\begin@{tabular@}...\end@{tabular@}}
599 @item [prefix] b ^T
600 @dots{} @code{\begin@{table@}...\end@{table@}}
601 @item [prefix] b p
602 @dots{} @code{\begin@{picture@}...\end@{picture@}}
603 @item [prefix] b q
604 @dots{} @code{\begin@{quote@}...\end@{quote@}}
605 @item [prefix] b Q
606 @dots{} @code{\begin@{quotation@}...\end@{quotation@}}
607 @item [prefix] b r
608 @dots{} @code{\begin@{flushright@}...\end@{flushright@}}
609 @item [prefix] b v
610 @dots{} @code{\begin@{verbatim@}...\end@{verbatim@}}
611 @item [prefix] b V
612 @dots{} @code{\begin@{verse@}...\end@{verse@}}
613 @end table
615 上記のもの以外の環境名は Emacs の持つインクリメンタルな補完機能を用いて
616 入力します(上記の環境名も以下の補完入力可能)。
618 @table @kbd
619 @item [prefix] b @key{SPC}
620 @dots{} begin 型補完入力
621 @end table
623 @kbd{[prefix] b @key{SPC}} と入力すると、最下行のミニバッファに
625 @example
626 Begin environment(default document):
627 @end example
629 @noindent
630 と表示されます。ここで、何も入れずにリターンキーのみ押すと、括弧内に出てい
631 るデフォルトの環境名が入力されますが、適当な環境名を入力すると、
632 @code{\begin@{環境名@} … \end@{環境名@}}が文書中に挿入されます。ミニバッ
633 ファで環境名を入力するときに、環境名の頭文字を入力し「スペース」をたたくと、
634 一致する環境名が内部テーブルに存在した場合、正しい環境名に補完されるので、
635 入力の手間が省けます。内部テーブルに存在しない環境名を入力した時はユーザ専
636 用のテーブルに登録され、さらにそのテーブルを自動的に、ユーザ辞書(デフォル
637 トでは @file{~/.yatexrc})に保存します。
638 @cindex ユーザ辞書[ゆうさししよ]
640 @subsection 既に書いたテキストを環境で括る
642 ところで、最初に書いてしまったブロックを後から、itemize 環境の中
643 に閉じこめたいと思うことがありますが、そのようなときは、あらかじめ
644 閉じこめたい段落をマークして、begin 型補完の各コマンドの @kbd{[prefix]}
645 の次の『小文字の 'b'』 を『大文字』に変えて起動して下さい。(または、
646 @kbd{C-u} を先に打ち、universal argument をつけても可能です)
647 @cindex ブロック[ふろつく]
648 @cindex 閉じ込める[としこめる]
650 例えばあるパラグラフを description 環境の中に入れたいときは、
651 そのパラグラフをマークしてから、
653 @table @kbd
654 @item [prefix] B D
655 @itemx (または ESC 1 [prefix] b D)
656 @itemx (または C-u [prefix] b D など)
657 @end table
659 とタイプしてください。これは、@kbd{[prefix] b SPC}の補完入力にもあてはまり、
660 @kbd{b} を大文字に変えて、@kbd{[prefix] B SPC} とタイプすれば、あらかじめ
661 マークしておいたリジョンを、begin と end の環境で括ります。
663 @node section型補完, large型補完, begin型補完, Completion
664 @comment node-name, next, previous, up
665 @section section型補完
666 @cindex section型補完[sectionかたほかん]
667 @cindex prefix s
669 @code{\section@{目的@}} のような形式の入力の補完を section 型補完と呼ぶこ
670 とにします。section 型補完は、
672 @table @kbd
673 @item [prefix] s
674 @dots{} section 型補完
675 @end table
677 @noindent
678 で実行します。@kbd{[prefix] s} を入力するとミニバッファに、
680 @example
681 (C-v for view-section) \???@{@} (default documentstyle):
682 @end example
684 @noindent
685 というプロンプトが現れるので、そこで @samp{section} のような La@TeX{} コマ
686 ンド名を入力します。ここでもリターンキーのみで括弧内のデフォルト値が選択さ
687 れるほか、@samp{chapter}などのような頻度の高い名称入力にはスペースキーによ
688 る補完機能が有効です。 次に、@{@}の中身の入力を促す、
690 @example
691 \section@{???@}:
692 @end example
694 @noindent
695 というプロンプトが現れるので、セクションのタイトルなどを入力します。
696 たとえば、
698 @example
699 (C-v for view-section) \???@{@} (default documentstyle): section
700 \section@{???@}: 目的
701 @end example
703 @noindent
704 のように入力した場合は、文章中に
706 @example
707 \section@{目的@}
708 @end example
710 @noindent
711 が挿入され、
713 @example
714 (C-v for view-section) \???@{@} (default section): vspace*
715 \vspace*@{???@}:
716 @end example
718 @noindent
719 のように@{@}の中身を省略したときは、
721 @example
722 \vspace*@{@}
723 @end example
725 @noindent
726 だけが挿入され、改行はせずカーソルは自動的に中括弧の内側に移動します。
728 @menu
729 * 2個以上の引数をとる section型コマンド::
730 * Enclose region-type command::
731 * Recursive completion:: 再帰補完
732 * view-sectioning:: セクション区切りのアウトライン表示
733 @end menu
735 @node 2個以上の引数をとる section型コマンド, Enclose region-type command, section型補完, section型補完
736 @comment node-name, next, previous, up
737 @subsection 2個以上の引数をとる section型コマンド
738 @cindex 引数[ひきすう]
740 ところで、@samp{\addtolength{\topmargin}{8mm}} などのように、引数を二つ
741 以上取る La@TeX{} コマンドがあります。このようなコマンドの補完入力には、
742 section 型補完呼び出しに引数を付けてください。例えば上の@samp{addtolength}
743 の例であれば、引数2を指定します。つまり、
745 @example
746 C-u 2 [prefix] s (または、ESC 2 [prefix] s)
747 @end example
749 @noindent
750 と section 型補完を呼び出した後、
752 @example
753 (Ctrl-v for view-section) \???@{@} (default vspace*): addtolength
754 \addtolength@{???@}: \topmargin
755 Argument 2: 8mm
756 @end example
758 @noindent
759 のように入力してください。最初の addtolength の部分と、第一引数である
760 \topmargin の入力は当然スペースによる補完入力が可能です。ユーザ辞書に登録
761 される La@TeX{} コマンドには、この引数の数も学習されるので、最初の補完の時
762 引数の数を指定して起動しておけば、以後の補完時には、記憶された個数だけ引数
763 を聞いて来るようになります。あとで引数の個数を変えたい時は、再び @kbd{C-u}
764 を用いて個数を指定し直すことで、自動的に辞書中の引数の個数の部分を更新しま
765 す。
766 @cindex 引数の個数を変える[ひきすうのこすうをかえる]
769 @node Enclose region-type command, Recursive completion, 2個以上の引数をとる section型コマンド, section型補完
770 @comment node-name, next, previous, up
771 @subsection 既に書いたテキストを括る
772 @cindex 括る[くくる]
774 また、起動コマンドの@kbd{s}を大文字に変えて起動すると、あらかじめ書
775 いた文章を section 型コマンドの第一引数として括ります。
777 @node Recursive completion, view-sectioning, Enclose region-type command, section型補完
778 @comment node-name, next, previous, up
779 @subsection 再帰補完
780 @cindex 再帰補完[さいきほかん]
782 高度な使い方になるかもしれませんが、section型補完の引数の入力時にさらに
783 補完入力を利用することができます(section/large/maketitle型に限る)。section
784 型コマンドの引数に更に La@TeX{} コマンドが来る場合にはミニバッファで野鳥の
785 補完キーを再帰的に入力することで引数の入力も効率的に行なえます。
787 @node view-sectioning, , Recursive completion, section型補完
788 @comment node-name, next, previous, up
789 @subsection セクション区切りのアウトライン表示
790 @cindex アウトライン[あうとらいん]
792 通常のsection型補完の時にミニバッファで@kbd{C-v}を押すと現在存在するセク
793 ション区切りコマンド全てを一覧表示します(「<<--」のついている行がもっとも
794 近いセクション区切り)。この時ミニバッファで@kbd{C-p}, @kbd{C-n} を押すと
795 @samp{part}, @samp{chapter}, ..., @samp{subparagraph} のコマンドが論理階層
796 の高さにしたがって上下します。また、@kbd{C-v}, @kbd{M-v} を押すとセクショ
797 ン区切り一覧バッファがスクロールし、数字の@kbd{0}〜@kbd{7}を押すとある高さ
798 以上のセクション区切りだけを選んで表示します(実際にやって見れば分かります)。
799 この一覧バッファにカーソルを移しスペースを押すと、該当するセクション区切り
800 のある本文中の場所にジャンプします。
801 @cindex 論理階層[ろんりかいそう]
802 @cindex セクション区切り[せくしよんくきり]
803 @cindex ジャンプ[しやんふ]
805 @node large型補完, maketitle型補完, section型補完, Completion
806 @comment node-name, next, previous, up
807 @section large型補完
808 @cindex large型補完[largeかたほかん]
809 @cindex prefix l
811 @code{@{\large @}} のような形式の補完を large 型補完と呼ぶことにします。
813 @table @kbd
814 @item [prefix] l
815 @dots{} large 型補完開始
816 @end table
818 @noindent
819 がlarge型補完の開始です。@kbd{[prefix] l} を押すと、ミニバッファに
821 @example
822 @{\??? @} (default large):
823 @end example
825 @noindent
826 と表示されるので、上記のものと同じ要領で補完入力して下さい。補完候補に用意
827 されているのは、@samp{footnotesize} や @samp{huge} のような文字サイズ指定
828 子と、@samp{bf}や@samp{dg}のようなフォント指定子です。
829 @cindex 文字サイズ指定子[もしさいすしていし]
830 @cindex フォント指定子[ふおんとしていし]
832 @subsection 既に書いた文字を括る
833 @cindex 括る[くくる]
835 また、begin型補完の時と同様、先に書いてしまった一連の文章の文字のサイズ
836 を変えたいと思う時がありますが、そのような時は、サイズや大きさを変えたい文
837 字の範囲をマークしてから、呼び出しキーを @kbd{[prefix] L} と、大文字の L
838 に変えて呼び出せば、そのリジョン全体が、ブレースで囲まれます。
840 @node maketitle型補完, Arbitrary completion, large型補完, Completion
841 @comment node-name, next, previous, up
842 @section maketitle型補完
843 @cindex maketitle型補完[maketitleかたほかん]
844 @cindex prefix m
846 @code{\maketitle} の形式の補完を maketitle 型補完と呼ぶことにします。
848 @table @kbd
849 @item [prefix] m
850 @dots{} maketitle 型補完開始
851 @end table
853 @noindent
854 で、maketitle 型補完を開始します。補完の要領は今までのものとまったく同じで
855 す。La@TeX{} 用のコマンド名が補完候補として用意されています。
857 @node Arbitrary completion, end補完, maketitle型補完, Completion
858 @comment node-name, next, previous, up
859 @section 随時補完
860 @cindex 随時補完[すいしほかん]
861 @cindex prefix SPC
863 さて、今まで述べた典型的な La@TeX{} コマンド形式の補完入力を用いずに、今
864 入力しようとしている La@TeX{} コマンドを文書中の任意の位置で随時補完するこ
865 ともできます。La@TeX{} コマンド(先頭が\で始まる)を入力している途中で、
867 @table @kbd
868 @item [prefix] SPC
869 @dots{} 随時補完
870 @end table
872 @noindent
873 を入力すれば、全ての補完候補の中から一致するものが選ばれカーソル位置に挿入
874 されます。
876 @node end補完, Accent mark completion, Arbitrary completion, Completion
877 @comment node-name, next, previous, up
878 @section end補完
879 @cindex end補完[endほかん]
880 @cindex prefix e
882 現在開いたままの環境名を自動的に検出し、@code{\end@{環境名@}}を挿入しま
883 す。begin 型補完を用いれば環境の閉じ忘れはないのですが、時にはついつい手で
884 @code{\begin@{環境名@}} を入れてしまい、悲しい思いをすることがあります。そ
885 のような時には気にせず続けて文章を入力し、しかるのちに
887 @table @kbd
888 @item [prefix] e
889 @dots{} end 補完
890 @end table
892 @noindent
893 とすることで、現在開いている環境名で \end{} が補われます。
895 @node Accent mark completion, Image completion, end補完, Completion
896 @comment node-name, next, previous, up
897 @section アクセント記号補完
898 @cindex アクセント記号補完[あくせんときこうほかん]
899 @cindex prefix a
900 @cindex 欧文[おうふん]
902 欧文のアクセント記号(@code{\`@{o@}}など)を入力する時は、
904 @table @kbd
905 @item [prefix] a
906 @dots{} アクセント記号入力
907 @end table
909 @noindent
910 を押すと、ミニバッファに
912 @example
913 1:` 2:' 3:^ 4:" 5:~ 6:= 7:. u v H t c d b
914 @end example
916 @noindent
917 というメニューが出て来るので、数字、または対応する記号/英字を入力
918 して下さい。すると編集バッファに、
920 @example
921 \`@{@}
922 @end example
924 @noindent
925 があらわれ、カーソルが@{@}内に位置するので、さらに一文字入力する事で、
927 @example
928 \`@{o@}
929 @end example
931 @noindent
932 が完成され、カーソルは@{@}の外に戻ります。
934 @node Image completion, Greek letter completion, Accent mark completion, Completion
935 @comment node-name, next, previous, up
936 @section 数式記号イメージ補完
937 @cindex 数式記号イメージ補完[すうしききこういめえしほかん]
938 @cindex イメージ補完[いめえしほかん]
939 @cindex ;
940 @cindex 数式モード[すうしきもおと]
941 @cindex 矢印[やしるし]
942 @cindex Σ[しくま]
943 @cindex leftarrow
944 @cindex ∞[むけんたい]
946 主に数式モードで使用される、矢印やΣなどの記号を擬似的に表現するキー入力
947 で、La@TeX{} コマンドを入力できます。これは野鳥自身の「数式モード」でのみ
948 動作します。野鳥はカーソルが@TeX{}の数式環境の中にある時に@kbd{;}や、
949 @kbd{:}に特殊な機能を持たせます。
951 さて、例えば、←(leftarrow)をASCII文字だけで表現する場合、一般的には「<-」
952 のようにしますが、これを利用して、数式記号イメージ入力モードで
953 @code{\leftarrow}を入力するには、@kbd{;}(セミコロン)を打ってから@kbd{<-}と
954 入力します。同様に、長い矢印←-(long-leftarrow) をASCII文字だけで表現する
955 場合「<--」とするので、@code{\longleftarrow}を入力するためには、@kbd{;<--}
956 と入力します。あるいは無限大記号をASCII文字だけで表現する時は「oo」のよう
957 にすることから、@code{\infty} を入力する時は、@kbd{;oo}とキー入力します。
959 これらの操作をまとめると次のようになります。
961 @example
962 INPUT 入力される La@TeX{} コマンド
963 ; < - @code{\leftarrow}
964 ; < - - @code{\longleftarrow}
965 ; < - - > @code{\longleftrightarrow}
966 ; o @code{\circ}
967 ; o o @code{\infty}
968 @end example
971 @noindent
972 いずれの場合も、イメージ入力を行っている途中で望みのものがバッファ
973 に表示されたなら、そこでイメージ入力を止めて次の編集動作に移っても
974 構いません。
976 @cindex ;自身[;ししん]
977 数式環境中で@samp{;}自身を入力するには@kbd{;;}のようにします。イメージ
978 入力の途中でTABを押すと、それまで入力した文字で始まるもの一覧が表示されま
979 す。ここで目的の La@TeX{} コマンドまでカーソルを移動し再度TABを押すことで
980 その La@TeX{} コマンドがバッファに挿入されます。
982 どのキー入力にどの記号が対応しているか全て知りたい時は、@kbd{;}を押した
983 直後にTABを押してください。以下の例は、@kbd{;<}と押した後にTABを押したもの
984 です。
986 @example
987 KEY LaTeX sequence sign
988 < \leq ≦
989 << \ll 《
990 <- \leftarrow ←
991 <= \Leftarrow <=
992 @end example
994 左から[入力キー]、[対応する La@TeX{} コマンド]、[(擬似)記号図示]、と
995 いう順でメニューが出て来るので、よく使うものを覚えておくと良いでしょ
996 う。ものによってはASCII文字で表現することが困難なので、あまり覚え
997 やすいキー並びではないものがあるでしょうから、そのような場合は
998 \maketitle 型補完で入力するか、以下に述べる対応表の設定を行って単
999 純なキー並びのものを設定すると良いでしょう。
1001 入力キーと La@TeX{} コマンド、記号の対応表を個人的に設定したい場合は
1002 Emacs-Lisp 変数 @code{YaTeX-math-sign-alist-private} に定義してください。
1003 その内容とデフォルトのものを合わせたものが対応表として使用されます(private
1004 の方が優先される)。なお、この変数の構造については @file{yatexmth.el} を参
1005 照してください。
1006 @cindex YaTeX-math-sign-alist-private
1008 @node Greek letter completion, , Image completion, Completion
1009 @comment node-name, next, previous, up
1010 @section ギリシャ文字補完
1011 @cindex ギリシャ文字補完[きりしやもしほかん]
1012 @cindex :
1014 もう一つ、数式環境中で@kbd{:}を押すとギリシャ文字入力モードに入ります。
1015 @kbd{:}を押した直後に@kbd{a}を押すと@code{\alpha}が、@kbd{g} を押すと
1016 @code{\gamma}が、などアルファベットに対応したギリシャ文字が挿入されます。
1017 操作方法は;の数式記号補完とまったく同じです。まずは@kbd{:}の直後に
1018 TABを押してどのアルファベットにどのギリシャ文字が対応しているか調べてみて
1019 ください。
1021 @kbd{;}と@kbd{:}を数式環境中で押しているにもかかわらず、イメージ補完が働
1022 かない場合は、@kbd{C-u ;}のように universal-argument をつけてキーを押すこ
1023 とにより、強制的にイメージ補完に入ることができます。また、この時にどのよう
1024 な状態で数式環境内判定に失敗したかをご連絡下さい。
1026 @node Local dictionary, Commenting out, Completion, Top
1027 @comment node-name, next, previous, up
1028 @chapter ローカル辞書
1029 @cindex ローカル辞書[ろおかるししよ]
1030 @cindex .yatexrc
1032 補完入力用の候補は三種類の辞書から構成されています。一つは
1033 @file{yatex.el}に組み込まれた「標準辞書」、もう一つはユーザが個人的に常用
1034 するコマンドを保存する「ユーザ辞書」、そしてもうひとつはあるディレクトリで
1035 のみ有効なコマンドを保存する「ローカル辞書」です。
1037 補完入力時に新しい単語を入れた場合に、その単語をどの辞書に入れるか聞いて
1038 来ます。
1040 @example
1041 `foo' is not in table. Register into: U)serDic L)ocalDic N)one D)iscard
1042 @end example
1044 @noindent
1045 というプロンプトに対し、@kbd{u}と答えると「ユーザ辞書」を、@kbd{l}と答える
1046 とローカル辞書を更新し、@kbd{n}と答えると辞書ファイルは更新せず現在のEmacs
1047 セッションのみ有効な単語とし、@kbd{d}と答えると新たな単語を学習せずに捨て
1048 ることになります。
1050 もし、ローカル辞書の機能はいらず、全てユーザ辞書の更新のみでよいと言う場
1051 合には@file{~/.emacs}などで、
1052 @cindex YaTeX-nervous
1054 @lisp
1055 (setq YaTeX-nervous nil)
1056 @end lisp
1058 @noindent
1059 として下さい。
1061 @node Commenting out, Cursor jump, Local dictionary, Top
1062 @comment node-name, next, previous, up
1063 @chapter コメントアウト
1064 @cindex コメントアウト[こめんとあうと]
1065 @cindex prefix <
1066 @cindex prefix >
1067 @cindex prefix .
1068 @cindex prefix ,
1071 La@TeX{}の編集には試行錯誤がつきものです。ある部分を一括でコメントアウト
1072 したり、コメントを外したりしたいことがあります。
1074 @table @kbd
1075 @item [prefix] >
1076 @dots{} リジョンを % でコメントアウト
1077 @item [prefix] <
1078 @dots{} リジョンの % のコメントを外す
1079 @end table
1081 @noindent
1082 は、あらかじめ設定したリジョンに対しての操作、
1084 @table @kbd
1085 @item [prefix] .
1086 @dots{} 現在のパラグラフをコメントアウト
1087 @item [prefix] ,
1088 @dots{} 現在のパラグラフのコメントを外す
1089 @end table
1091 @noindent
1092 は、カーソルの位置するパラグラフ全体に対しての操作です。なお、ここでいう
1093 「パラグラフ」は (@code{mark-paragraph}) 関数によりマークされる範囲を指し
1094 ます(標準設定で@kbd{ESC h}にバインドされている)。なお、既に@code{%}でコメ
1095 ントアウトされているパラグラフに対して繰り返しパラグラフのコメントを使用し
1096 た場合の動作は保証しませんので御注意ください。
1098 さて、文章に対してだけでなく、時には@code{\begin}, @code{\end} 自体に対
1099 してもコメントアウトの操作をしたいときがあります。このようなときは、
1100 @code{\begin@{@}} あるいは @code{\end@{@}} の行にカーソルを合わせ、
1102 @table @kbd
1103 @item [prefix] >
1104 @dots{} @code{\begin@{@}}〜@code{\end@{@}} 全てコメントアウト
1105 @item [prefix] <
1106 @dots{} @code{\begin@{@}}〜@code{\end@{@}} 全てコメントを外す
1107 @end table
1109 @noindent
1110 とすることで、@code{\begin〜\end}で囲まれる環境全てに対してコメント操作し、
1112 @table @kbd
1113 @item [prefix] .
1114 @dots{} @code{\begin@{@}} と @code{\end@{@}} をコメントアウト
1115 @item [prefix] ,
1116 @dots{} @code{\begin@{@}} と @code{\end@{@}} のコメントを外す
1117 @end table
1119 は、対応する @code{\begin} と @code{\end} 2行だけを、コメント操作の対象と
1120 します。リジョンをコメントアウトしようとして、マークを設定したのちにカーソ
1121 ルを移動し@kbd{[preifx] >} を押してもカーソルが @code{\begin@{@}} の上にあ
1122 ると@code{\begin@{@}}〜@code{\end@{@}}モードでコメント機能が働いてしまうの
1123 で注意して下さい。
1125 @node Cursor jump, Modifying/Deleting, Commenting out, Top
1126 @comment node-name, next, previous, up
1127 @chapter カーソルジャンプ
1128 @cindex カーソルジャンプ[かあそるしやんふ]
1129 @cindex prefix g
1131 @section 対応オブジェクトへのジャンプ
1133 文書中のいろいろな場所で
1135 @table @kbd
1136 @item [prefix] g
1137 @dots{} 対応するオブジェクトにジャンプ
1138 @end table
1140 @noindent
1141 を押すことにより、カーソル位置のLa@TeX{}コマンドに対応する場所にジャンプ
1142 します。対応関係が存在すると解釈されるコマンドには以下のものがあります。
1144 @itemize @bullet
1145 @item @code{\begin@{@}}←→@code{\end@{@}}
1146 @item @code{%#BEGIN}←→@code{%#END}
1147 @item @code{\label@{@}}←→@code{\ref@{@}}
1148 @item @code{\include(\input)}→対応するファイル
1149 @item @code{\bibitem@{@}}←→@code{\cite@{@}}
1150 @end itemize
1152 @code{\begin@{@}} か @code{\end@{@}} の行で@kbd{[prefix] g}を押すことに
1153 より、対応する@code{end/begin}の行にジャンプします。もちろん対応するものが
1154 ない場合はエラーになります。またこれは、領域固定のための @code{%#BEGIN} と
1155 @code{%#END} のペアに対しても同様に動作します。なお、@code{label/ref}や
1156 @code{cite/bibitem}対応するものが別ファイルにある時は、ジャンプ先となるファ
1157 イルがオープンされていなければなりません。@xref{%#記法}
1158 メインの .tex ファイルの @code{\include{chap1}} などにカーソルを合わせ、
1159 @kbd{[prefix] g} を押すと、@file{chap1.tex} にジャンプします。
1161 また、
1163 @table @kbd
1164 @item [prefix] 4 g
1165 @dots{} 別ウィンドウで対応オブジェクトにジャンプ
1166 @end table
1168 @noindent
1169 を押すと、対応するオブジェクトへのジャンプを別ウィンドウで行います。ただし、
1170 この機能は @code{begin/end}, @code{%#BEGIN/%#END} 間のジャンプに対しては
1171 (意味がないと思われるので)機能しないので注意してください。
1173 @section メインファイルへのジャンプ
1175 @file{chap1.tex}のようなサブファイルで、
1177 @table @kbd
1178 @item [prefix] ^
1179 @dots{} メインファイルにジャンプ
1180 @item [prefix] 4 ^
1181 @dots{} 別ウィンドウでメインファイルにジャンプ
1182 @end table
1184 @noindent
1185 を押すと、メインファイルの編集バッファに切替えます。もし、メインファイルを
1186 オープンしていない場合は、カレントディレクトリから探して自動的にオープンし
1187 ます。
1189 @section 環境を単位としたジャンプ
1191 さらに現在の環境を単位として機能するコマンドに以下のものがあります。
1193 @cindex 環境の先頭へ[かんきようのせんとうへ]
1194 @cindex 環境の末尾へ[かんきようのまつひへ]
1195 @cindex 環境をマーク[かんきようをまあく]
1196 @cindex M-C-a
1197 @cindex M-C-e
1198 @cindex M-C-@@
1199 @table @kbd
1200 @item M-C-a
1201 @dots{} 環境の先頭(@code{\begin})へジャンプ
1202 @item M-C-e
1203 @dots{} 環境の末尾(@code{\end})へジャンプ
1204 @item M-C-@@
1205 @dots{} 環境全体をマーク
1206 @end table
1208 上記のコマンドは通常の@kbd{[prefix]}キーではなく@kbd{META}キーをプリフィク
1209 スとして機能するのでご注意下さい。
1213 @node Modifying/Deleting, Filling, Cursor jump, Top
1214 @comment node-name, next, previous, up
1215 @chapter 変更/削除
1216 @cindex 変更/削除[へんこう/さくしよ]
1217 @cindex prefix c
1218 @cindex prefix k
1220 既に入力されている La@TeX{} コマンドの変更/削除のために以下の機能が用意
1221 されています。
1223 @table @kbd
1224 @item [prefix] c
1225 @dots{} カーソル位置の La@TeX{} コマンドの変更
1226 @item [prefix] k
1227 @dots{} カーソル位置の La@TeX{} コマンドの削除
1228 @end table
1230 @noindent
1231 これらのコマンドは、コマンドを起動する場所によって動作を決定するので注意し
1232 て下さい。
1234 @menu
1235 * Changing LaTeX command:: La@TeX{} コマンドの変更
1236 * Killing LaTeX command:: La@TeX{} コマンドの削除
1237 @end menu
1239 @node Changing LaTeX command, Killing LaTeX command, Modifying/Deleting, Modifying/Deleting
1240 @comment node-name, next, previous, up
1241 @section La@TeX{} コマンドの変更
1243 変更したい La@TeX{} コマンドにカーソルを合わせて @kbd{[prefix] c}
1244 を押すとそのコマンドを補完入力などを用いて手軽に変えることができます。
1245 @kbd{[prefix] c} で変更できるコマンドには以下のものがあります。
1247 @itemize
1248 @item @code{begin/end} の環境名
1249 @item section型コマンドのコマンド名
1250 @item section型コマンドの引数
1251 @item section型コマンドのオプションパラメータ([]で囲まれたもの)
1252 @item large型コマンド
1253 @item (イメージ補完で入力可能な)数式モード専用のmaketitle型コマンド
1254 @end itemize
1256 変えたいsection型コマンドの引数がさらに La@TeX{} コマンドを含む場合は、
1257 その引数を囲む中括弧の上で @kbd{[prefix] c} を押すことで中のコマンドを変更
1258 対象判定から除外することができます。
1260 @cindex 環境名の変更[かんきようめいのへんこう]
1262 @node Killing LaTeX command, , Changing LaTeX command, Modifying/Deleting
1263 @comment node-name, next, previous, up
1264 @section La@TeX{} コマンドの削除
1266 @kbd{[prefix] k} は起動する位置により
1267 次のような動作を行います。
1268 @cindex 環境の削除[かんきようのさくしよ]
1271 @example
1272 起動位置 動作
1273 \begin, \endの行 @code{\begin\end}ペアの削除
1274 %#BEGIN, %#END の行 %#BEGIN,%#ENDペアの削除
1275 section型コマンドの上(中) section型コマンドの削除
1276 フォント指定括弧の上 フォント指定の削除
1277 括弧の上 対をなす括弧の削除
1278 @end example
1280 @noindent
1281 @code{\begin, \end} および @code{%#BEGIN, %#END} を削除する場合、
1282 @code{\begin, \end} や @code{%#BEGIN, %#END} の存在する行は
1283 まるごと削除されるので、それらの一行に @code{\begin} などを二つ以上連ねて
1284 書かないように注意してください。
1285 上記のものはすべて本文を囲う「容器」を削除するように働きますが、
1286 universal-argument (@kbd{C-u}) を打った後で@kbd{[prefix] k}をタイプすると、
1287 それぞれの「容器」に含まれる「中身」も一気に削除します。以下の例を参考にし
1288 て下さい。
1290 @example
1291 元のテキスト: [prefix] k C-u [prefix] k
1292 本文\footnote@{脚注@}です。 本文脚注です。 本文です。
1293 ↑(カーソル位置)
1294 @end example
1296 @node Filling, Includeonly, Modifying/Deleting, Top
1297 @comment node-name, next, previous, up
1298 @chapter 桁揃え
1299 @cindex 桁揃え[けたそろえ]
1301 @section itemの桁揃え
1302 @cindex itemなどの桁揃え[itemなとのけたそろえ]
1303 @cindex prefix i
1305 itemize 環境中にある@code{\item}の項目(文章)が複数行に渡る場合に、項
1306 目の先頭を桁揃えしたい場合には、
1308 @table @kbd
1309 @item [prefix] i
1310 @dots{} itemの桁揃え
1311 @end table
1313 @cindex NTT-jTeX[えぬていいていいしえいてつく]
1314 @noindent
1315 によって、その item のインデントの深さに応じて fill されます。なお、NTT
1316 jTeX を使用している場合には、Lisp 変数@code{NTT-jTeX}を@code{t}にセットし
1317 て下さい。
1319 @cindex YaTeX-item-regexp
1320 このとき、変数@code{YaTeX-item-regexp}の値(標準では @code{"\\\\item"})を
1321 項目指定コマンドの正規表現として検索に使用します。itemize 環境で、独自のコ
1322 マンドを定義して項目を列挙している場合(例えば@code{\underlineitem})は、
1323 @file{~/.emacs} で次のように指定して下さい。
1325 @lisp
1326 (setq YaTeX-item-regexp
1327 "\\(\\\\item\\)\\|\\(\\\\underlineitem\\)")
1328 @end lisp
1330 @noindent
1331 この変数の指定の仕方がよく分からない場合は、独自の項目列挙コマンドの名前を
1332 @code{@code{"\item"}で始まるものにして下さい(例えば"\itembf"})。
1334 @kbd{[prefix] i} では@code{\item} を「ハングインデント」に整形します。も
1335 し@code{\item}とその説明用パラグラフを切り離す時は通常の
1336 @kbd{M-q}(他のモードではfill-paragraphが割り当てられている)を使ってくださ
1337 い。(つまり以下のような場合:)
1339 @example
1340 ハングインデント:
1341 >\item[ほげほげ] 英語では、特に意味のない単語を `foo' であらわしま
1342 > すが、これの日本語版ともいえる単語が「ほげほげ」
1343 > です。
1344 通常インデント:
1345 > \item へろへろ
1347 > 「ほげほげ」をでたらめが単語として使った時に、第2のでたら
1348 > めな単語として「へろへろ」が使われることが多いようです。
1349 @end example
1351 上の通常インデントの場合、説明パラグラフのインデントは \item の見出しと
1352 同じ深さとする必要があります。ただし、@kbd{M-q}を行の最初の非空白文字の位
1353 置で押すことにより深さを変えることができます(後述)。
1355 @section パラグラフの桁揃え
1356 @cindex パラグラフの桁揃え[はらくらふのけたそろえ]
1357 @cindex M-q
1359 パラグラフの桁揃え(fill)は、基本的に通常通り機能しますが、verbatim環境や、
1360 tabular環境など桁揃えをすると悲惨な状況になるような環境中では機能しません。
1361 また、\verb で括ってあるものは決して行分割されません(変数
1362 @code{YaTeX-verb-regexp} で制御) )。さらに、一時的にインデントの深さを変え
1363 てある箇所では、そのインデントの先頭で@kbd{M-q}を押すことにより
1364 fill-prefix をいちいち変更しなくて桁揃えができます。
1367 @node Includeonly, What column, Filling, Top
1368 @comment node-name, next, previous, up
1369 @chapter 勝手にincludeonly
1370 @cindex 勝手にincludeonly[かつてにincludeonly]
1371 @cindex includeonly
1373 ファイルを分割して文章を入力している時には、メインファイル中に
1375 @example
1376 \includeonly@{現在編集中のファイル名@}
1377 @end example
1379 @noindent
1380 のように書いておくことで、タイプセットの時間を節約できますが、ちょっと他の
1381 ファイルを手直ししたい時には
1382 @cindex 他のファイルの手直し[ほかのふあいるのてなおし]
1384 @example
1385 \includeonly@{ちょっと手直ししたいファイル名@}
1386 @end example
1388 @noindent
1389 と書き直さなければならず手間がかかります。野鳥では現在編集しているファイル
1390 名がメインファイルの@code{\includeonly}にない場合には自動的にこれを検出し、
1391 次の指示を仰ぎます。
1393 @example
1394 A)dd R)eplace %)comment?
1395 @end example
1397 @noindent
1398 現在編集中のファイルを @code{\includeonly} のリストに加えたい時には@kbd{a}
1399 を、現在編集中のファイルだけを @code{\includeonly} にしたい時は@kbd{R}を、
1400 @code{\includeonly} の行をコメントアウトして無効化したい時には、@kbd{%}を
1401 それぞれ押して下さい。
1403 @node What column, Intelligent newline, Includeonly, Top
1404 @comment node-name, next, previous, up
1405 @chapter ここはどこ?
1406 @cindex ここどこ?[ここはとこ]
1407 @cindex prefix &
1408 @cindex 複雑なtabular[ふくさつなtabular]
1410 項目数の多い tabular などをたくさん書いていると下の方の行で、いま書いて
1411 いる桁がどこに対応するのかわからなくなってしまうことがあります。例えば、以
1412 下のような tabular において、
1414 @example
1415 \begin@{tabular@}{|c|c|c|c|c|c|c|c|}\hline
1416 氏名&所属&〒&住所&電話&FAX&帰省先&帰省先電話\\ \hline
1417 矢上二郎 & 6 & 223 & 横浜市港北区日吉 & xxx-yyy &
1418 zzz-www & トンガ & 9876-54321 \\
1419 日吉小僧 & 2 & \multicolumn@{2@}@{c|@}@{教えない@}
1420 &&&(???)
1421 \\ \hline
1422 \end@{tabular@}
1423 @end example
1425 @noindent
1426 (???)の部分がどの項目なのかすぐに判断するのは難しいでしょう。こんな時は、
1428 @table @kbd
1429 @item [prefix] &
1430 @dots{} 現在のカラム表示
1431 @end table
1432 @cindex 現在のカラム表示[けんさいのからむひようし]
1434 を押すとカーソル位置のカラムがどの項目に該当するかをミニバッファに表示しま
1435 す。tabular/array環境の第1行目を項目名の並びとみなして対応するものを探しま
1436 す。もし項目名として別のものを表示して欲しい場合は、行頭を@code{%}にしてダ
1437 ミーの項目並びを作っておくと良いでしょう。
1439 @node Intelligent newline, Changing mode of YaTeX, What column, Top
1440 @comment node-name, next, previous, up
1441 @chapter おまかせ改行
1442 @cindex おまかせ改行[おまかせかいぎょう]
1443 @cindex &入力[&にゅうりょく]
1444 @cindex prefix &
1446 tabular[*], array, itemize, enumerate, tabbing 環境で
1448 @table @kbd
1449 @item ESC RET
1450 @dots{} おまかせ改行
1451 @end table
1453 @noindent
1454 を押すと、その環境に応じた行エントリを次の行に挿入します。例えば、tabular
1455 環境では、その環境のカラム数に対応した個数の @code{&} に加え、行末の
1456 @code{\\} を入れます。この時それ以前に @code{\hline} があればそれも付け加
1457 えます。環境とそれに応じて自動入力するものの対応は以下のようになります。
1459 @itemize
1460 @item @code{tabular}, @code{tabular*}, @code{array}
1462 カラム数-1 だけの @code{&} と @code{\\}。必要に応じて @code{\hline}
1464 @item @code{tabbing}
1466 一行目で定義している @code{\=} と同じ個数の @code{\>}。
1468 @item @code{itemize}, @code{enumerate}, @code{description}, @code{list}
1470 @code{\item} または @code{item[]}
1471 @end itemize
1473 tabular 環境の例のように、本機能は各環境の一行目の内容を参考にして動作す
1474 るので、なるべく二行目以降で呼び出すようにしてください。
1476 もし、その他の環境、例えば @code{foo}、に対して@code{おまかせ改行}を動作
1477 させたい時は、@code{YaTeX-intelligent-newline-foo} という名前の関数を定義
1478 します。定義した関数は、現在の行に改行を挿入した直後の行頭の位置で呼ばれま
1479 す。関数 @code{YaTeX-indent-line} を呼ぶと現在の環境のネストに応じた深さに
1480 インデントされるので、これを呼んでから何かを挿入するようなコードを書くとよ
1481 いでしょう。関数 @code{YaTeX-intelligent-newline-itemize} の定義などを参考
1482 にしてください。
1484 @node Changing mode of YaTeX, Online help, Intelligent newline, Top
1485 @comment node-name, next, previous, up
1486 @chapter 野鳥の動作モード切り替え
1487 @cindex モード切り替え[もーときりかえ]
1488 @cindex prefix w
1490 @table @kbd
1491 @item [prefix] w
1492 @dots{} 野鳥動作モード切り替えメニュー
1493 @end table
1495 @noindent
1496 で野鳥自身の動作を決定する以下のモードを切り替えます。
1498 @itemize @bullet
1499 @item 修正モード
1500 @item 野鳥数式モード
1501 @end itemize
1503 修正モードは、開き括弧入力時の処理をコントロールし、修正モードONの時は開き
1504 括弧の入力は開き括弧のみの入力になり、修正モードOFFの時は開き括弧の入力だ
1505 けで閉じ括弧まで入力します。デフォルト(起動時)の設定は@emph{OFF}です。
1507 野鳥数式モードは、変数 @code{YaTeX-auto-math-mode} が @code{nil} の時の
1508 み有効で、このとき@kbd{;}や@kbd{:}を押した時(@ref{Image completion}参照)に、
1509 どのようなイメージ補完を機能させるか、通常のキーとして機能させるかを手動で
1510 切り替えます。自動判定が遅いマシンでは@code{YaTeX-auto-math-mode}
1511 @code{nil}にセットし、野鳥数式モードを手動で切り替えると良いでしょう。
1514 @node Online help, Cooperation with other packages, Changing mode of YaTeX, Top
1515 @comment node-name, next, previous, up
1516 @chapter オンラインヘルプ
1517 @cindex オンラインヘルプ[おんらいんへるふ]
1518 @cindex apropos
1519 @cindex キーワード検索[きいわあとけんさく]
1520 @cindex prefix ?
1521 @cindex prefix /
1523 使おうとする La@TeX{} コマンドの用法がよく分からない時は、オンラインヘル
1524 プをひきましょう。ヘルプに関するキーには以下のものがあります。
1526 @table @kbd
1527 @item [prefix] ?
1528 @dots{} オンラインヘルプ
1529 @item [prefix] /
1530 @dots{} オンラインapropos
1531 @end table
1533 @section オンラインヘルプ
1534 @cindex グローバルヘルプ[くろおはるへるふ]
1535 @cindex プライベートヘルプ[ふらいへえとへるふ]
1536 @cindex YaTeX-help-file
1537 @cindex YaTeX-help-file-private
1539 「オンラインヘルプ」は、一般的な La@TeX{} コマンド(デフォルトでカーソル
1540 位置のコマンド)に対する説明を隣のバッファに表示します。この時参照されるヘ
1541 ルプ用ファイルには「グローバルヘルプ」と「プライベートヘルプ」の二種類があ
1542 り、前者は La@TeX{} の標準コマンドの主なものの説明を含むファイルで、変数
1543 @code{YaTeX-help-file}の値で指定されます。このファイルは通常公共の場所(デ
1544 フォルトで@code{$EMACSEXECPATH})に置かれ、誰もがその内容を更新できるように
1545 全員に書き込み権が与えられるべきものです。後者は、非標準もしくは個人的なマ
1546 クロ定義に関する説明が書かれているファイルで、変数
1547 @code{YaTeX-help-file-private}の値で指定されます。こちらはユーザのホームディ
1548 レクトリの下などに置かれます。
1550 @section オンラインapropos
1552 「オンラインapropos」は GNU Emacs の apropos と同様、ユーザが指定したキー
1553 ワードを説明文に含む項目すべてを隣のバッファに表示します。
1555 もし、調べようとしたLa@TeX{}コマンドに対する説明がヘルプファイル中に見つ
1556 からなかった場合は、説明文の入力を求めてくるので、可能であれば参考書などを
1557 調べてそのコマンドの説明を入力してください。もし、なにか標準的なコマンドに
1558 対する説明を書いたならばぜひ私までその説明をお送り下さい。次回の配布に含め
1559 たいと思います。
1561 @node Inclusion hierarchy browser
1562 @comment node-name, next, previous, up
1563 @chapter インクルード構造ブラウザ
1564 @cindex インクルード構造[いんくるうとこうそう]
1565 @cindex prefix d
1567 複数のファイルに分割しているドキュメントを書いている場合、
1569 @table @kbd
1570 @item [prefix] d
1571 @dots{} インクルード構造ブラウズ
1572 @end table
1574 @noindent
1575 を押すと、そのドキュメントの親ファイルを聞いて来ます。ここで全てのファイル
1576 の親となるファイル(デフォルトが示されているので大抵はRETのみ)を入力すると
1577 インクルードしている全てのファイルを解析し、インクルード状況を視覚的に表示
1578 します。このバッファでは以下のキー操作が有効です。
1580 @table @kbd
1581 @item n
1582 @dots{} 次の行に移動し対応するファイルを隣のバッファに表示
1583 @item p
1584 @dots{} 上の行に移動し対応するファイルを隣のバッファに表示
1585 @item N
1586 @dots{} 同じインクルードレベルの次のファイルに移動
1587 @item P
1588 @dots{} 同じインクルードレベルの前のファイルに移動
1589 @item j
1590 @dots{} 次の行に移動
1591 @item k
1592 @dots{} 上の行に移動
1593 @item u
1594 @dots{} 一代親にあたるファイルに移動
1595 @item .
1596 @dots{} カーソル位置のファイルを隣のバッファに表示
1597 @item SPC
1598 @dots{} 隣のバッファの対応ファイルをスクロールアップ
1599 @item DEL, b
1600 @dots{} 隣のバッファの対応ファイルをスクロールダウン
1601 @item <
1602 @dots{} 隣のバッファの対応ファイルの先頭を表示
1603 @item >
1604 @dots{} 隣のバッファの対応ファイルの末尾を表示
1605 @item '
1606 @dots{} (@kbd{<}や@kbd{>}の後で)元の表示位置に戻る
1607 @item RET, g
1608 @dots{} カーソル位置のファイルを隣のバッファでオープン
1609 @item mouse-2
1610 @dots{} RETと同じ(ウィンドウ使用時のみ)
1611 @item o
1612 @dots{} 隣のウィンドウに移動
1613 @item 1
1614 @dots{} 他のウィンドウを消す
1615 @item -
1616 @dots{} ブラウズウィンドウを小さくする
1617 @item +
1618 @dots{} ブラウズウィンドウを大きくする
1619 @item ?
1620 @dots{} ヘルプ表示
1621 @item q
1622 @dots{} 表示前の状態に戻る
1623 @end table
1625 ただし、隣のウィンドウのファイルの内容を表示する機能に関しては、対応する
1626 ファイルをクローズしてしまうとうまく働きませんのでご注意ください。
1628 @node Cooperation with other packages, Customizations, Online help, Top
1629 @comment node-name, next, previous, up
1630 @chapter 他パッケージとの連携
1631 @cindex 他パッケージとの連携[たはつけえしとのれんけい]
1633 @section gmhist
1634 @cindex gmhist
1635 @cindex コマンドヒストリ[こまんとひすとり]
1636 @cindex ヒストリ[ひすとり]
1638 @file{gmhist.el}と@file{gmhist-mh.el} をロードしている場合、プレヴューコ
1639 マンドの入力(@kbd{[prefix] tp]})、印刷コマンドの入力(@kbd{[prefix] tl})の
1640 時に独立したヒストリを利用できます。それぞれのプロンプトで、@kbd{M-p} を押
1641 すと直前に利用したコマンド文字列をくり返し呼び出すことができます。
1643 @section min-out
1644 @cindex min-out
1646 @file{min-out.el} (@code{outline-minor-mode}) と野鳥を組み合わせて使うこ
1647 とももちろん可能です。設定の方法に関しては@file{yatexm-o.el}をご覧ください。
1649 @node Customizations, Etc, Cooperation with other packages, Top
1650 @comment node-name, next, previous, up
1651 @chapter カスタマイズ
1652 @cindex カスタマイズ[かすたまいす]
1653 @cindex キーアサイン[きいあさいん]
1655 野鳥の動作を制御する種々の変数を独自に設定することにより、補完入
1656 力を起動するキーアサインを変えたり、環境名の補完候補をさらに充実さ
1657 せることなどができます。
1659 @menu
1660 * Lisp variables:: lisp 変数
1661 * Add-in functions:: 付加関数(アドイン関数)
1662 @end menu
1664 @node Lisp variables, Add-in functions, Customizations, Customizations
1665 @comment node-name, next, previous, up
1666 @section lisp 変数
1667 @cindex prefixキー変更[prefixきいへんこう]
1669 例えば prefix キーを @kbd{C-c} 以外のキーにしたい場合は、
1670 @code{YaTeX-prefix}に prefix キーにしたいシンボルを定義してください。さら
1671 に、「@kbd{C-c 英字}」というキーバインドは独自の関数が割り当ててあるので使
1672 いたくない。このような時は、@code{YaTeX-inhibit-prefix-letter} を @code{t}
1673 に設定することにより、@kbd{C-c 英字…}のバインドが全て、対応する@kbd{C-c
1674 C-英字…}に変わります(ただし、begin型 large型補完の大文字起動によるリジョ
1675 ン指定は可能なままです。これも無効にしたい場合は@code{t}ではなく 1 にセッ
1676 トして下さい。)。
1678 @menu
1679 * All customizable variables:: カスタマイズ変数一覧
1680 * Sample definitions:: カスタマイズ変数設定例
1681 * Hook variables:: hook変数
1682 * Hook file:: hook用ファイル
1683 @end menu
1685 @node All customizable variables, Sample definitions, Lisp variables, Lisp variables
1686 @comment node-name, next, previous, up
1687 @subsection カスタマイズ変数一覧
1688 @cindex カスタマイズ変数一覧[かすたまいすへんすういちらん]
1690 yatex-mode における次の変数がカスタマイズ可能です。@file{~/.emacs} で
1691 @code{setq} しておけば、そちらの定義が優先されます。括弧の中はデフォルト値
1692 です。実際に変数の値を変更する場合は @kbd{M-x describe-variable} で
1693 変数の詳細な説明を参照してください。
1695 @defvar YaTeX-prefix
1696 yatex-mode 中のプリフィクスキー(@kbd{C-c})
1697 @end defvar
1699 @defvar YaTeX-inhibit-prefix-letter
1700 prefix キーの直後のキーバインドで@kbd{英字}のものを@kbd{C-英字}に変更
1701 (@code{nil})
1702 @end defvar
1704 @defvar YaTeX-fill-prefix
1705 本文を書く時の行頭に挿入する接頭辞すなわち fill-prefix (@code{""(nil)})
1706 @end defvar
1708 @defvar YaTeX-open-lines
1709 \begin{環境}と\end{環境}のあいだの空白行数 (0)
1710 @end defvar
1712 @defvar YaTeX-user-completion-table
1713 学習したLa@TeX{}コマンド保存ファイル名(@code{"~/.yatexrc"})
1714 @end defvar
1716 @defvar YaTeX-kanji-code
1717 文書を作成する時の漢字コード1=Shift JIS, 2=JIS, 3=EUC(2 (MS-DOSでは1))
1718 @end defvar
1720 @defvar YaTeX-item-regexp
1721 itemの桁揃えの時に用いる、itemの正規表現(@code{"\\\\(sub\\)*item"})
1722 @end defvar
1724 @defvar YaTeX-verb-regexp
1725 verbコマンドの正規表現。先頭の\\\\はつけない(@code{"verb\\*?\\|path"})
1726 @end defvar
1728 @defvar tex-command
1729 La@TeX{}タイプセッタコマンド名 (@code{"jlatex"})
1730 @end defvar
1732 @defvar dvi2-command
1733 プレヴューアコマンド名(@code{"xdvi -geo +0+0 -s 4 -display (getenv"DISPLAY")"})
1734 @end defvar
1736 @defvar dviprint-command-format
1737 dviファイルの印刷に使われるコマンド式(@code{"dvi2ps %f %t %s | lpr"})
1738 @end defvar
1740 @defvar dviprint-from-format
1741 上の@code{%f}に相当する開始ページ指定書式、@code{%b} が開始ページ番号に変
1742 わる(@code{"-f %b"})
1743 @end defvar
1745 @defvar dviprint-to-format
1746 @code{%t} に相当する終了ページ指定書式、@code{%e}が終了ページ番号に変わる
1747 (@code{"-t %e"})
1748 @end defvar
1750 @defvar makeindex-command
1751 makeindexコマンド(@code{"makeindex"} (MS-DOSでは@code{"makeind"}))
1752 @end defvar
1754 @defvar section-name
1755 最初のsection型補完の規定値(@code{"documentstyle"})
1756 @end defvar
1758 @defvar env-name
1759 最初のbegin型補完の規定値(@code{"document"})
1760 @end defvar
1762 @defvar fontsize-name
1763 最初のlarge型補完の規定値(@code{"large"})
1764 @end defvar
1766 @defvar single-command
1767 @end defvar
1768 最初のmaketitle型補完の規定値(@code{"maketitle"})
1770 @defvar YaTeX-need-nonstop
1771 @code{\nonstopmode@{@}}を自動的に付加するか(@code{nil})
1772 @end defvar
1774 @defvar latex-warning-regexp
1775 latexコマンドの出力するウォーニング行の正規表現(@code{"line.* [0-9]*"})
1776 @end defvar
1778 @defvar latex-error-regexp
1779 同じくエラー行の正規表現(@code{"l\\.[1-9][0-9]*"})
1780 @end defvar
1782 @defvar latex-dos-emergency-message
1783 MS-DOS上で動作する latex コマンドが、エラーにより停止するとき出力するメッ
1784 セージ (@code{"Emergency stop"})
1785 @end defvar
1787 @defvar latex-message-kanji-code
1788 jlatex コマンドの出力するメッセージの漢字コード.タイプセットバッファ
1789 の出力が化ける時は、これを設定する(2, Nemacsでのみ有効)
1790 @end defvar
1792 @defvar NTT-jTeX
1793 NTT-j@TeX{}使用時@code{t}にする(@code{nil})
1794 @end defvar
1796 @defvar YaTeX-item-regexp
1797 item化コマンドの正規表現(@code{"\\\\(sub\\)*item"})
1798 @end defvar
1800 @defvar YaTeX-nervous
1801 ローカル辞書を用いる時 @code{t} (@code{t})
1802 @end defvar
1804 @defvar YaTeX-sectioning-regexp
1805 セクション区切り設定コマンドの正規表現
1806 (@code{"part\\|chapter\\|\\(sub\\)*\\(section\\|paragraph\\)"})
1807 @end defvar
1809 @defvar YaTeX-fill-inhibit-environments
1810 fill を抑止する環境名のリスト(@code{'("verbatim" "tabular")})
1811 @end defvar
1813 @defvar YaTeX-uncomment-once
1814 領域uncommentで行頭の複数の@code{%}を全て削除するか(@code{nil})
1815 @end defvar
1817 @defvar YaTeX-close-paren-always
1818 開き括弧の入力で常に閉じ括弧を入力する(@code{t})
1819 @end defvar
1821 @defvar YaTeX-auto-math-mode
1822 数式モードの切り替えを自動的に行う。(@code{t})
1823 @end defvar
1825 @defvar YaTeX-math-key-list-private
1826 数式イメージ補完で用いる (プリフィクスキー . 対応補完テーブル) の
1827 alist(@code{nil})。補完テーブルの書き方については
1828 @file{yatexmth.el}を参照。
1829 @end defvar
1831 @defvar YaTeX-default-pop-window-height
1832 1画面の時にタイプセットバッファを初めて作成する時の高さ。数値で行数、数字
1833 文字列でEmacsウィンドウに対する百分率(10)。
1834 @end defvar
1836 @defvar YaTeX-help-file
1837 共用ヘルプファイル(@file{$EMACS/etc/YATEXHLP.jp})
1838 @end defvar
1840 @defvar YaTeX-help-file-private
1841 個人用ヘルプファイル(@file{"~/YATEXHLP.jp"})
1842 @end defvar
1844 @defvar YaTeX-no-begend-shortcut
1845 @kbd{[prefix] b ??} のショートカットを使わず、@kbd{[prefix] b} だけで補完
1846 入力に入る(@kbd{nil})
1847 @end defvar
1849 @defvar YaTeX-hilit-pattern-adjustment-private
1850 正規表現とそれにマッチするものの論理的意味をシンボルであらわしたものの
1851 リスト…のリスト。hilit19 を組み込んでいる時のみ有効。
1852 詳しくは @code{(assq 'yatex-mode hilit-patterns-alist)}
1853 した結果と、変数 @code{YaTeX-hilit-pattern-adjustment-default} の値(と場合
1854 によっては hilit19 のドキュメント)を参照せよ。
1855 @end defvar
1857 @defvar YaTeX-sectioning-level
1858 LaTeXのセクション単位宣言コマンドとその論理的高さのalist。
1859 @end defvar
1861 @defvar YaTeX-hierarchy-ignore-heading-regexp
1862 Hierarchy バッファは通常ファイルヘッダとして、LaTeXのセクション宣言コマン
1863 ドの引数を検索し、それがなければコメント行を探すが、その際にヘッダとしては
1864 意味を持たないパターンをこの変数に設定する。デフォルトでは RCS ヘッダとモー
1865 ド指定行(-*- xxx -*-)が設定されている。
1866 @end defvar
1868 @defvar YaTeX-skip-default-reader
1869 Non-nil に設定するとsection型コマンドの引数入力時、アドイン関数がなければ
1870 ミニバッファでの読み込みをせずに入力を完了させる。
1871 @end defvar
1873 @defvar YaTeX-create-file-prefix-g
1874 @code{\include}などで @kbd{prefix g}した時に、ジャンプ先が存在しないファイ
1875 ルであってもオープンする(@code{nil})。
1876 @end defvar
1878 @defvar YaTeX-simple-messages
1879 各種補完時のメッセージ出力を簡素化する(@code{nil})。
1880 @end defvar
1882 @defvar YaTeX-hilit-sectioning-face
1883 色付けが有効な時の @code{\part} の色
1884 (@code{'(yellow/dodgerblue yellow/slateblue)})。
1885 リストの第一要素は @code{hilit-background-mode} が @code{'light} の時の、
1886 第二要素は @code{'dark} の時の @code{\chapter} の色で、文字色/背景色 のよ
1887 うに指定する。
1888 @end defvar
1890 @defvar YaTeX-hilit-sectioning-attenuation-rate
1891 色付けが有効な時の、@code{\subparagraph} の色を @code{\chapter} の濃度の何
1892 %薄くしたものにするか(@code{'(15 40)}。@code{YaTeX-hilit-sectioning-face}
1893 の項参照。
1894 @end defvar
1896 @node Sample definitions, Hook variables, All customizable variables, Lisp variables
1897 @comment node-name, next, previous, up
1898 @subsection カスタマイズ変数設定例
1899 @cindex 設定例[せつていれい]
1901 たとえば、prefix キーとして@kbd{ESC}を使用し、新たな補完候補を格納するファ
1902 イルを、@file{~/src/emacs/yatexrc} にし、行頭の prefix をタブ文字一つに変
1903 えたいときは、
1905 @lisp
1906 (setq YaTeX-prefix "\e"
1907 YaTeX-user-completion-table "~/src/emacs/yatexrc"
1908 YaTeX-fill-prefix " ")
1909 @end lisp
1911 @noindent
1912 を @file{~/.emacs} に加えます。
1914 @node Hook variables, Hook file, Sample definitions, Lisp variables
1915 @comment node-name, next, previous, up
1916 @subsection hook変数
1917 @cindex hook変数[hookへんすう]
1918 @cindex yatex-mode-hook
1919 @cindex yatex-mode-load-hook
1921 また、hook 変数 @code{yatex-mode-hook}, @code{yatex-mode-load-hook} を用
1922 意しています。すべての yatex-mode のバッファで作用させたいものは、
1923 @code{yatex-mode-hook} に記述し、@file{yatex.el} をロードする時だけ作用さ
1924 せたいものは@code{yatex-mode-load-hook} に記述します。例えば、
1925 @code{outline-minor-mode} を利用する場合、それぞれのバッファで
1926 @code{outline-minor-mode} を有効にしたいので、@code{yatex-mode-hook} を次
1927 のように設定します。
1929 @lisp
1930 (setq yatex-mode-hook
1931 '(lambda () (outline-minor-mode t)))
1932 @end lisp
1934 @noindent
1935 逆に、独自のキー定義を行いたい時などは、@code{yatex-mode-load-hook} を利用
1936 します。例えば、begin 型補完において、 document や、enumerate 以外の環境名
1937 もショートカットキーで入れたいなどという時は、次のようにします。以下の例は、
1938 @kbd{[prefix] ba} で @code{\begin@{abstract@}}, @code{\end@{abstract@}} を
1939 挿入します。
1941 @lisp
1942 (setq yatex-mode-load-hook
1943 '(lambda() (YaTeX-define-begend-key "ba" "abstract")))
1944 @end lisp
1946 なお、新たなキーの定義には、関数 @code{YaTeX-define-key}
1947 @code{YaTeX-define-begend-key}を利用するようにしてください。
1949 @node Hook file, , Hook variables, Lisp variables
1950 @comment node-name, next, previous, up
1951 @subsection hook用ファイル
1953 変数 @code{yatex-mode-load-hook} で定義する内容が多い時は、
1954 @file{yatexhks.el}というファイルを作り、その中に野鳥関連の設定を書く事で、
1955 初期化の時に自動的にロードします。
1958 @node Add-in functions, , Lisp variables, Customizations
1959 @comment node-name, next, previous, up
1960 @section 付加関数(アドイン関数)
1962 各種補完時に、環境名やコマンド名に応じたきめ細やかな補完入力機能を実現す
1963 るための関数を作成することができます。この関数の作成方法や、組み込み方法に
1964 関しては、@code{yatexadd.doc} をご覧ください。
1966 @node Etc, Copying, Customizations, Top
1967 @comment node-name, next, previous, up
1968 @chapter その他
1970 野鳥の標準の La@TeX{} コマンドの辞書には、作者が頻繁に使うものしか登録さ
1971 れていません。これは、補完候補に使いそうもないコマンドが存在して、補完した
1972 いコマンドを出すまでのストローク数を増やしてしまう事を防止するためです。標
1973 準辞書にないコマンドも、できるだけ補完入力方式を利用し、ユーザ辞書を充実さ
1974 せることで、あなたの La@TeX{} スタイルにあった野鳥へと育っていくことでしょ
1975 う。
1977 @node Copying, Concept Index, Etc, Top
1978 @comment node-name, next, previous, up
1979 @chapter 取り扱い
1981 本プログラムはフリーソフトウェアです。本プログラムを使用して生じたいかな
1982 る結果に対しても作者は責任を負わないこととします。転載等に関しては制限いた
1983 しません。常識的に扱ってください。また、使用している旨をメイルでお知らせい
1984 ただくと、作者は喜んでサポートに励むことでしょう。
1986 苦情、希望、バグ報告、感想等は歓迎いたします。
1987 連絡は yuuji@@ae.keio.ac.jp または、
1988 pcs39334@@asciinet.or.jp まで(1995年3月現在)。
1989 継続的に使用してくださる方はメイリングリスト「fj野鳥の会」に
1990 是非加入してください。加入方法については本パッケージの @file{docs/qanda}
1991 ファイルの「その他」の章を御覧ください。
1993 仕様は、予告なく確実に(気分次第で)変更されます:-p。
1995 @flushright
1996 広瀬雄二
1997 @end flushright
1999 @node Concept Index, , Copying, Top
2000 @comment node-name, next, previous, up
2001 @unnumbered 索引
2002 @printindex cp
2004 @c カスタマイズ変数索引を索引と分離する場合にはコメントアウトを外す!!!
2005 @c @node Variable Index
2006 @c @comment node-name, next, previous, up
2007 @c @unnumbered カスタマイズ変数索引
2008 @c @printindex vr
2010 @contents
2012 @bye
2014 @c Local Variables:
2015 @c fill-column: 74
2016 @c fill-prefix: nil
2017 @c End:
2019 Tag table:
2021 End tag table