yatex

view docs/yatexj @ 272:78d0fdc0459c

Add `@directory' entries to info sources.
author HIROSE Yuuji <yuuji@gentei.org>
date Fri, 11 May 2012 15:43:40 +0900
parents d467c0fb6083
children 784b25b062cc
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.
6 START-INFO-DIR-ENTRY
7 * YaTeX: (yatexj). Yet Another tex-mode for Emacs (Japanese).
8 END-INFO-DIR-ENTRY
14 
15 File: yatexj, Node: Top, Next: Intro, Prev: (dir), Up: (dir)
17 * Menu:
19 * Intro:: はじめに
20 * Terminology:: マニュアル参照上の注意
21 * Main features:: 主な機能
22 * Installation:: インストール
23 * Invocation:: プロセス起動
24 * %#notation :: %#記法
25 * Completion:: 補完入力
26 * Local dictionary:: ローカル辞書
27 * Commenting out:: コメントアウト
28 * Cursor jump:: カーソルジャンプ
29 * Modifying/Deleting:: LaTeXコマンドの変更/削除
30 * Filling:: 桁揃え
31 * Includeonly:: 勝手に includeonly
32 * What column:: カラム位置ガイド
33 * Intelligent newline:: おまかせ改行
34 * Usepackage cheker:: 先回りusepackage
35 * Changing mode of YaTeX:: 野鳥動作モード変更
36 * Online help:: LaTeXオンラインヘルプ
37 * Inclusion hierarchy browser:: ファイル分割階層構造の表示
38 * Cooperation with other packages:: 他パッケージとの連携
39 * Customizations:: カスタマイズ
40 * Etc:: その他
41 * Copying:: 取り扱い
42 * Concept Index:: 索引
46 
47 File: yatexj, Node: Intro, Next: Terminology, Prev: Top, Up: Top
49 はじめに
50 ********
52 野鳥は、GNU Emacs で LaTeX 用の文書を作成する時に pLaTeX などのタイプセッ
53 トコマンドや、プレヴューアの起動を Emacs 編集画面中から行えるようにすると
54 共に、拡張性の高い種々の補完機能によりソーステキストの編集を支援します。さ
55 らに LaTeX コマンドのオンラインヘルプによりマニュアルを調べる手間を軽減し
56 ます。
58 English manual *Note Top: (yatexe)Top.
61 
62 File: yatexj, Node: Terminology, Next: Main features, Prev: Intro, Up: Top
64 本マニュアル参照上の注意
65 ************************
67 本マニュアルでは以下の表記を用います。
69 * begin型コマンド
71 `\begin{環境} 〜 \end{環境}'という形式のLaTeXコマンドを指します。
72 begin型コマンドを補完入力することをbegin型補完と呼びます。
74 * section型コマンド
76 `\section{タイトル}'や`\mbox{内容}'のように引数を取るLaTeXコマンドを
77 指します。
79 * maketitle型コマンド
81 `\maketitle'や`\tableofcontents'のように引数を取らないLaTeXコマンドを
82 指します。
84 * large型コマンド
86 `{\large ...}' や `{\tt ...}' のようなフォント/サイズ指定子を指します。
88 * `[prefix]'
90 野鳥の機能を呼び出すためのプリフィクスキー。デフォルトでは`C-c'に割り
91 当てられているので、特に変更していない場合本マニュアルの `[prefix]'
92 という表記は、`C-c' と読み換えてください。
95 
96 File: yatexj, Node: Main features, Next: Installation, Prev: Terminology, Up: Top
98 主な機能
99 ********
101 * タイプセッタやプレヴューアなどの編集画面からの起動(`C-c t')
102 * カーソル位置によらない固定リジョンの部分タイプセット
103 * \includeonlyのワンタッチ更新
104 * エラー箇所への自動ジャンプ(`C-c '')
105 * `\begin{}, \end{}, \section...' などの LaTeX コマンドの補完入力(`C-c
106 b', `C-c s', `C-c l', `C-c m')
107 * 既に入力したテキストを環境やコマンド引数の中に取り込む括り補完(`C-u'
108 +通常補完キー)
109 * セクション区切り入力時の文書構造アウトライン表示
110 * セクションコマンドの一括シフト (*Note view-sectioning::)
111 * 補完辞書の学習
112 * LaTeX の環境やコマンドに応じたガイド付き引数入力
113 * 野鳥にないガイド付き引数入力関数の自動生成(`yatexgen.el')
114 * LaTeX コマンドの削除/変更(`C-c k', `C-c c')
115 * ファイル間、`\begin'<->`\end'間、`\ref'<->`\label'間、
116 `\cite'<->`\bibitem'ジャンプ(`C-c g')
117 * 一括コメントアウト/アンコメントアウト(`C-c >', `C-c <', `C-c ,', `C-c
118 .')
119 * アクセント記号/数式環境用コマンド/ギリシャ文字の入力支援(`C-c a',
120 `;', `/')
121 * tabular/array環境のカラム位置ガイド
122 * 標準的 LaTeX コマンドのオンラインヘルプ(`C-c ?', `C-c /')
123 * ドキュメントのインクルード構造の視覚的表示とバッファ切り替え(`C-c d')
124 * 補完入力したマクロに応じて必要な \userpackage を入れてくれる先回り
125 userpackage
126 * \labelを打つことはもう忘れよう! refやcite補完入力で自動生成します
129 
130 File: yatexj, Node: Installation, Next: Invocation, Prev: Main features, Up: Top
132 起動法
133 ******
135 野鳥起動のための設定
136 ====================
138 ~/.emacsに下の2項目を加えます。
140 (setq auto-mode-alist
141 (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
142 (autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
144 次に野鳥の emacs-lisp ファイル群を置くディレクトリを load-path に加えます。
145 たとえば、 `~/src/emacs/yatex'に置くのであれば、
147 (setq load-path (cons (expand-file-name "~/src/emacs/yatex") load-path))
149 などとします。
151 以上の設定により、拡張子が .tex であるファイルを編集すると自動的に野鳥が
152 ロードされます。野鳥が正常に起動できたときはモードラインの表示が「やてふ」
153 に変わります。
156 タイプセッタ/プレヴューア環境の設定
157 ===================================
159 利用する外部プログラムに関する以下の変数を確認し、必要なら正しい値に変更
160 します。
161 `tex-command'
162 ... 起動するタイプセッタのコマンド名
163 `dvi2-command'
164 ... 起動するプレヴューアのコマンド名
165 `NTT-jTeX'
166 ... 改行+インデントによって、タイプセット後の字間が空いてしま
167 うのを抑制する場合にtにする(古いNTT-jTeXで顕著に現れる)。具体的には、
168 fillするときに各行の終わりに%を付加するようになる。
169 `YaTeX-kanji-code'
170 ... 文書を作成する時の漢字コード
171 `dviprint-command-format'
172 ... ファイルの印刷に使われるコマンド列の書式
173 `makeindex-command'
174 ... makeindexコマンド
176 これらを変更する場合は、やはり`~/.emacs'にて、たとえば(setq tex-command
177 "pdflatex") のようにしてください。どのような値をセットすれば良いかについて
178 は、*Note All customizable variables::を参照してください。
182 
183 File: yatexj, Node: Invocation, Next: %#notation, Prev: Installation, Up: Top
185 latexコマンド起動
186 *****************
188 LaTeXソースの編集中、次のキー入力により、platex などのタイプセットプログラ
189 ム(以後タイプセッタと呼ぶ)、プレヴューアなどの起動ができます。
191 `[prefix] t j'
192 ... タイプセッタ(platex)起動
193 `[prefix] t r'
194 ... タイプセッタ起動(領域指定)
195 `[prefix] t e'
196 ... タイプセッタ起動(ポイント位置の環境または数式モードのみ対
197 象)
198 `[prefix] t k'
199 ... 動作中のタイプセッタの停止
200 `[prefix] t b'
201 ... jbibtex起動
202 `[prefix] t i'
203 ... makeindex起動
204 `[prefix] t d'
205 ... タイプセット完了後dvipdfmx起動
206 `[prefix] t p'
207 ... プレヴューア起動
208 `[prefix] t l'
209 ... lpr(プリントアウト用)コマンド起動
210 `[prefix] t s'
211 ... xdvi -remote でのサーチ
213 * Menu:
215 * Calling typesetter:: タイプセッタ起動
216 * Calling previewer:: プレヴューア起動
217 * Print out:: プリントアウト用コマンドの起動
220 
221 File: yatexj, Node: Calling typesetter, Next: Calling previewer, Prev: Invocation, Up: Invocation
223 タイプセッタ起動
224 ================
226 タイプセッタを起動すると、編集ウィンドウが2つに分割され、片方のウィンド
227 ウにタイプセット画面が表示されます。出力されるメッセージと連動しタイプセッ
228 トバッファは自動的にスクロールします。もし、途中でエラーが起こって止まって
229 しまった場合にはタイプセットバッファに移り、(`C-x o') タイプセッタの出して
230 いる ? プロンプトに対して、`x' (処理の中断)などの指示を送ることができます。
231 エラーを修正する場合は、
233 `[prefix] ''
234 `(prefix+アポストロフィ)'
235 ... 直前のエラー発生行へジャンプ
237 を入力することにより、タイプセッタがエラーを発生した行に移ることができます。
238 また、タイプセッタの出力する overfull hbox などのウォーニング行にも対応し
239 ていますので、順次 `[prefix] '' を押すことにより、一つ前のウォーニング発生
240 行にジャンプしていきます。
242 もし、気になるエラー行があった場合は、タイプセットバッファで、エラーの表
243 示されている行にカーソルを合わせスペースキーを押すと LaTeX ソースの対応す
244 る行にジャンプします。
247 領域タイプセット
248 ----------------
250 ポイントとマークの間、あるいはテキスト中に埋め込んだ `%#BEGIN' と`%#END'
251 の間の領域(*Note %#notation::)だけを切り取ってタイプセットすることができま
252 す。この場合メインファイルのプリアンブルが一時ファイルのプリアンブルとして
253 使われます。したがってプリアンブルにないマクロ定義が領域内にあるとエラーに
254 なります。領域タイプセットを使う場合、必ずマクロ定義はプリアンブル
255 (`\begin{document}'より前)に置くようにして下さい。一時ファイルはメインファ
256 イルのあるディレクトリの`texput.tex'という名前で出力されるので、上書きには
257 注意してください。
260 環境タイプセット
261 ----------------
263 `[prefix] te' を押すと、ポイント位置の最も内側の環境、または数式モード内
264 の場合はその数式モード全体が自動的に領域選択されて、領域タイプセットを呼び
265 出します。tabular環境や数式モードで複雑なものを作っている場合は確かめたい
266 部分だけを確認できるので便利です。これも `texput.tex' に該当部分を書き出し
267 ます。プレヴューアで `texput.dvi' を開いたままにしておけば修正と確認が素早
268 くできるでしょう。
271 
272 File: yatexj, Node: Calling previewer, Next: Print out, Prev: Calling typesetter, Up: Invocation
274 プレヴューア起動
275 ================
276 `[prefix] t p' によりプレヴューアの起動ができます。さらに、もしあなたが、-
277 remote 機能つきのxdviを利用している場合は `[prefix] t s' を押すことにより
278 カーソル位置の文字列を検索してそのページを表示するようにすでに起動中のxdvi
279 に命令を送ります。これにより、現在編集中の箇所のタイプセット結果を即座に見
280 ることができます。
284 
285 File: yatexj, Node: Print out, Prev: Calling previewer, Up: Invocation
287 プリントアウト
288 ==============
290 `[prefix] t l'を押してプリントアウトを指示すると、出力開始/終了ページを
291 聞いてくるので、それぞれに答えます。これを省略したい時は、
292 universal-argument をつけ、
295 `C-u [prefix] t l'
296 ... ページ確認省略lpr起動
298 のように起動してください。
301 
302 File: yatexj, Node: %#notation, Next: Completion, Prev: Invocation, Up: Top
304 %#記法
305 ******
307 本文中に`%#'ではじまるキーワードを埋め込むことでタイプセッタ起動等の制御
308 をすることができます。
310 * Menu:
312 * Changing typesetter:: タイプセット用コマンドの変更
313 * Splitting input files:: 入力ファイル分割
314 * Fix region for typesetting:: 領域の固定
315 * lpr format:: プリントアウトコマンド用フォーマット
316 * Controlling which command to invoke:: その他の起動コマンド制御
317 * Editing %# notation:: %#記法の編集
320 
321 File: yatexj, Node: Changing typesetter, Next: Splitting input files, Prev: %#notation, Up: %#notation
323 タイプセット用コマンド変更
324 ==========================
326 起動するコマンドを変えたい時は本文中に次のような行を書きます。
329 %#!jlatex-ntt
331 NTT jTeX と、ASCII jTeX を使い分けたいような場合に便利でしょう。
335 
336 File: yatexj, Node: Splitting input files, Next: Fix region for typesetting, Prev: Changing typesetter, Up: %#notation
338 入力ファイル分割
339 ================
341 また、章毎に別ファイルの .tex を作成している場合で、`main.tex'から
342 `sub.tex' を `\include'しているような時は、`sub.tex'の任意の位置に次のよう
343 な行を埋め込みます。
345 %#!platex main.tex
348 上の例のようにコマンド名だけでなく引数も書いた場合には、全てをそのまま
349 shell に渡すので次のように書けば、ghostview などをプレヴューアに使う時に便
350 利です。
353 %#!platex main && dvi2ps main.dvi > main
355 なお、この行の最後の単語のピリオド以前を「メインファイル」のベースネームで
356 あると仮定します(上の2つの場合どちらも`main')。この行に記述した、`%f'はメ
357 インファイル名に、 `%r' はメインファイルの拡張子を取り除いた部分に置換され
358 ます。ただし、`%f,%r'を利用した場合、初回タイプセット時に必ずメインファイ
359 ル名の入力を促されます。
361 `[prefix] g' (*Note Cursor jump::参照) でのファイル間ジャンプを有効に機
362 能させるため、入力ファイル分割時には次のことに注意して下さい。
364 1. サブディレクトリを作って、その中にサブファイルを置くことはできるがサ
365 ブディレクトリのサブディレクトリには置けない。
366 2. メインファイルからサブディレクトリ内のファイルを include する時には、
367 相対パス指定を用いて、`\include{chap1/sub}'のように記述。
368 3. メインファイルが一つ上のディレクトリにある場合も、サブファイルには
369 %#!platex main.tex のように記述する(../mainではない)。
374 
375 File: yatexj, Node: Fix region for typesetting, Next: lpr format, Prev: Splitting input files, Up: %#notation
377 領域の固定
378 ==========
380 `[prefix] tr' の領域指定のタイプセットでは、とくに指定のないかぎり、
381 `C-SPC'でマークした位置と、ポイント(カーソル位置)の間を領域とみなしますが、
382 必ず決まった領域をタイプセットしたい場合は、その領域を
384 %#BEGIN
385 <渡したい領域>
386 %#END
388 のように`%#BEGIN'と`%#END'で囲み、カーソルを「`%#BEGIN'以降」に置いてくだ
389 さい。この時の領域決定規則をまとめると次のようになります。
392 1. カーソル位置よりバッファの先頭方向に`%#BEGIN'というキーワードがある場
393
395 1. `%#BEGIN'よりバッファの末尾方向に`%#END'というキーワードが見つかっ
396 た場合。
397 =>`%#BEGIN' から、その `%#END' のある位置まで。
398 2. `%#END' が見つからなかった場合。=>バッファの最後尾まで。
400 2. カーソル位置よりバッファの先頭方向に `%#BEGIN' というキーワードが
401 見つからなかった場合。
402 =>マーク(`C-SPC'位置)とポイント(カーソル位置)の間の領域。
404 tabular 環境を何度も試行錯誤しているような場合は、`\begin'の前の行に
405 `%#BEGIN' と書き、`\end' の次の行に `%#END' と書いておくと簡単に作表結果を
406 テストすることができます。また、長い .tex ファイルの後半に `%#BEGIN' を書
407 いておけば、前半の部分は無視できます。このBEGINとEND の消し忘れには十分ご
408 注意下さい。
412 
413 File: yatexj, Node: lpr format, Next: Controlling which command to invoke, Prev: Fix region for typesetting, Up: %#notation
415 lprフォーマット
416 ===============
418 まず、プリントアウト用コマンド列のフォーマットについて説明します。コマン
419 ド列フォーマットは、3つの Lisp 変数によって表現されます。デフォルトの
420 dvi2ps 用のフォーマットを例に説明します。
422 `(1)dviprint-command-format'
423 `"dvi2ps %f %t %s | lpr"'
425 `(2)dviprint-from-format'
426 `"-f %b"'
428 `(3)dviprint-to-format'
429 `"-t %e"'
431 実際にプリントアウトする時は、(1)中の %s がファイル名に置き換えられ、%f が
432 (2)の内容、%t が(3)の内容に置き換えられます。その際に(2)の文字列中の %b は
433 「出力開始ページ」、(3)の文字列中の %e は「出力終了ページ」に置き換えられ
434 ます。もし、ページを指定しない時には、%f, %t 両方とも無視されます。
436 この、dviprint-command-format を臨時に変えたい時は、LaTeX のソーステキス
437 ト中の任意の場所に、
439 %#LPR dvi2ps %f %t %s | 4up -page 4 | texfix | lpr -Plp2
441 のように書いて下さい。プリントアウトするページ範囲をいちいち聞かせないよう
442 にする時に
444 %#LPR dvi2ps %s | lpr
446 などとするのも便利かもしれません。
449 
450 File: yatexj, Node: Controlling which command to invoke, Next: Editing %# notation, Prev: lpr format, Up: %#notation
452 その他の起動コマンド制御
453 ========================
455 LaTeX 文書に関連するコマンドは以下の %# 記法で指定することができます。
457 `%#BIBTEX'
459 ... makeindexを行なうコマンドライン([prefix] t b)
460 `%#MAKEINDEX'
462 ... bibtexを行なうコマンドライン([prefix] t i)
464 行頭がこれらのキーワードで始まる行をLaTeX文書の先頭付近に書いておけば、そ
465 れで指定したコマンドを起動できます。
468 
469 File: yatexj, Node: Editing %# notation, Prev: Controlling which command to invoke, Up: %#notation
471 %#記法自体の編集
472 ================
474 以上のような`%#'で始まる各種制御記法を編集するためには
476 `[prefix] %'
477 ... `%#'記法編集メニュー
479 を押します。
481 !)Edit-%#! B)EGIN-END-region L)Edit-%#LPR
483 というメニューが出て来るので、`%#!'に続くコマンドを変更したい時には`!'を、
484 `%#LPR'で lpr フォーマットを変えたい時は`l'を、あらかじめ設定したリジョン
485 を `%#BEGIN' 〜 `%#END' で括りたい時は、`b'を押します。`b'を選んだ時には、
486 それまでバッファ中に置かれていた`%#BEGIN', `%#END' が自動的に消去されます。
489 
490 File: yatexj, Node: Completion, Next: Local dictionary, Prev: %#notation, Up: Top
492 補完入力
493 ********
495 LaTeX での環境名などは、野鳥の補完機能を利用して能率的に入力することがで
496 きます。
498 * Menu:
500 * begin型補完::
501 * section型補完::
502 * large型補完::
503 * maketitle型補完::
504 * Arbitrary completion:: 随時補完
505 * end補完::
506 * Accent mark completion:: アクセント記号補完
507 * Image completion:: 数式記号イメージ補完
508 * Greek letter completion:: ギリシャ文字補完
511 
512 File: yatexj, Node: begin型補完, Next: section型補完, Prev: Completion, Up: Completion
514 begin型補完
515 ===========
517 `\begin{env}...\end{env}'の様な形式の入力の補完をbegin型補完と呼ぶことに
518 します。begin 型補完は、
520 `[prefix] b'
521 ... begin 型補完開始(標準では `C-c b')
523 で始まります。頻繁に用いられる次の LaTeX 環境の補完は、[prefix] `b' に続く
524 次の1文字を入力するだけで、`\begin{xxx}...\end{xxx}'を完成させます。
526 `[prefix] b c'
527 ... `\begin{center}...\end{center}'
528 `[prefix] b d'
529 ... `\begin{document}...\end{document}'
530 `[prefix] b D'
531 ... `\begin{description}...\end{description}'
532 `[prefix] b e'
533 ... `\begin{enumerate}...\end{enumerate}'
534 `[prefix] b E'
535 ... `\begin{equation}...\end{equation}'
536 `[prefix] b i'
537 ... `\begin{itemize}...\end{itemize}'
538 `[prefix] b l'
539 ... `\begin{flushleft}...\end{flushleft}'
540 `[prefix] b m'
541 ... `\begin{minipage}...\end{minipage}'
542 `[prefix] b t'
543 ... `\begin{tabbing}...\end{tabbing}'
544 `[prefix] b T'
545 ... `\begin{tabular}...\end{tabular}'
546 `[prefix] b ^T'
547 ... `\begin{table}...\end{table}'
548 `[prefix] b p'
549 ... `\begin{picture}...\end{picture}'
550 `[prefix] b q'
551 ... `\begin{quote}...\end{quote}'
552 `[prefix] b Q'
553 ... `\begin{quotation}...\end{quotation}'
554 `[prefix] b r'
555 ... `\begin{flushright}...\end{flushright}'
556 `[prefix] b v'
557 ... `\begin{verbatim}...\end{verbatim}'
558 `[prefix] b V'
559 ... `\begin{verse}...\end{verse}'
561 上記のもの以外の環境名は Emacs の持つインクリメンタルな補完機能を用いて
562 入力します(上記の環境名も以下の補完入力可能)。
564 `[prefix] b SPC'
565 ... begin 型補完入力
567 `[prefix] b SPC' と入力すると、最下行のミニバッファに
569 Begin environment(default document):
571 と表示されます。ここで、何も入れずにリターンキーのみ押すと、括弧内に出てい
572 るデフォルトの環境名が入力されますが、適当な環境名を入力すると、`\begin{環
573 境名} … \end{環境名}'が文書中に挿入されます。ミニバッファで環境名を入力す
574 るときに、環境名の頭文字を入力し「スペース」をたたくと、一致する環境名が内
575 部テーブルに存在した場合、正しい環境名に補完されるので、入力の手間が省けま
576 す。内部テーブルに存在しない環境名を入力した時はユーザ専用のテーブルに登録
577 され、さらにそのテーブルを自動的に、ユーザ辞書(デフォルトでは
578 `~/.yatexrc')に保存します。
580 さらに、特定の環境を補完入力した時にはその環境で必ず用いられるエントリを自
581 動挿入します(例: `itemize'環境における`\item'など)。挿入されたエントリが不
582 要な場合にはundoによって消去して下さい。
585 既に書いたテキストを環境で括る
586 ------------------------------
588 ところで、最初に書いてしまったブロックを後から、itemize 環境の中に閉じこ
589 めたいと思うことがありますが、そのようなときは、あらかじめ閉じこめたい段落
590 をマークして、begin 型補完の各コマンドの `[prefix]' の次の『小文字の 'b'』
591 を『大文字』に変えて起動して下さい。(または、`C-u' を先に打ち、universal
592 argument をつけても可能です)
594 例えばあるパラグラフを description 環境の中に入れたいときは、そのパラグ
595 ラフをマークしてから、
597 `[prefix] B D'
598 `(または ESC 1 [prefix] b D)'
599 `(または C-u [prefix] b D など)'
601 とタイプしてください。これは、`[prefix] b SPC'の補完入力にもあてはまり、
602 `b' を大文字に変えて、`[prefix] B SPC' とタイプすれば、あらかじめマークし
603 ておいたリジョンを、begin と end の環境で括ります。
606 
607 File: yatexj, Node: section型補完, Next: large型補完, Prev: begin型補完, Up: Completion
609 section型補完
610 =============
612 `\section{目的}' のような形式の入力の補完を section 型補完と呼ぶことにし
613 ます。section 型補完は、
615 `[prefix] s'
616 ... section 型補完
619 で実行します。`[prefix] s' を入力するとミニバッファに、
621 (C-v for view-section) \???{} (default documentclass):
623 というプロンプトが現れるので、そこで `section' のような LaTeX コマンド名を
624 入力します。ここでもリターンキーのみで括弧内のデフォルト値が選択されるほか、
625 `chapter'などのような頻度の高い名称入力にはスペースキーによる補完機能が有
626 効です。 次に、{}の中身の入力を促す、
628 \section{???}:
630 というプロンプトが現れるので、セクションのタイトルなどを入力します。たとえ
631 ば、
633 (C-v for view-section) \???{} (default documentclass): section
634 \section{???}: 目的
636 のように入力した場合は、文章中に
638 \section{目的}
640 が挿入され、
642 (C-v for view-section) \???{} (default section): vspace*
643 \vspace*{???}:
645 のように{}の中身を省略したときは、
647 \vspace*{}
649 だけが挿入され、改行はせずカーソルは自動的に中括弧の内側に移動します。
651 * Menu:
653 * 2個以上の引数をとる section型コマンド::
654 * Enclose section-type command:: 括り補完
655 * Recursive completion:: 再帰補完
656 * view-sectioning:: セクション区切りのアウトライン表示
657 * label-generation:: ラベル自動生成
660 
661 File: yatexj, Node: 2個以上の引数をとる section型コマンド, Next: Enclose section-type command, Prev: section型補完, Up: section型補完
663 2個以上の引数をとる section型コマンド
664 -------------------------------------
666 ところで、`\addtolength{\topmargin}{8mm}' などのように、引数を二つ以上取
667 る LaTeX コマンドがあります。このようなコマンドの補完入力には、 section 型
668 補完呼び出しに引数を付けてください。例えば上の`addtolength' の例であれば、
669 引数2を指定します。つまり、
671 C-u 2 [prefix] s (または、ESC 2 [prefix] s)
673 と section 型補完を呼び出した後、
675 (Ctrl-v for view-section) \???{} (default vspace*): addtolength
676 \addtolength{???}: \topmargin
677 Argument 2: 8mm
679 のように入力してください。最初の addtolength の部分と、第一引数である
680 \topmargin の入力は当然スペースによる補完入力が可能です。ユーザ辞書に登録
681 される LaTeX コマンドには、この引数の数も学習されるので、最初の補完の時引
682 数の数を指定して起動しておけば、以後の補完時には、記憶された個数だけ引数を
683 聞いて来るようになります。あとで引数の個数を変えたい時は、再び `C-u' を用
684 いて個数を指定し直すことで、自動的に辞書中の引数の個数の部分を更新します。
688 
689 File: yatexj, Node: Enclose section-type command, Next: Recursive completion, Prev: 2個以上の引数をとる section型コマンド, Up: section型補完
691 既に書いたテキストを括る
692 ------------------------
694 また、起動コマンドの`s'を大文字に変えて起動すると、あらかじめ書いた文章
695 を section 型コマンドの第一引数として括ります。
698 
699 File: yatexj, Node: Recursive completion, Next: view-sectioning, Prev: Enclose section-type command, Up: section型補完
701 再帰補完
702 --------
704 高度な使い方になるかもしれませんが、section型補完の引数の入力時にさらに
705 補完入力を利用することができます(section/large/maketitle型に限る)。section
706 型コマンドの引数に更に LaTeX コマンドが来る場合にはミニバッファで野鳥の補
707 完キーを再帰的に入力することで引数の入力も効率的に行なえます。
710 
711 File: yatexj, Node: view-sectioning, Next: label-generation, Prev: Recursive completion, Up: section型補完
713 セクション区切りのアウトライン表示
714 ----------------------------------
716 通常のsection型補完の時にミニバッファで`C-v'を押すと現在存在するセクショ
717 ン区切りコマンド全てを `*Sectioning Lines*'というバッファに一覧表示します
718 (「<<--」のついている行がもっとも近いセクション区切り)。この時ミニバッファ
719 で`C-p', `C-n' を押すと`part', `chapter', ..., `subparagraph' のコマンドが
720 論理階層の高さにしたがって上下します。また、`C-v', `M-v' を押すとセクショ
721 ン区切り一覧バッファがスクロールし、数字の`0'〜`7'を押すとある高さ以上のセ
722 クション区切りだけを選んで表示します(実際にやって見れば分かります)。
724 `*Sectioning Lines*'バッファは、
726 `M-x YaTeX-section-overview'
727 ... セクション区切り一覧バッファを生成
729 で作成することができます。このバッファを選択し任意の行でスペースを押すと、
730 該当するセクション区切りのある本文中の場所にジャンプします。さらに、同バッ
731 ファで `u' を押すと、ソーステキストの対応するセクションコマンドが一階層上
732 がり(例: subsection が section に変わる)、`d'を押すと一階層下がります。
733 `*Sectioning Lines*'バッファにあるセクション区切りの行をマークしておいて
734 `U'を押すとリジョン内のものに対応するソーステキストのセクションコマンドす
735 べてが一階層上がり、`D'を押すと下がります。セクション区切り一覧バッファで
736 利用できるキーコマンドには以下のものがあります。
738 `SPC'
739 ... 対応するソース行へジャンプ
740 `.'
741 ... 対応するソース行を表示
742 `u'
743 ... カーソル位置に対応するセクションコマンドを一階層上げる
744 `d'
745 ... カーソル位置に対応するセクションコマンドを一階層下げる
746 `U'
747 ... マークしたセクションコマンドを一階層上げる
748 `D'
749 ... マークしたセクションコマンドを一階層上げる
750 `0〜6'
751 ... レベル n 以下のセクションコマンドを隠して表示
755 
756 File: yatexj, Node: label-generation, Prev: view-sectioning, Up: section型補完
758 ラベル自動生成
759 --------------
761 `\ref{}' や `\cite{}' マクロをsection型補完で入れた場合参照先となり得る
762 ものを全て探してメニューにして選択できます。参照先には`\label{}'をつけてお
763 く必要はありません。もしあれば、そのラベルを使い、なければその場で参照先に
764 `\label{}'を作らせてくれます。ラベル名を考えるのは苦痛に感じるものです。全
765 てのカウンタにラベルをつけるのもたいへんです。もうラベル名に何をつけるか、
766 ラベルをつけるかつけまいか、などということは忘れましょう!
769 
770 File: yatexj, Node: large型補完, Next: maketitle型補完, Prev: section型補完, Up: Completion
772 large型補完
773 ===========
775 `{\large }' のような形式の補完を large 型補完と呼ぶことにします。
777 `[prefix] l'
778 ... large 型補完開始
780 がlarge型補完の開始です。`[prefix] l' を押すと、ミニバッファに
782 {\??? } (default large):
785 と表示されるので、上記のものと同じ要領で補完入力して下さい。補完候補に用意
786 されているのは、`footnotesize' や `huge' のような文字サイズ指定子と、`bf'
787 や`dg'のようなフォント指定子です。
790 既に書いた文字を括る
791 --------------------
793 また、begin型補完の時と同様、先に書いてしまった一連の文章の文字のサイズ
794 を変えたいと思う時がありますが、そのような時は、サイズや大きさを変えたい文
795 字の範囲をマークしてから、呼び出しキーを `[prefix] L' と、大文字の L に変
796 えて呼び出せば、そのリジョン全体が、ブレースで囲まれます。
799 
800 File: yatexj, Node: maketitle型補完, Next: Arbitrary completion, Prev: large型補完, Up: Completion
802 maketitle型補完
803 ===============
805 `\maketitle' の形式の補完を maketitle 型補完と呼ぶことにします。
807 `[prefix] m'
808 ... maketitle 型補完開始
810 で、maketitle 型補完を開始します。補完の要領は今までのものとまったく同じで
811 す。LaTeX 用のコマンド名が補完候補として用意されています。
814 
815 File: yatexj, Node: Arbitrary completion, Next: end補完, Prev: maketitle型補完, Up: Completion
817 随時補完
818 ========
820 さて、今まで述べた典型的な LaTeX コマンド形式の補完入力を用いずに、今入
821 力しようとしている LaTeX コマンドを文書中の任意の位置で随時補完することも
822 できます。LaTeX コマンド(先頭が\で始まる)を入力している途中で、
824 `[prefix] SPC'
825 ... 随時補完
827 を入力すれば、全ての補完候補の中から一致するものが選ばれカーソル位置に挿入
828 されます。
831 
832 File: yatexj, Node: end補完, Next: Accent mark completion, Prev: Arbitrary completion, Up: Completion
834 end補完
835 =======
837 現在開いたままの環境名を自動的に検出し、`\end{環境名}'を挿入します。
838 begin 型補完を用いれば環境の閉じ忘れはないのですが、時にはついつい手で
839 `\begin{環境名}' を入れてしまい、悲しい思いをすることがあります。そのよう
840 な時には気にせず続けて文章を入力し、しかるのちに
842 `[prefix] e'
843 ... end 補完
845 とすることで、現在開いている環境名で \end{} が補われます。
848 
849 File: yatexj, Node: Accent mark completion, Next: Image completion, Prev: end補完, Up: Completion
851 アクセント記号補完
852 ==================
854 欧文のアクセント記号(`\`{o}'など)を入力する時は、
856 `[prefix] a'
857 ... アクセント記号入力
859 を押すと、ミニバッファに
861 1:` 2:' 3:^ 4:" 5:~ 6:= 7:. u v H t c d b
863 というメニューが出て来るので、数字、または対応する記号/英字を入力して下さ
864 い。すると編集バッファに、
866 \`{}
868 が現われ、カーソルが{}内に位置するので、さらに一文字入力する事で、
870 \`{o}
872 が完成され、カーソルは{}の外に戻ります。
875 
876 File: yatexj, Node: Image completion, Next: Greek letter completion, Prev: Accent mark completion, Up: Completion
878 数式記号イメージ補完
879 ====================
881 主に数式モードで使用される、矢印やΣなどの記号を擬似的に表現するキー入力
882 で、LaTeX コマンドを入力できます。これは野鳥自身の「数式モード」でのみ動作
883 します。野鳥はカーソルがTeXの数式環境の中にある時に`;'や、`:'に特殊な機能
884 を持たせます。
886 さて、例えば、←(leftarrow)をASCII文字だけで表現する場合、一般的には「<-」
887 のようにしますが、これを利用して、数式記号イメージ入力モードで`\leftarrow'
888 を入力するには、`;'(セミコロン)を打ってから`<-'と入力します。同様に、長い
889 矢印←-(long-leftarrow) をASCII文字だけで表現する場合「<--」とするので、
890 `\longleftarrow'を入力するためには、`;<--' と入力します。あるいは無限大記
891 号をASCII文字だけで表現する時は「oo」のようにすることから、`\infty' を入力
892 する時は、`;oo'とキー入力します。
894 これらの操作をまとめると次のようになります。
896 INPUT 入力される LaTeX コマンド
897 ; < - `\leftarrow'
898 ; < - - `\longleftarrow'
899 ; < - - > `\longleftrightarrow'
900 ; o `\circ'
901 ; o o `\infty'
905 いずれの場合も、イメージ入力を行っている途中で望みのものがバッファに表示
906 されたなら、そこでイメージ入力を止めて次の編集動作に移っても構いません。
908 数式環境中で`;'自身を入力するには`;;'のようにします。イメージ入力の途中
909 でTABを押すと、それまで入力した文字で始まるもの一覧が表示されます。ここで
910 目的の LaTeX コマンドまでカーソルを移動し再度TABを押すことでその LaTeX コ
911 マンドがバッファに挿入されます。
913 どのキー入力にどの記号が対応しているか全て知りたい時は、`;'を押した直後
914 にTABを押してください。以下の例は、`;<'と押した後にTABを押したものです。
916 KEY LaTeX sequence sign
917 < \leq ≦
918 << \ll 《
919 <- \leftarrow ←
920 <= \Leftarrow <=
922 左から[入力キー]、[対応する LaTeX コマンド]、[(擬似)記号図示]、という順で
923 メニューが出て来るので、よく使うものを覚えておくと良いでしょう。ものによっ
924 てはASCII文字で表現することが困難なので、あまり覚えやすいキー並びではない
925 ものがあるでしょうから、そのような場合は \maketitle 型補完で入力するか、以
926 下に述べる対応表の設定を行って単純なキー並びのものを設定すると良いでしょう。
928 入力キーと LaTeX コマンド、記号の対応表を個人的に設定したい場合は
929 Emacs-Lisp 変数 `YaTeX-math-sign-alist-private' に定義してください。その内
930 容とデフォルトのものを合わせたものが対応表として使用されます(private の方
931 が優先される)。なお、この変数の構造については `yatexmth.el' を参照してくだ
932 さい。
935 
936 File: yatexj, Node: Greek letter completion, Prev: Image completion, Up: Completion
938 ギリシャ文字補完
939 ================
941 もう一つ、数式環境中で`:'を押すとギリシャ文字入力モードに入ります。`:'を
942 押した直後に`a'を押すと`\alpha'が、`g' を押すと `\gamma'が、などアルファベッ
943 トに対応したギリシャ文字が挿入されます。操作方法は;の数式記号補完とまった
944 く同じです。まずは`:'の直後にTABを押してどのアルファベットにどのギリシャ文
945 字が対応しているか調べてみてください。
947 `;'と`:'を数式環境中で押しているにもかかわらず、イメージ補完が働かない場
948 合は、`C-u ;'のように universal-argument をつけてキーを押すことにより、強
949 制的にイメージ補完に入ることができます。また、この時にどのような状態で数式
950 環境内判定に失敗したかをご連絡下さい。
953 
954 File: yatexj, Node: Local dictionary, Next: Commenting out, Prev: Completion, Up: Top
956 ローカル辞書
957 ************
959 補完入力用の候補は三種類の辞書から構成されています。一つは`yatex.el'に組
960 み込まれた「標準辞書」、もう一つはユーザが個人的に常用するコマンドを保存す
961 る「ユーザ辞書」、そしてもうひとつはあるディレクトリでのみ有効なコマンドを
962 保存する「ローカル辞書」です。
964 補完入力時に新しい単語を入れた場合に、その単語をどの辞書に入れるか聞いて
965 来ます。
967 `foo' is not in table. Register into: U)serDic L)ocalDic N)one D)iscard
969 というプロンプトに対し、`u'と答えると「ユーザ辞書」を、`l'と答えるとローカ
970 ル辞書を更新し、`n'と答えると辞書ファイルは更新せず現在のEmacs セッション
971 のみ有効な単語とし、`d'と答えると新たな単語を学習せずに捨てることになりま
972 す。
974 もし、ローカル辞書の機能はいらず、全てユーザ辞書の更新のみでよいと言う場
975 合には`~/.emacs'などで、
977 (setq YaTeX-nervous nil)
979 として下さい。
982 
983 File: yatexj, Node: Commenting out, Next: Cursor jump, Prev: Local dictionary, Up: Top
985 コメントアウト
986 **************
989 LaTeXの編集には試行錯誤がつきものです。ある部分を一括でコメントアウトし
990 たり、コメントを外したりしたいことがあります。
992 `[prefix] >'
993 ... リジョンを % でコメントアウト
994 `[prefix] <'
995 ... リジョンの % のコメントを外す
997 は、あらかじめ設定したリジョンに対しての操作、
999 `[prefix] .'
1000 ... 現在のパラグラフをコメントアウト
1001 `[prefix] ,'
1002 ... 現在のパラグラフのコメントを外す
1004 は、カーソルの位置するパラグラフ全体に対しての操作です。なお、ここでいう
1005 「パラグラフ」は (`mark-paragraph') 関数によりマークされる範囲を指します
1006 (標準設定で`ESC h'にバインドされている)。なお、既に`%'でコメントアウトされ
1007 ているパラグラフに対して繰り返しパラグラフのコメントを使用した場合の動作は
1008 保証しませんので御注意ください。
1010 さて、文章に対してだけでなく、時には`\begin', `\end' 自体に対してもコメ
1011 ントアウトの操作をしたいときがあります。このようなときは、`\begin{}' ある
1012 いは `\end{}' の行にカーソルを合わせ、
1014 `[prefix] >'
1015 ... `\begin{}'〜`\end{}' 全てコメントアウト
1016 `[prefix] <'
1017 ... `\begin{}'〜`\end{}' 全てコメントを外す
1019 とすることで、`\begin〜\end'で囲まれる環境全てに対してコメント操作し、
1021 `[prefix] .'
1022 ... `\begin{}' と `\end{}' をコメントアウト
1023 `[prefix] ,'
1024 ... `\begin{}' と `\end{}' のコメントを外す
1026 は、対応する `\begin' と `\end' 2行だけを、コメント操作の対象とします。リ
1027 ジョンをコメントアウトしようとして、マークを設定したのちにカーソルを移動し
1028 `[preifx] >' を押してもカーソルが `\begin{}' の上にあると`\begin{}'〜
1029 `\end{}'モードでコメント機能が働いてしまうので注意して下さい。
1033 File: yatexj, Node: Cursor jump, Next: Modifying/Deleting, Prev: Commenting out, Up: Top
1035 カーソルジャンプ
1036 ****************
1039 * Menu:
1041 * 対応オブジェクトへのジャンプ::
1042 * お絵描きツール起動::
1043 * メインファイルへのジャンプ::
1044 * 環境を単位としたジャンプ::
1045 * 最後の補完位置へのジャンプ::
1049 File: yatexj, Node: 対応オブジェクトへのジャンプ, Next: お絵描きツール起動, Prev: Cursor jump, Up: Cursor jump
1051 対応オブジェクトへのジャンプ
1052 ============================
1054 文書中のいろいろな場所で
1056 `[prefix] g'
1057 ... 対応するオブジェクトにジャンプ
1059 を押すことにより、カーソル位置のLaTeXコマンドに対応する場所にジャンプしま
1060 す。対応関係が存在すると解釈されるコマンドには以下のものがあります。
1062 * `\begin{}' ←→ `\end{}'
1063 * `%#BEGIN' ←→ `%#END'
1064 * 画像ファイルの取り込みマクロ → 対応するviewer/お絵かきツール起動
1065 * `\label{}' ←→ `\ref{}'
1066 * `\include(\input)' → 対応するファイル
1067 * `\bibitem{}' ←→ `\cite{}'
1069 `\begin{}' か `\end{}' の行で`[prefix] g'を押すことにより、対応する
1070 `end/begin'の行にジャンプします。もちろん対応するものがない場合はエラーに
1071 なります。またこれは、領域固定のための `%#BEGIN' と `%#END' のペアに対して
1072 も同様に動作します。なお、`label/ref'や`cite/bibitem'対応するものが別ファ
1073 イルにある時は、ジャンプ先となるファイルがオープンされていなければなりませ
1074 ん。*Note %#notation::. メインの .tex ファイルの `\include{chap1}' などに
1075 カーソルを合わせ、`[prefix] g' を押すと、`chap1.tex' にジャンプします。
1077 また、
1079 `[prefix] 4 g'
1080 ... 別ウィンドウで対応オブジェクトにジャンプ
1082 を押すと、対応するオブジェクトへのジャンプを別ウィンドウで行います。ただし、
1083 この機能は `begin/end', `%#BEGIN/%#END' 間のジャンプに対しては(意味がない
1084 と思われるので)機能しないので注意してください。
1088 File: yatexj, Node: お絵描きツール起動, Next: メインファイルへのジャンプ, Prev: 対応オブジェクトへのジャンプ, Up: Cursor jump
1090 お絵描きツール起動
1091 ==================
1093 上記の「画像ファイルの取り込みマクロ」とは、例えば `\epsfile{file=foo}' の
1094 ような挿絵取り込みコマンドのことで、この行にカーソルを合わせて`[prefix] g'
1095 を押すとその画像ファイルの元となったファイルを対応するお絵描きツールを起動
1096 してオープンします。起動するツールの判定は以下のようになされます。
1098 1. カレント行が変数 `YaTeX-processed-file-regexp-alist' に定義されている
1099 正規表現のいずれかとマッチしたら、ファイル名に相当する部分を \\(\\)か
1100 ら抜き出して覚えておく(何番目の\\(\\)かは変数の各リストの cdr 部に入
1101 れておく)。マッチしなければ何もしない。
1102 2. 行末に、変数 `YaTeX-file-processor-alist' に登録されているコマンドが
1103 「%コマンド」 のように書いてあれば強制的に「コマンド ファイル名.拡張
1104 子」を起動。
1105 3. なければ、変数 `YaTeX-file-processor-alist' の各リストのcdr部に入って
1106 いる拡張子を「ファイル名」の後ろに足したファイルが存在するか順次調べ
1107 て、存在した場合car部に入っているコマンドを起動する。
1108 4. 以上どれかにマッチしなければあきらめる。
1111 変数 `YaTeX-file-processor-alist' と変数 `YaTeX-file-processor-alist' の設
1112 定方法についてはそれぞれの変数について describe-variable して説明を読んで
1113 下さい。うまく設定すると、画像ファイルにかぎらず、任意の形式のファイルを任
1114 意のプロセッサで処理するコマンドを簡単に呼び出すことができます。
1118 File: yatexj, Node: メインファイルへのジャンプ, Next: 環境を単位としたジャンプ, Prev: お絵描きツール起動, Up: Cursor jump
1120 メインファイルへのジャンプ
1121 ==========================
1123 `chap1.tex'のようなサブファイルで、
1125 `[prefix] ^'
1126 ... メインファイルにジャンプ
1127 `[prefix] 4 ^'
1128 ... 別ウィンドウでメインファイルにジャンプ
1130 を押すと、メインファイルの編集バッファに切替えます。もし、メインファイルを
1131 オープンしていない場合は、カレントディレクトリから探して自動的にオープンし
1132 ます。
1136 File: yatexj, Node: 環境を単位としたジャンプ, Next: 最後の補完位置へのジャンプ, Prev: メインファイルへのジャンプ, Up: Cursor jump
1138 環境を単位としたジャンプ
1139 ========================
1141 さらに現在の環境を単位として機能するコマンドに以下のものがあります。
1143 `M-C-a'
1144 ... 環境の先頭(`\begin')へジャンプ
1145 `M-C-e'
1146 ... 環境の末尾(`\end')へジャンプ
1147 `M-C-@'
1148 ... 環境全体をマーク
1150 上記のコマンドは通常の`[prefix]'キーではなく`META'キーをプリフィクスとして
1151 機能するのでご注意下さい。
1155 File: yatexj, Node: 最後の補完位置へのジャンプ, Prev: 環境を単位としたジャンプ, Up: Cursor jump
1157 最後の補完位置へのジャンプ
1158 ==========================
1160 野鳥は補完入力した位置を常にレジスタ `3'に保存しています。入力途中で如何な
1161 るファイルの如何なる位置に行ったとしても、`C-x j 3'(`jump-to-register')を
1162 使って直ちに最後の補完入力位置に戻ることができます。
1166 File: yatexj, Node: Modifying/Deleting, Next: Filling, Prev: Cursor jump, Up: Top
1168 変更/削除
1169 *********
1171 既に入力されている LaTeX コマンドの変更/削除のために以下の機能が用意され
1172 ています。
1174 `[prefix] c'
1175 ... カーソル位置の LaTeX コマンドの変更
1176 `[prefix] k'
1177 ... カーソル位置の LaTeX コマンドの削除
1180 これらのコマンドは、コマンドを起動する場所によって動作を決定するので注意し
1181 て下さい。
1183 * Menu:
1185 * Changing LaTeX command:: LaTeX コマンドの変更
1186 * Killing LaTeX command:: LaTeX コマンドの削除
1190 File: yatexj, Node: Changing LaTeX command, Next: Killing LaTeX command, Prev: Modifying/Deleting, Up: Modifying/Deleting
1192 LaTeX コマンドの変更
1193 ====================
1195 変更したい LaTeX コマンドにカーソルを合わせて `[prefix] c' を押すとそのコ
1196 マンドを補完入力などを用いて手軽に変えることができます。`[prefix] c' で変
1197 更できるコマンドには以下のものがあります。
1199 * `begin/end' の環境名
1200 * section型コマンドのコマンド名
1201 * section型コマンドの引数
1202 * section型コマンドのオプションパラメータ([]で囲まれたもの)
1203 * large型コマンド
1204 * (イメージ補完で入力可能な)数式モード専用のmaketitle型コマンド
1206 変えたいsection型コマンドの引数がさらに LaTeX コマンドを含む場合は、その
1207 引数を囲む中括弧の上で `[prefix] c' を押すことで中のコマンドを変更対象判定
1208 から除外することができます。
1213 File: yatexj, Node: Killing LaTeX command, Prev: Changing LaTeX command, Up: Modifying/Deleting
1215 LaTeX コマンドの削除
1216 ====================
1218 `[prefix] k' は起動する位置により次のような動作を行います。
1221 起動位置 動作
1222 \begin, \endの行 `\begin\end'ペアの削除
1223 %#BEGIN, %#END の行 %#BEGIN,%#ENDペアの削除
1224 section型コマンドの上(中) section型コマンドの削除
1225 フォント指定括弧の上 フォント指定の削除
1226 括弧の上 対をなす括弧の削除
1229 `\begin, \end' および `%#BEGIN, %#END' を削除する場合、`\begin, \end' や
1230 `%#BEGIN, %#END' の存在する行はまるごと削除されるので、それらの一行に
1231 `\begin' などを二つ以上連ねて書かないように注意してください。上記のものは
1232 すべて本文を囲う「容器」を削除するように働きますが、universal-argument
1233 (`C-u') を打った後で`[prefix] k'をタイプすると、それぞれの「容器」に含まれ
1234 る「中身」も一気に削除します。以下の例を参考にして下さい。
1236 元のテキスト: [prefix] k C-u [prefix] k
1237 本文\footnote{脚注}です。 本文脚注です。 本文です。
1238 ↑(カーソル位置)
1242 File: yatexj, Node: Filling, Next: Includeonly, Prev: Modifying/Deleting, Up: Top
1244 桁揃え
1245 ******
1248 itemの桁揃え
1249 ============
1251 itemize 環境中にある`\item'の項目(文章)が複数行に渡る場合に、項目の先頭
1252 を桁揃えしたい場合には、
1255 `M-q'
1256 ... 桁揃え
1258 によって、その item のインデントの深さに応じて fill されます。なお、古い
1259 NTT jTeX を使用している場合には、Lisp 変数`NTT-jTeX'を`t'にセットして下さ
1260 い。
1262 このとき、変数`YaTeX-item-regexp'の値(標準では `"\\\\item"')を項目指定コ
1263 マンドの正規表現として検索に使用します。itemize 環境で、独自のコマンドを定
1264 義して項目を列挙している場合(例えば`\underlineitem')は、`~/.emacs' で次の
1265 ように指定して下さい。
1267 (setq YaTeX-item-regexp
1268 "\\(\\\\\\(sub\\)*item\\)\\|\\(\\\\underlineitem\\)")
1271 この変数の指定の仕方がよく分からない場合は、独自の項目列挙コマンドの名前を
1272 ``"\item"'で始まるものにして下さい(例えば"\itembf"')。
1274 野鳥の `M-q' では `\item' を環境に応じて以下のように「ハングインデント」し
1275 ます。
1277 itemize, enumerate環境:
1278 >\item[ほげほげ] 英語では、特に意味のない単語を `foo' であらわしま
1279 > すが、これの日本語版ともいえる単語が「ほげほげ」
1280 > です。
1281 description環境:
1282 > \item[へろへろ] 「ほげほげ」をでたらめが単語として使った時に、第
1283 > 2のでたらめな単語として「へろへろ」が使われることが多
1284 > いようです。
1287 パラグラフの桁揃え
1288 ==================
1290 itemize環境以外でのパラグラフの桁揃え(fill)は、基本的に他のモードと同じ
1291 ように機能しますが、verbatim環境や、tabular環境など桁揃えをすると悲惨な状
1292 況になるような環境中では機能しません。また、\verb で括ってあるものは決して
1293 行分割されません(変数 `YaTeX-verb-regexp' で制御) )。さらに、一時的にイン
1294 デントの深さを変えてある箇所では、そのインデントの先頭で`M-q'を押すことに
1295 より fill-prefix をいちいち変更しなくて桁揃えができます。
1300 File: yatexj, Node: Includeonly, Next: What column, Prev: Filling, Up: Top
1302 勝手にincludeonly
1303 *****************
1305 ファイルを分割して文章を入力している時には、メインファイル中に
1307 \includeonly{現在編集中のファイル名}
1309 のように書いておくことで、タイプセットの時間を節約できますが、ちょっと他の
1310 ファイルを手直ししたい時には
1312 \includeonly{ちょっと手直ししたいファイル名}
1315 と書き直さなければならず手間がかかります。野鳥では現在編集しているファイル
1316 名がメインファイルの`\includeonly'にない場合には自動的にこれを検出し、次の
1317 指示を仰ぎます。
1319 A)dd R)eplace %)comment?
1322 現在編集中のファイルを `\includeonly' のリストに加えたい時には`a' を、現在
1323 編集中のファイルだけを `\includeonly' にしたい時は`r'を、`\includeonly' の
1324 行をコメントアウトして無効化したい時には、`%'をそれぞれ押して下さい。
1328 File: yatexj, Node: What column, Next: Intelligent newline, Prev: Includeonly, Up: Top
1330 ここはどこ?
1331 ***********
1333 項目数の多い tabular などをたくさん書いていると下の方の行で、いま書いて
1334 いる桁がどこに対応するのかわからなくなってしまうことがあります。例えば、以
1335 下のような tabular において、
1337 \begin{tabular}{|c|c|c|c|c|c|c|c|}\hline
1338 氏名&所属&〒&住所&電話&FAX&帰省先&帰省先電話\\ \hline
1339 矢上二郎 & 6 & 223 & 横浜市港北区日吉 & xxx-yyy &
1340 zzz-www & トンガ & 9876-54321 \\
1341 日吉小僧 & 2 & \multicolumn{2}{c|}{教えない}
1342 &&&(???)
1343 \\ \hline
1344 \end{tabular}
1347 (???)の部分がどの項目なのかすぐに判断するのは難しいでしょう。こんな時は、
1349 `[prefix] &'
1350 ... 現在のカラム表示
1352 を押すとカーソル位置のカラムがどの項目に該当するかをミニバッファに表示しま
1353 す。tabular/array環境の第1行目を項目名の並びとみなして対応するものを探しま
1354 す。もし項目名として別のものを表示して欲しい場合は、行頭を`%'にしてダミー
1355 の項目並びを作っておくと良いでしょう。
1359 File: yatexj, Node: Intelligent newline, Next: Usepackage cheker, Prev: What column, Up: Top
1361 おまかせ改行
1362 ************
1364 tabular[*], array, itemize, enumerate, tabbing 環境をbegin型補完で入力し
1365 た時、または各環境内で
1367 `ESC RET'
1368 ... おまかせ改行
1371 を押すと、その環境に応じた行エントリを次の行に挿入します(begin型補完時に自
1372 動挿入されたエントリが不要な場合は undo によって消去できます)。例えば、
1373 tabular環境では、その環境のカラム数に対応した個数の `&' に加え、行末の
1374 `\\' を入れます。この時それ以前に `\hline' があればそれも付け加えます。環
1375 境とそれに応じて自動入力するものの対応は以下のようになります。
1377 * `tabular', `tabular*', `array'
1379 カラム数-1 だけの `&' と `\\'。必要に応じて `\hline'
1381 * `tabbing'
1383 一行目で定義している `\=' と同じ個数の `\>'。
1385 * `itemize', `enumerate', `description', `list'
1387 `\item' または `item[]'
1389 tabular 環境の例のように、本機能は各環境の一行目の内容を参考にして動作す
1390 るので、なるべく二行目以降で呼び出すようにしてください。
1392 もし、その他の環境、例えば `foo'、に対して`おまかせ改行'を動作させたい時
1393 は、`YaTeX-intelligent-newline-foo' という名前の関数を定義します。定義した
1394 関数は、現在の行に改行を挿入した直後の行頭の位置で呼ばれます。関数
1395 `YaTeX-indent-line' を呼ぶと現在の環境のネストに応じた深さにインデントされ
1396 るので、これを呼んでから何かを挿入するようなコードを書くとよいでしょう。
1397 `yatexenv.el'内の関数 `YaTeX-intelligent-newline-itemize' の定義などを参考
1398 にしてください。
1403 File: yatexj, Node: Usepackage cheker, Next: Changing mode of YaTeX, Prev: Intelligent newline, Up: Top
1405 先回りusepackage
1406 ****************
1408 begin型、section型、maketitle型、いずれかのLaTeX2eマクロを補完入力すると、
1409 そのマクロの利用に外部パッケージを必要とする場合、そのパッケージを本文中で
1410 `\usepackage{}' しているかどうかを調査し、もししていなければプリアンブルに
1411 対応するパッケージを引数にした `\usepackage' 文を(確認後に)挿入します。
1413 ただしこの機能が働くためには、パッケージ名とその中で定義されているマクロ
1414 群をalistの形式で変数 `YaTeX-package-alist-private' に設定しておく必要があ
1415 ります。
1419 File: yatexj, Node: Changing mode of YaTeX, Next: Online help, Prev: Usepackage cheker, Up: Top
1421 野鳥の動作モード切り替え
1422 ************************
1424 `[prefix] w'
1425 ... 野鳥動作モード切り替えメニュー
1427 で野鳥自身の動作を決定する以下のモードを切り替えます。
1429 * 修正モード
1430 * 野鳥数式モード
1432 修正モードは、開き括弧入力時の処理をコントロールし、修正モードONの時は開き
1433 括弧の入力は開き括弧のみの入力になり、修正モードOFFの時は開き括弧の入力だ
1434 けで閉じ括弧まで入力します。デフォルト(起動時)の設定は*OFF*です。
1436 野鳥数式モードは、変数 `YaTeX-auto-math-mode' が `nil' の時のみ有効で、
1437 このとき`;'や`:'を押した時(*Note Image completion::参照)に、どのようなイメー
1438 ジ補完を機能させるか、通常のキーとして機能させるかを手動で切り替えます。自
1439 動判定が遅いマシンでは`YaTeX-auto-math-mode' `nil'にセットし、野鳥数式モー
1440 ドを手動で切り替えると良いでしょう。
1445 File: yatexj, Node: Online help, Next: Inclusion hierarchy browser, Prev: Changing mode of YaTeX, Up: Top
1447 オンラインヘルプ
1448 ****************
1450 使おうとする LaTeX コマンドの用法がよく分からない時は、オンラインヘルプ
1451 をひきましょう。ヘルプに関するキーには以下のものがあります。
1453 `[prefix] ?'
1454 ... オンラインヘルプ
1455 `[prefix] /'
1456 ... オンラインapropos
1459 オンラインヘルプ
1460 ================
1462 「オンラインヘルプ」は、一般的な LaTeX コマンド(デフォルトでカーソル位置
1463 のコマンド)に対する説明を隣のバッファに表示します。この時参照されるヘルプ
1464 用ファイルには「グローバルヘルプ」と「プライベートヘルプ」の二種類があり、
1465 前者は LaTeX の標準コマンドの主なものの説明を含むファイルで、変数
1466 `YaTeX-help-file'の値で指定されます。このファイルは通常公共の場所(デフォル
1467 トで`$EMACSEXECPATH')に置かれ、誰もがその内容を更新できるように全員に書き
1468 込み権が与えられるべきものです。後者は、非標準もしくは個人的なマクロ定義に
1469 関する説明が書かれているファイルで、変数`YaTeX-help-file-private'の値で指
1470 定されます。こちらはユーザのホームディレクトリの下などに置かれます。
1473 オンラインapropos
1474 =================
1476 「オンラインapropos」は GNU Emacs の apropos と同様、ユーザが指定したキー
1477 ワードを説明文に含む項目すべてを隣のバッファに表示します。
1479 もし、調べようとしたLaTeXコマンドに対する説明がヘルプファイル中に見つか
1480 らなかった場合は、説明文の入力を求めてくるので、可能であれば参考書などを調
1481 べてそのコマンドの説明を入力してください。もし、なにか標準的なコマンドに対
1482 する説明を書いたならばぜひ私までその説明をお送り下さい。次回の配布に含めた
1483 いと思います。
1487 File: yatexj, Node: Inclusion hierarchy browser, Next: Cooperation with other packages, Prev: Online help, Up: Top
1489 インクルード構造ブラウザ
1490 ************************
1492 複数のファイルに分割しているドキュメントを書いている場合、
1494 `[prefix] d'
1495 ... インクルード構造ブラウズ
1497 を押すと、そのドキュメントの親ファイルを聞いて来ます。ここで全てのファイル
1498 の親となるファイル(デフォルトが示されているので大抵はRETのみ)を入力すると
1499 インクルードしている全てのファイルを解析し、インクルード状況を視覚的に表示
1500 します。このバッファでは以下のキー操作が有効です。
1502 `n'
1503 ... 次の行に移動し対応するファイルを隣のバッファに表示
1504 `p'
1505 ... 上の行に移動し対応するファイルを隣のバッファに表示
1506 `N'
1507 ... 同じインクルードレベルの次のファイルに移動
1508 `P'
1509 ... 同じインクルードレベルの前のファイルに移動
1510 `j'
1511 ... 次の行に移動
1512 `k'
1513 ... 上の行に移動
1514 `u'
1515 ... 一代親にあたるファイルに移動
1516 `.'
1517 ... カーソル位置のファイルを隣のバッファに表示
1518 `SPC'
1519 ... 隣のバッファの対応ファイルをスクロールアップ
1520 `DEL, b'
1521 ... 隣のバッファの対応ファイルをスクロールダウン
1522 `<'
1523 ... 隣のバッファの対応ファイルの先頭を表示
1524 `>'
1525 ... 隣のバッファの対応ファイルの末尾を表示
1526 `''
1527 ... (`<'や`>'の後で)元の表示位置に戻る
1528 `RET, g'
1529 ... カーソル位置のファイルを隣のバッファでオープン
1530 `mouse-2'
1531 ... RETと同じ(ウィンドウ使用時のみ)
1532 `o'
1533 ... 隣のウィンドウに移動
1534 `1'
1535 ... 他のウィンドウを消す
1536 `-'
1537 ... ブラウズウィンドウを小さくする
1538 `+'
1539 ... ブラウズウィンドウを大きくする
1540 `?'
1541 ... ヘルプ表示
1542 `q'
1543 ... 表示前の状態に戻る
1545 ただし、隣のウィンドウのファイルの内容を表示する機能に関しては、対応する
1546 ファイルをクローズしてしまうとうまく働きませんのでご注意ください。
1550 File: yatexj, Node: Cooperation with other packages, Next: Customizations, Prev: Inclusion hierarchy browser, Up: Top
1552 他パッケージとの連携
1553 ********************
1556 gmhist
1557 ======
1559 `gmhist.el'と`gmhist-mh.el' をロードしている場合、プレヴューコマンドの入
1560 力(`[prefix] tp]')、印刷コマンドの入力(`[prefix] tl')の時に独立したヒスト
1561 リを利用できます。それぞれのプロンプトで、`M-p' を押すと直前に利用したコマ
1562 ンド文字列をくり返し呼び出すことができます。
1565 min-out
1566 =======
1568 `min-out.el' (`outline-minor-mode') と野鳥を組み合わせて使うことももちろ
1569 ん可能です。設定の方法に関しては`yatexm-o.el'をご覧ください。
1573 File: yatexj, Node: Customizations, Next: Etc, Prev: Cooperation with other packages, Up: Top
1575 カスタマイズ
1576 ************
1578 野鳥の動作を制御する種々の変数を独自に設定することにより、補完入力を起動
1579 するキーアサインを変えたり、環境名の補完候補をさらに充実させることなどがで
1580 きます。
1582 * Menu:
1584 * Lisp variables:: lisp 変数
1585 * Add-in functions:: 付加関数(アドイン関数)
1589 File: yatexj, Node: Lisp variables, Next: Add-in functions, Prev: Customizations, Up: Customizations
1591 lisp 変数
1592 =========
1594 例えば prefix キーを `C-c' 以外のキーにしたい場合は、`YaTeX-prefix'に
1595 prefix キーにしたいシンボルを定義してください。さらに、「`C-c 英字'」とい
1596 うキーバインドは独自の関数が割り当ててあるので使いたくない。このような時は、
1597 `YaTeX-inhibit-prefix-letter' を `t' に設定することにより、`C-c 英字…'の
1598 バインドが全て、対応する`C-c C-英字…'に変わります(ただし、begin型 large型
1599 補完の大文字起動によるリジョン指定は可能なままです。これも無効にしたい場合
1600 は`t'ではなく 1 にセットして下さい。)。
1602 * Menu:
1604 * All customizable variables:: カスタマイズ変数一覧
1605 * Sample definitions:: カスタマイズ変数設定例
1606 * Hook variables:: hook変数
1607 * Hook file:: hook用ファイル
1611 File: yatexj, Node: All customizable variables, Next: Sample definitions, Prev: Lisp variables, Up: Lisp variables
1613 カスタマイズ変数一覧
1614 --------------------
1616 yatex-mode における次の変数がカスタマイズ可能です。`~/.emacs' で `setq'
1617 しておけば、そちらの定義が優先されます。括弧の中はデフォルト値です。実際に
1618 変数の値を変更する場合は `M-x describe-variable' で変数の詳細な説明を参照
1619 してください。
1621 -- Variable: YaTeX-prefix
1622 yatex-mode 中のプリフィクスキー (`\C-c')
1624 -- Variable: YaTeX-inhibit-prefix-letter
1625 prefix キーの直後のキーバインドで `英字' のものを `C-英字' に変更
1626 (`nil')
1628 -- Variable: YaTeX-fill-prefix
1629 本文を書く時の行頭に挿入する接頭辞すなわち fill-prefix (`""(nil)')
1631 -- Variable: YaTeX-user-completion-table
1632 学習したLaTeXコマンド保存ファイル名 (`"~/.yatexrc"')
1634 -- Variable: YaTeX-kanji-code
1635 文書を作成する時の漢字コードnil=既存のコードのまま 0=no-conversion
1636 1=Shift JIS, 2=JIS, 3=EUC, 4=UTF-8 (2 (MS-DOSでは1))
1638 -- Variable: tex-command
1639 LaTeXタイプセッタコマンド名 (`"platex"')
1642 -- Variable: dvi2-command
1643 プレヴューアコマンド名 (`"xdvi -geo +0+0 -s 4"')
1645 -- Variable: dviprint-command-format
1646 dviファイルの印刷に使われるコマンド式 (`"dvi2ps %f %t %s | lpr"')
1648 -- Variable: dviprint-from-format
1649 上の`%f'に相当する開始ページ指定書式、`%b' が開始ページ番号に変わる
1650 (`"-f %b"')
1652 -- Variable: dviprint-to-format
1653 `%t' に相当する終了ページ指定書式、`%e'が終了ページ番号に変わる (`"-t
1654 %e"')
1656 -- Variable: makeindex-command
1657 makeindexコマンド (`"makeindex"' (MS-DOSでは`"makeind"'))
1659 -- Variable: YaTeX-dvipdf-command
1660 dviをPDFに変換するコマンド (`"dvipdfmx"')
1662 -- Variable: YaTeX-need-nonstop
1663 `\nonstopmode{}'を自動的に付加するか (`nil')
1665 -- Variable: latex-warning-regexp
1666 latexコマンドの出力するウォーニング行の正規表現 (`"line.* [0-9]*"')
1668 -- Variable: latex-error-regexp
1669 同じくエラー行の正規表現 (`"l\\.[1-9][0-9]*"')
1671 -- Variable: latex-dos-emergency-message
1672 MS-DOS上で動作する latex コマンドが、エラーにより停止するとき出力する
1673 メッセージ (`"Emergency stop"')
1675 -- Variable: latex-message-kanji-code
1676 タイプセッタの出力するメッセージの漢字コード.タイプセットバッファの出
1677 力が化ける時は、これを設定する (2, Nemacsでのみ有効)
1679 -- Variable: NTT-jTeX
1680 古いNTT-jTeX使用時のようにインデントした行の先頭と前の行の(タイプセッ
1681 ト後の)字間が空いてしまうのを嫌う場合は`t'にする(`nil')
1683 -- Variable: YaTeX-item-regexp
1684 itemの桁揃えの時に用いる、itemの正規表現 (`"\\\\(sub\\)*item"')
1686 -- Variable: YaTeX-verb-regexp
1687 verbコマンドの正規表現。先頭の\\\\はつけない (`"verb\\*?\\|path"')
1689 -- Variable: YaTeX-nervous
1690 ローカル辞書を用いる時 `t' (`t')
1692 -- Variable: YaTeX-sectioning-regexp
1693 セクション区切り設定コマンドの正規表現
1694 (`"\\(part\\|chapter\\*?\\|\\(sub\\)*\\(section\\|paragraph\\)\\*?\\)\\b"')
1696 -- Variable: YaTeX-fill-inhibit-environments
1697 fill を抑止する環境名のリスト (`'("tabular" "tabular*" "array"
1698 "picture" "eqnarray" "eqnarray*" "equation" "math" "displaymath"
1699 "verbatim" "verbatim*")')
1701 -- Variable: YaTeX-uncomment-once
1702 領域uncommentで行頭の複数の`%'を全て削除するか (`nil')
1704 -- Variable: YaTeX-close-paren-always
1705 開き括弧の入力で常に閉じ括弧を入力する (`t')
1707 -- Variable: YaTeX-auto-math-mode
1708 数式モードの切り替えを自動的に行う (`t')
1710 -- Variable: YaTeX-math-key-list-private
1711 数式イメージ補完で用いる (プリフィクスキー . 対応補完テーブル) の
1712 alist (`nil')。補完テーブルの書き方については`yatexmth.el'を参照。
1714 -- Variable: YaTeX-default-pop-window-height
1715 1画面の時にタイプセットバッファを初めて作成する時の高さ。数値で行数、
1716 数字文字列でEmacsウィンドウに対する百分率 (10)
1718 -- Variable: YaTeX-help-file
1719 共用ヘルプファイル (`$doc-directory/../../site-lisp/YATEXHLP.jp')
1721 -- Variable: YaTeX-help-file-private
1722 個人用ヘルプファイル (`"~/YATEXHLP.jp"')
1724 -- Variable: YaTeX-no-begend-shortcut
1725 `[prefix] b ??' のショートカットを使わず、`[prefix] b' だけで補完入力
1726 に入る (`nil')
1728 -- Variable: YaTeX-hilit-pattern-adjustment-private
1729 正規表現とそれにマッチするものの論理的意味をシンボルであらわしたもの
1730 のリスト…のリスト。hilit19 を組み込んでいる時のみ有効。詳しくは
1731 `(assq 'yatex-mode hilit-patterns-alist)' した結果と、変数
1732 `YaTeX-hilit-pattern-adjustment-default' の値(と場合によっては
1733 hilit19 のドキュメント)を参照せよ。
1735 -- Variable: YaTeX-sectioning-level
1736 LaTeXのセクション単位宣言コマンドとその論理的高さのalist。
1738 -- Variable: YaTeX-hierarchy-ignore-heading-regexp
1739 Hierarchy バッファは通常ファイルヘッダとして、LaTeXのセクション宣言コ
1740 マンドの引数を検索し、それがなければコメント行を探すが、その際にヘッ
1741 ダとしては意味を持たないパターンをこの変数に設定する。デフォルトでは
1742 RCS ヘッダとモード指定行(-*- xxx -*-)が設定されている。
1744 -- Variable: YaTeX-skip-default-reader
1745 Non-nil に設定するとsection型コマンドの引数入力時、アドイン関数がなけ
1746 ればミニバッファでの読み込みをせずに入力を完了させる (`nil')
1748 -- Variable: YaTeX-create-file-prefix-g
1749 `\include'などで `prefix g'した時に、ジャンプ先が存在しないファイルで
1750 あってもオープンする (`nil')
1752 -- Variable: YaTeX-simple-messages
1753 各種補完時のメッセージ出力を簡素化する (`nil')
1755 -- Variable: YaTeX-hilit-sectioning-face
1756 色付けが有効な時の `\part' の色 (`'(yellow/dodgerblue
1757 yellow/slateblue)')。リストの第一要素は `hilit-background-mode' が
1758 `'light' の時の、第二要素は `'dark' の時の `\chapter' の色で、文字色/
1759 背景色 のように指定する。
1761 -- Variable: YaTeX-hilit-sectioning-attenuation-rate
1762 色付けが有効な時の、`\subparagraph' の色を `\chapter' の濃度の何%薄く
1763 したものにするか (`'(15 40)') `YaTeX-hilit-sectioning-face' の項参照。
1765 -- Variable: YaTeX-use-AMS-LaTeX
1766 AMS-LaTeX を使用する場合は `t' に設定する (`nil')
1768 -- Variable: YaTeX-use-LaTeX2e
1769 LaTeX2e を使用する場合は `t' に設定する (`t')
1771 -- Variable: YaTeX-template-file
1772 新規ファイル作成時に自動挿入するファイル名 (`~/work/template.tex')
1774 -- Variable: YaTeX-search-file-from-top-directory
1775 inputするファイルを探すときの基準ディレクトリをmainファイルのあるディ
1776 レクトリにするか (`t')
1777 -- Variable: YaTeX-use-font-lock
1778 ソースの色づけパッケージとして font-lock を利用するかどうか
1779 (`(featurep 'font-lock)')
1781 -- Variable: YaTeX-use-hilit19
1782 ソースの色づけパッケージとして hilit19 を利用するかどうか(`(featurep
1783 'hilit19)')
1785 -- Variable: YaTeX-use-italic-bold
1786 italic, boldフォントを野鳥が探すかどうか (Emacs20以降なら`t')
1787 font-lock利用時のみ有効。(`(featurep 'hilit19)'
1789 -- Variable: YaTeX-singlecmd-suffix
1790 全てのmaketitle型コマンドの補完入力直後に挿入する文字列。`"{}"' など
1791 がお勧め。
1793 -- Variable: YaTeX-package-alist-private
1794 LaTeX2eのパッケージ名とその中に含まれるマクロのリスト。適切に設定して
1795 おくと本文入力時にマクロを補完入力するとそのマクロに必要なパッケージ
1796 を usepackage するか自動的に検査してくれる。していなければ
1797 \usepackage を自動追加することもできる。リストは'((パッケージ名1 (補
1798 完タイプ マクロのリスト……) (補完タイプ マクロのリスト……)) (パッケー
1799 ジ名2 (補完タイプ マクロのリスト……) (補完タイプ マクロのリス
1800 ト……))………) という形式にする。補完タイプは `env, section,
1801 maketitle' のどれか。具体例は変数 `YaTeX-package-alist-default' の値
1802 参照。
1804 -- Variable: YaTeX-tabular-indentation
1805 tabular/array 環境で現在行の先頭位置が表の第Nカラムのときは標準インデ
1806 ント位置から N*YaTeX-tabular-indentation 桁下げたインデントにする。
1808 -- Variable: YaTeX-noindent-env-regexp
1809 別の環境内にあっても \begin{} が行頭から始まるべき環境名の正規表現。
1810 verbatim環境などを指定する。
1812 -- Variable: YaTeX-ref-default-label-string
1813 \ref{} のラベル補完でラベル未設定のものに自動的に生成するラベル名の書
1814 式。strftime(3)関数に似た日付ベースで指定する。利用できる書式は以下の
1815 とおり。%y -> 西暦下二桁, %b -> 月の英名, %m -> 月(1〜12) %d -> 日,
1816 %H -> 時, %M -> 分, %S -> 秒, %qx -> アルファベットで26進数化した
1817 yymmdd. %qX -> アルファベットで26進数化した HHMMSS. デフォルトは
1818 "%H%M%S_%d%b%y"
1820 -- Variable: YaTeX-ref-generate-label-function
1821 \ref{}のラベル名自動生成のときに使う関数のシンボル。デフォルトは標準
1822 の YaTeX::ref-generate-label 関数が割り当ててある。引数を2つ取る関数
1823 を定義して、この変数にセットするとその関数を呼んだ結果をデフォルトの
1824 ラベル名候補とする。設定例:
1825 (setq YaTeX-ref-generate-label-function 'my-yatex-generate-label)
1826 (defun my-yatex-generate-label (command value)
1827 (and (string= command "caption")
1828 (re-search-backward "\\\\begin{\\(figure\\|table\\)}" nil t)
1829 (setq command (match-string 1)))
1830 (let ((alist '(("chapter" . "chap")
1831 ("section" . "sec")
1832 ("subsection" . "subsec")
1833 ("figure" . "fig")
1834 ("table" . "tbl"))))
1835 (if (setq command (cdr (assoc command alist)))
1836 (concat command ":" value)
1837 (YaTeX::ref-generate-label nil nil))))
1841 File: yatexj, Node: Sample definitions, Next: Hook variables, Prev: All customizable variables, Up: Lisp variables
1843 カスタマイズ変数設定例
1844 ----------------------
1846 たとえば、prefix キーとして`ESC'を使用し、新たな補完候補を格納するファイ
1847 ルを、`~/src/emacs/yatexrc' にし、行頭の prefix をタブ文字一つに変えたいと
1848 きは、
1850 (setq YaTeX-prefix "\e"
1851 YaTeX-user-completion-table "~/src/emacs/yatexrc"
1852 YaTeX-fill-prefix " ")
1854 を `~/.emacs' に加えます。
1858 File: yatexj, Node: Hook variables, Next: Hook file, Prev: Sample definitions, Up: Lisp variables
1860 hook変数
1861 --------
1863 また、hook 変数 `yatex-mode-hook', `yatex-mode-load-hook' を用意していま
1864 す。すべての yatex-mode のバッファで作用させたいものは、`yatex-mode-hook'
1865 に記述し、`yatex.el' をロードする時だけ作用させたいものは
1866 `yatex-mode-load-hook' に記述します。例えば、`outline-minor-mode' を利用す
1867 る場合、それぞれのバッファで `outline-minor-mode' を有効にしたいので、
1868 `yatex-mode-hook' を次のように設定します。
1870 (setq yatex-mode-hook
1871 '(lambda () (outline-minor-mode t)))
1874 逆に、独自のキー定義を行いたい時などは、`yatex-mode-load-hook' を利用しま
1875 す。例えば、begin 型補完において、 document や、enumerate 以外の環境名も
1876 ショートカットキーで入れたいなどという時は、次のようにします。以下の例は、
1877 `[prefix] ba' で `\begin{abstract}', `\end{abstract}' を挿入します。
1879 (setq yatex-mode-load-hook
1880 '(lambda() (YaTeX-define-begend-key "ba" "abstract")))
1882 なお、新たなキーの定義には、関数 `YaTeX-define-key'
1883 `YaTeX-define-begend-key'を利用するようにしてください。
1887 File: yatexj, Node: Hook file, Prev: Hook variables, Up: Lisp variables
1889 hook用ファイル
1890 --------------
1892 変数 `yatex-mode-load-hook' で定義する内容が多い時は、`yatexhks.el'とい
1893 うファイルを作り、その中に野鳥関連の設定を書く事で、初期化の時に自動的にロー
1894 ドします。
1899 File: yatexj, Node: Add-in functions, Prev: Lisp variables, Up: Customizations
1901 付加関数(アドイン関数)
1902 ======================
1904 各種補完時に、環境名やコマンド名に応じたきめ細やかな補完入力機能を実現す
1905 るための関数を作成することができます。この関数の作成方法や、組み込み方法に
1906 関しては、`yatexadd.doc' をご覧ください。
1910 File: yatexj, Node: Etc, Next: Copying, Prev: Customizations, Up: Top
1912 その他
1913 ******
1915 野鳥の標準の LaTeX コマンドの辞書には、作者が頻繁に使うものしか登録され
1916 ていません。これは、補完候補に使いそうもないコマンドが存在して、補完したい
1917 コマンドを出すまでのストローク数を増やしてしまう事を防止するためです。標準
1918 辞書にないコマンドも、できるだけ補完入力方式を利用し、ユーザ辞書を充実させ
1919 ることで、あなたの LaTeX スタイルにあった野鳥へと育っていくことでしょう。
1923 File: yatexj, Node: Copying, Next: Concept Index, Prev: Etc, Up: Top
1925 取り扱い
1926 ********
1928 本プログラムはフリーソフトウェアです。本プログラムを使用して生じたいかな
1929 る結果に対しても作者は責任を負わないこととします。転載等に関しては制限いた
1930 しません。常識的に扱ってください。また、本プログラムに含まれるコードを利用
1931 すること、改造することも自由に行なって構いませんが、流用することにより契約
1932 締結の必要が生じる場合、私はいかなる契約も締結しません。具体的にはGPLへの
1933 サインはしませんので、GNUに寄贈するものを作っている場合私の作品から取り込
1934 んだコードを流用すると苦労するかもしれません。いかなるコード流用も拒否しま
1935 せんが契約締結は辞退します。
1937 苦情、希望、バグ報告、感想等は歓迎いたします。連絡は yuuji@yatex.org ま
1938 で(2004年1月現在)。継続的に使用してくださる方はメイリングリスト「fj野鳥の
1939 会」に是非加入してください。加入方法については本パッケージの `docs/qanda'
1940 ファイルの「その他」の章を御覧ください。
1942 仕様は、予告なく確実に(気分次第で)変更されます:-p。
1944 広瀬雄二
1948 File: yatexj, Node: Concept Index, Prev: Copying, Up: Top
1950 索引
1951 ****
1953 * Menu:
1955 * :: Greek letter completion. 4.
1956 * ;: Image completion. 4.
1957 * Σ[しくま]: Image completion. 4.
1958 * 括る[くくる]: Enclose section-type command. 4.
1959 * 括る[くくる]: large型補完. 22.
1960 * 引数[ひきすう]: 2個以上の引数をとる section型コマンド. 4.
1961 * 欧文[おうふん]: Accent mark completion. 4.
1962 * ;自身[;ししん]: Image completion. 32.
1963 * ∞[むけんたい]: Image completion. 4.
1964 * 矢印[やしるし]: Image completion. 4.
1965 * ブロック[ふろつく]: begin型補完. 81.
1966 * ヒストリ[ひすとり]: Cooperation with other packages. 8.
1967 * 桁揃え[けたそろえ]: Filling. 4.
1968 * やちょう[やちよう]: Intro. 4.
1969 * ジャンプ[しやんふ]: view-sectioning. 42.
1970 * &入力[&にゆうりよく]: Intelligent newline. 4.
1971 * 設定例[せつていれい]: Sample definitions. 4.
1972 * 随時補完[すいしほかん]: Arbitrary completion. 4.
1973 * 閉じ込める[としこめる]: begin型補完. 81.
1974 * 再帰補完[さいきほかん]: Recursive completion. 4.
1975 * ユーザ辞書[ゆうさししよ]: begin型補完. 71.
1976 * 論理階層[ろんりかいそう]: view-sectioning. 42.
1977 * ここはどこ?[ここはとこ?]: What column. 4.
1978 * お絵描きツール起動[おえかきつうるきとう]: お絵描きツール起動. 4.
1979 * 環境の先頭へ[かんきようのせんとうへ]: 環境を単位としたジャンプ. 7.
1980 * 環境の末尾へ[かんきようのまつひへ]: 環境を単位としたジャンプ. 7.
1981 * 環境をマーク[かんきようをまあく]: 環境を単位としたジャンプ. 7.
1982 * カスタマイズ[かすたまいす]: Customizations. 4.
1983 * キーアサイン[きいあさいん]: Customizations. 4.
1984 * 数式モード[すうしきもおと]: Image completion. 4.
1985 * インストール[いんすとおる]: Installation. 4.
1986 * タイプセッタ[たいふせつた]: Invocation. 4.
1987 * プレヴューア[ふれひゆうあ]: Invocation. 4.
1988 * アウトライン[あうとらいん]: view-sectioning. 4.
1989 * 引数の個数を変える[ひきすうのこすうをかえる]: 2個以上の引数をとる section型コマンド. 24.
1990 * アクセント記号補完[あくせんときこうほかん]: Accent mark completion. 4.
1991 * カスタマイズ変数一覧[かすたまいすへんすういちらん]: All customizable variables. 4.
1992 * 環境名の補完[かんきようめいのほかん]: begin型補完. 4.
1993 * エラー修正[えらあしゆうせい]: Calling typesetter. 4.
1994 * タイプセッタ起動[たいふせつたきとう]: Calling typesetter. 4.
1995 * タイプセットエラー[たいふせつとえらあ]: Calling typesetter. 4.
1996 * 環境名の変更[かんきようめいのへんこう]: Changing LaTeX command. 20.
1997 * モード切り替え[もうときりかえ]: Changing mode of YaTeX. 4.
1998 * タイプセッタの使い分け[たいふせつたのつかいわけ]: Changing typesetter. 12.
1999 * 起動するコマンドを変える[きとうするこまんとをかえる]: Changing typesetter. 7.
2000 * コメントアウト[こめんとあうと]: Commenting out. 4.
2001 * その他のコマンド制御[そのたのこまんとせいきよ]: Controlling which command to invoke. 4.
2002 * 他パッケージとの連携[たはつけえしとのれんけい]: Cooperation with other packages. 4.
2003 * コマンドヒストリ[こまんとひすとり]: Cooperation with other packages. 8.
2004 * カーソルジャンプ[かあそるしやんふ]: Cursor jump. 4.
2005 * %#記法自体の編集[%#きほうしたいのへんしゆう]: Editing %# notation. 4.
2006 * パラグラフの桁揃え[はらくらふのけたそろえ]: Filling. 47.
2007 * 領域決定規則[りよういきけつていきそく]: Fix region for typesetting. 25.
2008 * 長いファイルの編集[なかいふあいるのへんしゆう]: Fix region for typesetting. 34.
2009 * 固定領域のタイプセット[こていりよういきのたいふせつと]: Fix region for typesetting. 4.
2010 * ギリシャ文字補完[きりしやもしほかん]: Greek letter completion. 4.
2011 * イメージ補完[いめえしほかん]: Image completion. 4.
2012 * 数式記号イメージ補完[すうしききこういめえしほかん]: Image completion. 4.
2013 * 他のファイルの手直し[ほかのふあいるのてなおし]: Includeonly. 11.
2014 * インクルード構造[いんくるうとこうそう]: Inclusion hierarchy browser. 4.
2015 * おまかせ改行[おまかせかいきよう]: Intelligent newline. 4.
2016 * プリントアウト[ふりんとあうと]: Invocation. 4.
2017 * 環境の削除[かんきようのさくしよ]: Killing LaTeX command. 6.
2018 * ラベル自動生成[らへるしとうせいせい]: label-generation. 4.
2019 * フォント指定子[ふおんとしていし]: large型補完. 18.
2020 * 文字サイズ指定子[もしさいすしていし]: large型補完. 18.
2021 * ローカル辞書[ろおかるししよ]: Local dictionary. 4.
2022 * 変更/削除[へんこう/さくしよ]: Modifying/Deleting. 4.
2023 * グローバルヘルプ[くろおはるへるふ]: Online help. 16.
2024 * オンラインヘルプ[おんらいんへるふ]: Online help. 4.
2025 * キーワード検索[きいわあとけんさく]: Online help. 4.
2026 * プライベートヘルプ[ふらいへえとへるふ]: Online help. 16.
2027 * 入力ファイル分割[にゆうりよくふあいるふんかつ]: Splitting input files. 11.
2028 * セクション区切り一覧バッファ[せくしよんくきりいちらんはつふあ]: view-sectioning. 18.
2029 * セクション区切り[せくしよんくきり]: view-sectioning. 42.
2030 * 現在のカラム表示[けんさいのからむひようし]: What column. 23.
2031 * apropos: Online help. 4.
2032 * autoload: Installation. 4.
2033 * auto-mode-alist: Installation. 4.
2034 * %#BEGIN: Fix region for typesetting. 4.
2035 * begin型補完[beginかたほかん]: begin型補完. 4.
2036 * C-c: Invocation. 4.
2037 * Demacs: Intro. 4.
2038 * .emacs: Installation. 4.
2039 * %#END: Fix region for typesetting. 4.
2040 * end補完[endほかん]: end補完. 4.
2041 * ghostview: Splitting input files. 16.
2042 * gmhist: Cooperation with other packages. 8.
2043 * hook変数[hookへんすう]: Hook variables. 4.
2044 * 出力終了ページ[しゆつりよくしゆうりようへえし]: Print out. 9.
2045 * includeonly: Includeonly. 4.
2046 * Install: Installation. 4.
2047 * itemなどの桁揃え[itemなとのけたそろえ]: Filling. 8.
2048 * 出力開始ページ[しゆつりよくかいしへえし]: Print out. 9.
2049 * jlatex: Invocation. 4.
2050 * large型補完[largeかたほかん]: large型補完. 4.
2051 * LaTeX: Intro. 4.
2052 * leftarrow: Image completion. 4.
2053 * lpr format: lpr format. 4.
2054 * lprフォーマットの変更[lprふおおまつとのへんこう]: Editing %# notation. 18.
2055 * lprふぉーまっと[lprふおおまつと]: lpr format. 4.
2056 * lprフォーマット[lprふおおまつと]: lpr format. 4.
2057 * maketitle型補完[maketitleかたほかん]: maketitle型補完. 4.
2058 * M-C-@: 環境を単位としたジャンプ. 7.
2059 * M-C-a: 環境を単位としたジャンプ. 7.
2060 * M-C-e: 環境を単位としたジャンプ. 7.
2061 * min-out: Cooperation with other packages. 17.
2062 * M-q: Filling. 47.
2063 * Mule: Intro. 4.
2064 * 勝手にincludeonly[かつてにincludeonly]: Includeonly. 4.
2065 * NTT-jTeX[えぬていいていいしえいてつく]: Filling. 15.
2066 * platex: Invocation. 4.
2067 * prefix ,: Commenting out. 4.
2068 * prefix .: Commenting out. 4.
2069 * prefix <: Commenting out. 4.
2070 * prefix >: Commenting out. 4.
2071 * prefix /: Online help. 4.
2072 * prefix ?: Online help. 4.
2073 * prefix &: What column. 4.
2074 * prefix a: Accent mark completion. 4.
2075 * prefix b: begin型補完. 4.
2076 * prefix c: Modifying/Deleting. 4.
2077 * prefix d: Inclusion hierarchy browser. 4.
2078 * prefix e: end補完. 4.
2079 * prefix g: Cursor jump. 4.
2080 * prefix i: Filling. 8.
2081 * prefix k: Modifying/Deleting. 4.
2082 * prefix key: Invocation. 4.
2083 * prefix l: large型補完. 4.
2084 * prefix m: maketitle型補完. 4.
2085 * prefix s: section型補完. 4.
2086 * prefix SPC: Arbitrary completion. 4.
2087 * prefix w: Changing mode of YaTeX. 4.
2088 * prefixキー変更[prefixきいへんこう]: Lisp variables. 4.
2089 * ページ確認省略lpr起動[へえしかくにんしようりやくlprきとう]: Print out. 12.
2090 * section型補完[sectionかたほかん]: section型補完. 4.
2091 * 複雑なtabular[ふくさつなtabular]: What column. 4.
2092 * 先回りusepackage[さきまわり]: Usepackage cheker. 4.
2093 * YaTeX-help-file: Online help. 16.
2094 * YaTeX-help-file-private: Online help. 16.
2095 * YaTeX-item-regexp: Filling. 20.
2096 * YaTeX-math-sign-alist-private: Image completion. 57.
2097 * yatex-mode-hook: Hook variables. 4.
2098 * yatex-mode-load-hook: Hook variables. 4.
2099 * YaTeX-nervous: Local dictionary. 22.
2100 * .yatexrc: Local dictionary. 4.
2105 Tag table:
2106 Node: Top257
2107 Node: Intro1311
2108 Node: Terminology1614
2109 Node: Main features2249
2110 Node: Installation3282
2111 Node: Invocation4500
2112 Node: Calling typesetter5319
2113 Node: Calling previewer6556
2114 Node: Print out6872
2115 Node: %#notation7138
2116 Node: Changing typesetter7566
2117 Node: Splitting input files7824
2118 Node: Fix region for typesetting8776
2119 Node: lpr format9677
2120 Node: Controlling which command to invoke10486
2121 Node: Editing %# notation10887
2122 Node: Completion11344
2123 Node: begin型補完11817
2124 Node: section型補完14401
2125 Node: 2個以上の引数をとる section型コマンド15496
2126 Node: Enclose section-type command16314
2127 Node: Recursive completion16551
2128 Node: view-sectioning16857
2129 Node: label-generation18053
2130 Node: large型補完18402
2131 Node: maketitle型補完18982
2132 Node: Arbitrary completion19281
2133 Node: end補完19594
2134 Node: Accent mark completion19936
2135 Node: Image completion20361
2136 Node: Greek letter completion22178
2137 Node: Local dictionary22638
2138 Node: Commenting out23243
2139 Node: Cursor jump24402
2140 Node: 対応オブジェクトへのジャンプ24639
2141 Node: お絵描きツール起動25627
2142 Node: メインファイルへのジャンプ26547
2143 Node: 環境を単位としたジャンプ26883
2144 Node: 最後の補完位置へのジャンプ27240
2145 Node: Modifying/Deleting27477
2146 Node: Changing LaTeX command27883
2147 Node: Killing LaTeX command28434
2148 Node: Filling29305
2149 Node: Includeonly30634
2150 Node: What column31195
2151 Node: Intelligent newline31974
2152 Node: Usepackage cheker33007
2153 Node: Changing mode of YaTeX33433
2154 Node: Online help34009
2155 Node: Inclusion hierarchy browser34985
2156 Node: Cooperation with other packages36263
2157 Node: Customizations36718
2158 Node: Lisp variables37015
2159 Node: All customizable variables37622
2160 Node: Sample definitions44923
2161 Node: Hook variables45357
2162 Node: Hook file46251
2163 Node: Add-in functions46457
2164 Node: Etc46684
2165 Node: Copying46968
2166 Node: Concept Index47599
2168 End tag table