changeset 59:48ac97a6b6ce

Call drawing tools ID completion (yahtml)
author yuuji
date Wed, 01 May 1996 15:35:40 +0000
parents 3a7c0c2bf16d
children 9e08ed569d80
files docs/qanda.eng docs/yatexe.tex docs/yatexj.tex help/YATEXHLP.jp yahtml.el yatex.el yatex.new yatex19.el yatexadd.el yatexenv.el yatexgen.el yatexhlp.el yatexlib.el yatexmth.el yatexprc.el
diffstat 15 files changed, 1885 insertions(+), 1522 deletions(-) [+]
line wrap: on
line diff
--- a/docs/qanda.eng	Thu Feb 01 18:55:47 1996 +0000
+++ b/docs/qanda.eng	Wed May 01 15:35:40 1996 +0000
@@ -318,7 +318,7 @@
 		To: yatex-control@jaist.ac.jp
 		Subject: append
 		-----
-		Hi!  See any birds fly by?
+		Hi!  My name is yuuji.  See any birds fly by?
 	
 	and you're in.  The text will be used as  your profile. (you can
 	change it later) Once  you're in, you'll get  a reply with lists
--- a/docs/yatexe.tex	Thu Feb 01 18:55:47 1996 +0000
+++ b/docs/yatexe.tex	Wed May 01 15:35:40 1996 +0000
@@ -14,7 +14,7 @@
 @subtitle Yet Another tex-mode for emacs
 @title Wild Bird
 @subtitle // YaTeX //
-@author @copyright{} 1991-1994 by    HIROSE, Yuuji [yuuji@@ae.keio.ac.jp]
+@author @copyright{} 1991-1996 by    HIROSE, Yuuji [yuuji@@ae.keio.ac.jp]
 @end titlepage
 
 @node Top, What is YaTeX?, (dir), (dir)
@@ -37,7 +37,7 @@
 * Changing and Deleting::       Changing/deleting certain unit of text
 * Filling::                     Filling an item or paragraph
 * Updation of includeonly::     Free from maintaining includeonly
-* What column?::                Guidance to tabular column
+* What column::                 Check what table-column the cursor belong
 * Intelligent newline::         Guess requisites of new line
 * Online help::                 On-line documentation of LaTeX
 * Browsing file hierarchy::     Walking through file hierarchy
@@ -133,7 +133,8 @@
         (@kbd{C-c b}, @kbd{C-c s}, @kbd{C-c l}, @kbd{C-c m})
 @item Enclosing text into La@TeX{} environments or commands
       (@kbd{C-u} @var{AboveKeyStrokes})
-@item Displaying the structure of text at entering sectioning delimiters
+@item Displaying the structure of text at entering sectioning commands
+@item Lump shifting of sectioning commands (@ref{view-sectioning})
 @item Learning unknown/new La@TeX{} commands for the next completion
 @item Argument reading with a guide for complicated La@TeX{} commands
 @item Generating argument-readers for new/unsupported commands(@file{yatexgen})
@@ -1045,6 +1046,7 @@
 @itemize @bullet
 @item @code{\begin@{@}} <-> @code{\end@{@}}
 @item @code{%#BEGIN} <-> @code{%#END}
+@item On the image-including line -> corresponding viewer or drawing tool
 @item @code{\label@{@}} <-> @code{\ref@{@}}
 @item @code{\include(\input)} -> included file
 @item @code{\bibitem@{@}} <-> @code{\cite@{@}}
@@ -1070,6 +1072,36 @@
 Note that this function doesn't work on @code{begin/end},
 @code{%#BEGIN/%#END} pairs because it is meaningless.
 
+@section{Invoking image processor}
+@cindex{Drawing tool invocation}
+
+`image-including line' described above means such lines as
+@code{\epsfile@{file=foo.ps@}}.  If you type @kbd{[prefix] g} on that
+line, YaTeX automatically searches source of `foo.ps' and invokes image
+viewer or drawing tool correspoinding to it.  For example; if you draw
+an image foo.obj with Tgif and enclose its product named foo.eps by
+@code{\epsfile} command.  Typing @kbd{[prefix] g} on @code{\epsfile} line
+make YaTeX invoke @code{tgif foo.obj}.  How a processor is choosen is as
+follows.
+
+@enumerate
+@item
+If there is an expression matching with one of the pattern
+defined in @code{YaTeX-processed-file-regexp-alist}, extract file name
+from regexp group surrounded by \\(\\).  (Which group corresponds is
+written in the cdr part of each list.)  If no matches were found, do
+nothing.
+@item
+If there is a pattern as `%PROCESSOR' which is defined in the variable
+@code{YaTeX-file-processor-alist}, call that processor giving the
+file name with corresponding extension.
+@item
+If not, check the existence of each file which is supplied the
+extension in the cdr part of each list of
+@code{YaTeX-file-processor-alist}.  If any, call the corresponding
+image viewer or drawing tool.
+@end enumerate
+
 @section Jump to main file
 
   Typing
@@ -1250,7 +1282,7 @@
 character on a line changes the fill-prefix temporarily to the depth of
 the line.
 
-@node Updation of includeonly, What column?, Filling, Top
+@node Updation of includeonly, What column, Filling, Top
 @comment  node-name,  next,  previous,  up
 @chapter Updation of @code{\includeonly}
 @cindex includeonly
@@ -1282,7 +1314,7 @@
 by the current file, and type @kbd{%} to comment out the
 @code{\includeonly} line.
 
-@node What column?, Intelligent newline, Updation of includeonly, Top
+@node What column, Intelligent newline, Updation of includeonly, Top
 @comment  node-name,  next,  previous,  up
 @chapter What column?
 @cindex what column
@@ -1320,7 +1352,7 @@
 virtual column  headers by  putting  them  in the  first line  and
 commenting that line with @code{%}.
 
-@node Intelligent newline, Online help, What column?, Top
+@node Intelligent newline, Online help, What column, Top
 @comment  node-name,  next,  previous,  up
 @chapter Intelligent newline
 @cindex Intelligent newline
--- a/docs/yatexj.tex	Thu Feb 01 18:55:47 1996 +0000
+++ b/docs/yatexj.tex	Wed May 01 15:35:40 1996 +0000
@@ -14,7 +14,7 @@
 @subtitle Yet Another tex-mode for emacs
 @title 『野鳥』
 @subtitle // YaTeX //
-@author @copyright{} 1991-1994 by    HIROSE, Yuuji [yuuji@@ae.keio.ac.jp]
+@author @copyright{} 1991-1996 by    HIROSE, Yuuji [yuuji@@ae.keio.ac.jp]
 @end titlepage
 
 @node Top, Intro, (dir), (dir)
@@ -22,7 +22,7 @@
 
 @menu
 * Intro::                       はじめに
-* Termnology::                  マニュアル参照上の注意
+* Terminology::                  マニュアル参照上の注意
 * Main features::               主な機能
 * Installation::                インストール
 * Invocation::                  プロセス起動
@@ -98,7 +98,7 @@
 * Hook file::                   hook用ファイル
 @end menu
 
-@node Intro, Termnology, Top, Top
+@node Intro, Terminology, Top, Top
 @comment  node-name,  next,  previous,  up
 @chapter はじめに
 @cindex Demacs
@@ -114,7 +114,7 @@
 
   English manual @xref{Top, , , yatexe,YaTeX English info}
 
-@node Termnology, Main features, Intro, Top
+@node Terminology, Main features, Intro, Top
 @comment  node-name,  next,  previous,  up
 @chapter 本マニュアル参照上の注意
 
@@ -152,7 +152,7 @@
 いう表記は、@kbd{C-c} と読み換えてください。
 @end itemize
 
-@node Main features, Installation, Termnology, Top
+@node Main features, Installation, Terminology, Top
 @comment  node-name,  next,  previous,  up
 @chapter 主な機能
 
@@ -167,6 +167,7 @@
 @item 既に入力したテキストを環境やコマンド引数の中に取り込む括り補完
 (@kbd{C-u} +通常補完キー)
 @item セクション区切り入力時の文書構造アウトライン表示
+@item セクションコマンドの一括シフト (@ref{view-sectioning})
 @item 補完辞書の学習
 @item La@TeX{} の環境やコマンドに応じたガイド付き引数入力
 @item 野鳥にないガイド付き引数入力関数の自動生成(@file{yatexgen.el})
@@ -279,7 +280,7 @@
 * Print out::                   プリントアウト用コマンドの起動
 @end menu
 
-@node Calling typesetter, Print out, Invocation, Invocation
+@node Calling typesetter, Calling previewer, Invocation, Invocation
 @comment  node-name,  next,  previous,  up
 @section タイプセッタ起動
 @cindex タイプセッタ起動
@@ -329,7 +330,7 @@
 @code{ftp://ftp.ae.keio.ac.jp/pub/text/xdvi/xdvi-remote}
 などから入手することができます。
 
-@node Print out,  , Calling typesetter, Invocation
+@node Print out,  , Calling previewer, Invocation
 @comment  node-name,  next,  previous,  up
 @section プリントアウト
 
@@ -752,7 +753,7 @@
 * view-sectioning::             セクション区切りのアウトライン表示
 @end menu
 
-@node 2個以上の引数をとる section型コマンド, Recursive completion, section型補完, section型補完
+@node 2個以上の引数をとる section型コマンド, Enclose section-type command, section型補完, section型補完
 @comment  node-name,  next,  previous,  up
 @subsection 2個以上の引数をとる section型コマンド
 @cindex 引数[ひきすう]
@@ -793,7 +794,7 @@
   また、起動コマンドの@kbd{s}を大文字に変えて起動すると、あらかじめ書
 いた文章を section 型コマンドの第一引数として括ります。
 
-@node Recursive completion, view-sectioning, 2個以上の引数をとる section型コマンド, section型補完
+@node Recursive completion, view-sectioning, Enclose section-type command, section型補完
 @comment  node-name,  next,  previous,  up
 @subsection 再帰補完
 @cindex 再帰補完[さいきほかん]
@@ -1193,11 +1194,12 @@
 します。対応関係が存在すると解釈されるコマンドには以下のものがあります。
 
 @itemize @bullet
-@item @code{\begin@{@}}←→@code{\end@{@}}
-@item @code{%#BEGIN}←→@code{%#END}
-@item @code{\label@{@}}←→@code{\ref@{@}}
-@item @code{\include(\input)}→対応するファイル
-@item @code{\bibitem@{@}}←→@code{\cite@{@}}
+@item @code{\begin@{@}} ←→ @code{\end@{@}}
+@item @code{%#BEGIN} ←→ @code{%#END}
+@item 画像ファイルの取り込みマクロ → 対応するviewer/お絵かきツール起動
+@item @code{\label@{@}} ←→ @code{\ref@{@}}
+@item @code{\include(\input)} → 対応するファイル
+@item @code{\bibitem@{@}} ←→ @code{\cite@{@}}
 @end itemize
 
   @code{\begin@{@}} か @code{\end@{@}} の行で@kbd{[prefix] g}を押すことに
@@ -1221,6 +1223,40 @@
 この機能は @code{begin/end}, @code{%#BEGIN/%#END} 間のジャンプに対しては
 (意味がないと思われるので)機能しないので注意してください。
 
+@section{お絵描きツール起動}
+@cindex お絵描きツール起動[おえかきつーるきとう]
+
+上記の「画像ファイルの取り込みマクロ」とは、例えば 
+@code{\epsfile@{file=foo@}} のような挿絵取り込みコマンドのことで、この行に
+カーソルを合わせて@kbd{[prefix] g}を押すとその画像ファイルの元となったファ
+イルを対応するお絵描きツールを起動してオープンします。起動するツールの判定
+は以下のようになされます。
+
+@enumerate
+@item
+カレント行が変数 @code{YaTeX-processed-file-regexp-alist} に定義さ
+れている正規表現のいずれかとマッチしたら、ファイル名に相当する部分を 
+\\(\\)から抜き出して覚えておく(何番目の\\(\\)かは変数の各リストの cdr 部に
+入れておく)。マッチしなければ何もしない。
+@item
+行末に、変数 @code{YaTeX-file-processor-alist} に登録されているコマンドが
+「%コマンド」 のように書いてあれば強制的に「コマンド ファイル名.拡張子」を
+起動。
+@item
+なければ、変数 @code{YaTeX-file-processor-alist} の各リストのcdr部に入って
+いる拡張子を「ファイル名」の後ろに足したファイルが存在するか順次調べて、存
+在した場合car部に入っているコマンドを起動する。
+@item
+以上どれかにマッチしなければあきる。
+@end enumerate
+
+
+変数 @code{YaTeX-file-processor-alist} と変数 
+@code{YaTeX-file-processor-alist} の設定方法についてはそれぞれの変数につい
+て describe-variable して説明を読んで下さい。うまく設定すると、画像ファイ
+ルにかぎらず、任意の形式のファイルを任意のプロセッサで処理するコマンドを簡
+単に呼び出すことができます。
+
 @section メインファイルへのジャンプ
 
 @file{chap1.tex}のようなサブファイルで、
@@ -1562,7 +1598,7 @@
 @code{nil}にセットし、野鳥数式モードを手動で切り替えると良いでしょう。
 
 
-@node Online help, Cooperation with other packages, Changing mode of YaTeX, Top
+@node Online help, Inclusion hierarchy browser, Changing mode of YaTeX, Top
 @comment  node-name,  next,  previous,  up
 @chapter オンラインヘルプ
 @cindex オンラインヘルプ[おんらいんへるふ]
@@ -1609,7 +1645,7 @@
 対する説明を書いたならばぜひ私までその説明をお送り下さい。次回の配布に含め
 たいと思います。
 
-@node Inclusion hierarchy browser
+@node Inclusion hierarchy browser, Cooperation with other packages, Online help, Top
 @comment  node-name,  next,  previous,  up
 @chapter インクルード構造ブラウザ
 @cindex インクルード構造[いんくるうとこうそう]
@@ -1676,7 +1712,7 @@
   ただし、隣のウィンドウのファイルの内容を表示する機能に関しては、対応する
 ファイルをクローズしてしまうとうまく働きませんのでご注意ください。
 
-@node Cooperation with other packages, Customizations, Online help, Top
+@node Cooperation with other packages, Customizations, Inclusion hierarchy browser, Top
 @comment  node-name,  next,  previous,  up
 @chapter 他パッケージとの連携
 @cindex  他パッケージとの連携[たはつけえしとのれんけい]
--- a/help/YATEXHLP.jp	Thu Feb 01 18:55:47 1996 +0000
+++ b/help/YATEXHLP.jp	Wed May 01 15:35:40 1996 +0000
@@ -1,1400 +1,1401 @@
-textfloatsep
-\addtolength{\textfloatsep}{長さ}
-ページ先頭のfloatまたは、ページ最下部のfloatとテキストとの間隔。
-
-floatsep
-\addtolength{\floatsep}{長さ}
-floatとfloatの間隔。
-
-oddsidemargin
-\setlength{\oddsidemargin}{長さ}
-右ページの左端から1インチ(2.54cm)の線と本文の距離
-
-pagestyle
-\pagestyle{スタイル}
-出力ページのヘッダとフッタのスタイルを決める。スタイルには以下のものがある:
-plain		標準スタイル. フッタにページ番号だけつける.
-empty		ヘッダにもフッタにも何も出力しない.
-headings	ヘッダにセクションに応じた見出しとページ番号をつけ
-		フッタには何も出力しない.
-myheadings	headingsのスタイルで、ヘッダの情報を \markbpth と
-		\markright で指定できる.
-
-thispagestyle
-\thispagestyle{スタイル}
-現在のページだけのスタイルを決定する。
-
-pagenumbering
-\pagenumbering{スタイル}
-ページ番号のスタイルを決める。スタイルには以下のものがある:
-arabic		アラビア数字
-alph		小文字の英字
-Alph		大文字の英字
-roman		小文字のローマ数字
-Roman		大文字のローマ数字
-
-shortstack
-\shortstack[場所]{重ねて\\表示する\\内容}
-{}内の内容を\\で区切られた単位毎に積み重ねて表示する。
-[場所]は、l(左寄せ)、c(センタリング)、r(右寄せ)のいずれか。
-
-newlength
-\newlength{NAME}
-NAMEという長さコマンドを新たに宣言する。
-
-addtolength
-\addtolength{長さコマンド}{数値}
-第1引数の長さを第2に引数の数値を足す。
-代表的なスタイルパラメータについては \setlength の項を参照せよ。
-
-setlength
-\setlength{長さコマンド}{数値}
-第1引数の長さを第2に引数の数値に設定する。
-代表的なスタイルパラメータは以下の通り:
-(スタイルパラメータの変更はプリアンブルで行うこと)
-\evensidemargin	\footheight	\footskip	\headheight
-\headsep	\marginparsep	\marginparwidth	\oddsidemargin
-\textheight	\textwidth	\topmargin	\topskip
-\parindent	\baselineskip	\baselinestretch \parskip
-\columnsep	\columnseprule	\mathindent
-
-settowidth{\NAME}{TEXT}
-\hbox{TEXT}の出力結果と同じ幅に長さ\NAME をセットする。
-
-evensidemargin
-\setlength{\evensidemargin}{長さ}
-左ページの左端から1インチ(2.54cm)の線と本文の距離
-
-footheight
-\setlength{\footheight}{長さ}
-フッタの高さ
-
-footskip
-\setlength{\footskip}{長さ}
-本文の箱の下端とフッタの距離
-
-headheight
-\addtolength{\headheight}{長さ}
-ヘッダの高さ
-
-headsep
-\setlength{\headsep}{長さ}
-ヘッダと本文の間隔
-
-marginparsep
-\addtolength{\marginparsep}{長さ}
-傍注と本文の間隔
-
-marginparwidth
-\addtolength{\marginparwidth}{長さ}
-傍注の幅
-
-oddsidemargin
-\addtolength{\oddsidemargin}{長さ}
-右ページの左端から1インチ(2.54cm)の線と本文の距離
-
-textheight
-\addtolength{\textheight}{長さ}
-本文の高さ
-
-textwidth
-\addtolength{\textwidth}{長さ}
-本文の幅
-
-topmargin
-\addtolength{\topmargin}{長さ}
-ページ上端から1インチの線とヘッダの距離
-
-topskip
-\addtolength{\topskip}{長さ}
-本文の箱の上端と一行目のテキストとの間隔
-
-parindent
-\setlength{\parindent}{長さ}
-\parindent	段落の先頭の字下げ幅.
-
-linewidth
-\addtolength{\linewidth}{長さ}
-\linewidth	行の幅.
-
-baselineskip
-\addtolength{baselineskip}{長さ}
-\baselineskip	行のベースライン間の最低限の高さ.
-
-baselinestretch
-\renewcommand{baselinestretch}{1.5}
-\baselinestretch \baselineskip に乗ずる係数.		(default=1)
-(* \setlengthなどではなく、\renewcommandで再定義する。)
-
-parskip
-\addtolength{\parskip}{長さ}
-\parskip	段落前の垂直スペース.
-
-columnsep
-\addtolength{\columnsep}{長さ}
-\columnsep	2段組みの時の段間の幅.
-
-columnseprule
-\addtolength{\columnseprule}{長さ}
-二段組の時の段間の罫線の太さ.		(default=0pt)
-
-columnwidth
-\addtolength{\columnwidth}{長さ}
-二段組の時には (\textwidth - \columnsep)/2
-そうでない時は、\textwidth
-
-mathindent
-\addtolength{mathindent}{長さ}
-\mathindent	スタイルオプションで fleqn を指定した場合の、
-		左マージンからの数式の字下げ幅.
-
-LaTeX
-\LaTeX
-\LaTeX のロゴを表示。\LaTeX の定義は以下の通り。
-\def\LaTeX{{\rm L\kern-.36em\raise.3ex\hbox{\sc a}\kern-.15em
-    T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
-
-fragile
-** LaTeX用語 **
-引数によって展開結果が変わるようなコマンドをいう。
-その逆は robust なコマンド。
-
-robust
-** LaTeX用語 **
-展開結果が常に変わらないようなコマンドをいう。
-フォント/サイズ指定子、長さコマンド、数式モード中に使う多くのコマンドは
-robustなコマンド。
-(maketitle型コマンドのうちオプション引数を全くとらないものと考えて良い)
-
-protect
-\protect「fragileなコマンド」
-引数によって結果が変わるようなコマンドを「fragileなコマンド」と言う。
-一方、引数がいろいろな箇所で参照されるコマンドを「動く引数を取るコマンド
-と言う。これは chapter や caption など目次などから参照される引数をとるも
-のや、tabular/array 環境の @ 表現が該当する。
-
-さて、これらの「動く引数を取るコマンド」の引数に「fragileなコマンド」を
-与える時に(fragileなコマンドの直前に)使うのが \protect である。以下は典
-型的な利用例である。
-
-\newcommand{\thissystem}[1]{YaTeX version #1}
-\chapter{\protect \thissystem{1.50}について}
-
-newcommand
-\newcommand{\コマンド名}[引数の数]{定義}
-「コマンド名」を「引数の数」個の引数を取る「定義」であるマクロとして定義
-する。定義中でn番目の引数は #n として参照する。
-	\newcommand{\foo}[1]{\underline{#1}}
-とすると \foo{bar} は \underline{bar} と展開される。したがってフォント指
-定子を含む場合newcommandの{}につられて、
-	\newcommand{\foo}[1]{\bf #1}
-とすると \foo{bar} がテキスト中で \bf bar と展開されてしまうので、
-	\newcommand{\foo}[1]{{\bf #1}}
-としなければならない。
-
-  「コマンド名」のマクロが既に定義されている場合はエラーとなる。再定義す
-る場合は、\renewcommandを使う。
-
-renewcommand
-\renewcommand{\コマンド名}[引数の数]{定義}
-既に定義されているコマンドを別の内容で再定義する。
-以下は \newcommand の説明。
-<refer newcommand>
-
-newenvironment
-\newenvironment{環境名}[引数の数]{定義1}{定義2}
-新たな環境を定義する。
-\begin{環境名}の時の展開内容を「定義1」に\end{環境名}の時の展開内容を
-「定義2」に記述する。
-	\newcommand{\環境名}{定義1} \def{\end環境名}{定義2}
-と同値。
-
-renewenvironment
-\renewenvironment{環境名}[引数の数]{定義1}{定義2}
-既に定義されている「環境名」を別の内容で再定義する。
-以下は、\newenvironmentの説明。
-
-<refer newenvironment>
-
-typeout
-\typeout{メッセージ}
-タイプセット中に「メッセージ」を端末に出力する。
-
-typein
-\typein{メッセージ}	\typein[\マクロ]{メッセージ}
-タイプセット中に「メッセージ」をプロンプトに出し、入力した結果を実行する。
-第二の書式では、「\マクロ」を入力したものに定義する。
-
-par
-\par
-段落の区切りの役割をする。空行と同じ。
-
-everypar
-\everypar
-RTFM
-
-nopagebreak
-\nopagebreak[i]		(i = 0,1,2,3,4)
-改頁を強さiで抑制する([i]を省略すると4)。
-
-pagebreak
-\pagebreak[i]		(i = 0,1,2,3,4)
-改頁を強さiで促す([i]を省略すると4)。
-
-linebreak
-\linebreak[i]		(i = 0,1,2,3,4)
-改行を強さiで促す([i]を省略すると4)。
-
-nolinebreak
-\nolinebreak[i]		(i = 0,1,2,3,4)
-改行を強さiで抑制する([i]を省略すると4)。
-
-samepage
-\samepage
-改頁を禁止する。
-RTFM
-
-obeycr
-\obeycr
-<CR> を \\. に定義する。→\restorecr
-
-restorecr
-\restorecr
-\obeycrで変更した<CR>の定義を元に戻す。
-
-\
-\\		\\[長さ]
-(任意の場所で)改行する。段落中では、\newline と同じ。
-オプション引数の[長さ]を指定すると、次の行との間隔を
-\vspace{長さ}によって確保する。
-
-addvspace
-\addvspace{スキップ}
-縦方向の間隔に「スキップ」の値を足す。ただし
-\addvspace{S1} \addvspace{S2} と複数の値を同時に指定しても
-\addvspace{S1,S2のうち大きいほう} と同値になる。
-
-vspace
-\vspace{間隔}		\vspace*{間隔}
-垂直方向に「間隔」ぶんのスペースを足す。
-\vspace* はどんな場所でもスペースを足すが、\vspace はページの先頭や
-末尾でははたらかない。
-
-vspace*
-\vspace{間隔}		\vspace*{間隔}
-垂直方向に「間隔」ぶんのスペースを足す。
-\vspace* はどんな場所でもスペースを足すが、\vspace はページの先頭や
-末尾でははたらかない。
-
-hspace
-\hspace{間隔}		\hspace*{間隔}
-水平方向に「間隔」ぶんのスペースを足す。
-\hspace* はどんな場所でもスペースを足すが、\hspace は行の先頭や末尾では
-はたらかない。
-
-hspace*
-\hspace{間隔}		\hspace*{間隔}
-水平方向に「間隔」ぶんのスペースを足す。
-\hspace* はどんな場所でもスペースを足すが、\hspace は行の先頭や末尾では
-はたらかない。
-
-smallskip
-\smallskip
-垂直方向に小さな間隔を空ける。
-\def\smallskip{\vspace\smallskipamount}
-
-medskip
-\medskip
-垂直方向に中くらいの間隔を空ける。
-\def\medskip{\vspace\medskipamount}
-
-bigskip
-\bigskip
-垂直方向に大きな間隔を空ける。
-\def\bigskip{\vspace\bigskipamount}
-
-,
-\,
-狭いスペースを空ける。段落モード、LRモード、数式モードいずれでも利用可。
-クォートの中にクォートを書くときなどに用いる。
-例: ``\,`Foo', he said.''
-数式モードで使えるスペースには以下のものがある:
-	\:	少し広い
-	\!	負で狭い
-	\;	広い
-
-:
-$\:$
-少し広いスペース。数式モードのみ。
-
-!
-$\!$
-狭い負のスペース。数式モードのみ。
-
-;
-$\;$
-広いスペース。数式モードのみ。
-
-@whilenum
-\@whilenum TEST \do {BODY}  
-この辺あとで
-
-whiledo{TEST}{BODY}
-TESTが真の間BODYを繰り返す。
-
-
-nofiles
-\nofiles
-プリアンブルで宣言すると、.aux, .idx, .lof, .lot, .toc ファイルの作成が
-抑制される。
-
-includeonly
-\includeonly{sub1}	\includeonly{sub1,sub3}
-\include{}で読み込むファイルのうち、実際に読み込み処理するものを指定する。
-(.texは省略可)
-\includeonlyの引数リストにないファイルはまったく処理されない、または前回
-以前に処理されている場合そこから全く変更がないものとして扱われる。
-
-include
-\include{FILE}
-\clearpage \input{FILE} \clearpage
-と同じはたらきをする。
-
-input
-\input{FILE}
-FILE.tex がそこにあるかのように処理を続ける。
-
-setcounter
-\setcounter{FOO}{VAL}
-カウンタFOOの値をVALに設定する。
-
-addtocounter
-\addtocounter{FOO}{VAL}
-カウンタFOOの値にVALを加える。
-
-newcounter
-\newcounter{COUNTER}[OLDCTR]
-新しいカウンタCOUNTERを設定する。
-オプション引数[OLDCTR]を指定すると、既存のカウンタOLDCTRの値が
-\stepcounter もしくは \addtocounter で変更されるたびにCOUNTERの値もリセッ
-トされる。
-
-value
-\value{COUNTER}
-COUNTERの値を返す。\protect を前置してはならない。
-
-stepcounter
-\stepcounter{FOO}
-カウンタFOOの値をインクリメントする。FOOに従うカウンタがあればそれらをリ
-セットする。
-
-refstepcounter
-\refstepcounter{FOO}
-カウンタFOOの値をインクリメントする。FOOに従うカウンタがあればそれらをリ
-セットする。\stepcounterとの違いは、\refstepcounter{FOO} の直後に 
-\label{hoge} があった場合に、\ref{hoge} の値が \value{FOO} を持つように
-「\ref値」を設定することである。
-
-arabic
-\arabic{COUNTER}
-アラビア数字でCOUNTERの値を出力。
-
-roman
-\roman{COUNTER}
-小文字のローマ数字でCOUNTERの値を出力。
-
-Roman
-\Roman{COUNTER}
-大文字のローマ数字でCOUNTERの値を出力。
-
-alph
-\alph{COUNTER}
-小文字の英字でCOUNTERの値を出力。
-
-Alph
-\Alph{COUNTER}
-大文字の英字でCOUNTERの値を出力。
-
-fnsymbol
-\fnsymbol{COUNTER}
-脚注シンボル(1 = *, 2 = \dagger, ...) でCOUNTERの値を出力。数式モードのみ。
-
-label
-\label{LABEL}
-ラベルLABELの値をその時の「\ref値」に設定する。
-この値は、\ref{LABEL}によって参照される。また\pageref{LABEL}により
-\label{LABEL}の存在するページ番号が参照される。
-「\ref値」とは \section などのセクションコマンド、enumerate環境での
-\item コマンド、theorem環境などによって設定される値である。例えば、
-enumerate環境中の \item の直後ではそのitemの番号が「\ref値」となり、
-そこにある \label{LABEL} はitemの番号をLABELにセットする。
-
-ref
-\ref{LABEL}
-\label{LABEL}で設定したLABELの値を参照する。
-本文中で設定されたラベルにたいしてはページ番号が、
-図表中で設定されたラベルは図表番号が、
-enumerateされたitemで設定されたラベルにたいしては、item番号が返される。
-
-pageref
-pageref{LABEL}
-\label{LABEL}の存在するページ番号を参照する。
-
-(
-\( 数式 \)
-文中数式を組む。
-\begin{math} 数式 \end{math}
-と同値。\( および \)は fragile.
-
-)
-\( x^2 = 4 \)
-文中数式を組む。
-\begin{math} 数式 \end{math}
-と同値。\( および \)は fragile.
-
-[
-ディスプレイ数式を組む。
-\[ 数式 \]
-\begin{displaymath} 数式 \end{displaymath}
-と同値。\[ および \]は fragile.
-
-)
-\[ 数式 \]
-ディスプレイ数式を組む。
-\begin{displaymath} 数式 \end{displaymath}
-と同値。\[ および \]は fragile.
-
-equation
-\begin{equation} 数式 \end{equation}
-番号つきの数式をdisplaymath環境で組む。
-
-eqnarray
-\begin{eqnarray} 方程式の並び \end{eqnarray}
-方程式の並びを3つの桁に整理して出力する。3つの桁は&記号によって、
-「左辺 & 等不等号 & 右辺」のように区切られる。例えば以下のようにする。
-\begin{eqnarray}
- 3x + 2y & = & 4 \\
-  x - 4y & = & -5
-\end{eqnarray}
-eqnarray* 環境は数式番号を出力しないほかはeqnarray環境と同じである。
-
-eqnarray*
-\begin{eqnarray*} 方程式の並び \end{eqnarray*}
-数式番号を出力しないほかはeqnarray環境と同じである。
-
-frac
-\frac{分子}{分母}
- 分子
-------   のような分数形式を組む。{分子 \over 分母} と同じ。
- 分母
-
-sqrt
-\sqrt[N]{式}
-「式」のN乗根をあらわす数式。[N]を省略すると平方根。
-
-lefteqn
-\lefteqn{式}
-ディスプレイ数式モードにおいて、「式」が幅ゼロであるとみなして、左寄せす
-る。たとえばeqnarray環境において、左辺が長くなってしまう場合に、行を
-折り畳むために利用する。
-\begin{eqnarray}
- \lefteqn{a_1 + a_2 + \cdots + a_n =} \\
- 	&	&	a_1 + b_1 + \cdots + z_1 + \\
- 	&	&	b_2 + c+2 + \cdost + z_2
-\end{eqnarray}
-
-center
-\begin{center} 内容 \end{center}
-「内容」を中央寄せする。各行は\\によって改行位置を指定する。
-→ \centering
-
-flushright
-\begin{flushright} 内容 \end{flushright}
-「内容」を右寄せする。各行は\\によって改行位置を指定する。
-→ \raggedright
-
-flushleft
-\begin{flushleft} 内容 \end{flushleft}
-「内容」を左寄せする。各行を\\によって改行位置を指定するとその位置で改行
-するが、指定しないと適当な行長のところで改行してくれる。
-→ \raggedleft
-
-centering
-\centering 
-段落をセンタリングして組版する。
-たとえば table環境、figura環境の先頭で宣言すると環境の終りまでをセンタリ
-ングして組む。
-
-raggedright
-\raggedright
-段落の右端を不揃いにして組版。
-結果として左寄せになる。
-
-raggedleft
-\raggedleft
-段落の左端を不揃いにして組版。
-結果として右寄せになる。
-
-raggedbottom
-\raggedbottom
-組版する時に各ページの高さに多少のずれがあっても許容する。
-プリアンブルで指定する。
-→\flushbottom
-
-flushbottom
-\flushbottom
-組版する時に各ページの高さを正確にそろえる。
-プリアンブルで指定する。
-→\raggedbottom
-
-sloppy
-\sloppy
-\sloppy を指定すると、各行を必ず右マージンで折り返す代わりに、
-単語間の空白を大目に見る。
-→\fussy
-
-fussy
-\fussy
-通常の組版規則に戻る。
-→\sloppy
-
-sloppypar
-\begin{sloppypar} 段落 \end{sloppypar}
-段落を \sloppy で組む。
-→\sloppy
-
-verbatim
-\begin{verbatim} 内容 \end{verbatim}
-「内容」を固定幅フォントのタイプライタ書体で表示し、すべての文字を(TeXの
-シーケンスとしてではなく)そのまま解釈する。
-
-#「ばーばちむ」じゃなくて「ばーべいたむ」だ!
-
-verbatim*
-\begin{verbatim*} 内容 \end{verbatim*}
-通常のverbatim環境において、スペース文字を空白ではなく、TeXbook に載って
-いるスペース文字のように印字する。
-
-(註)こういう感じ→ |_|
-    (苦しい…)
-
-list
-\begin{list}{デフォルトラベル}{整形パラメータ} ... \end{list}
-リスト環境に入る。リスト環境では \item で指定された各項目を一定の字下げ
-で列挙する。第1引数には \item のオプション引数のラベルが省略された時のデ
-フォルトラベルを指定し、第2引数には各itemを置く時に処理されるパラメータ
-を指定する。
-例:
-\begin{list}%
- {$\diamond$}
- {\addtolength{\leftmargin}{4em}}
- \item 第1引数には\verb|\item| にオプション引数をつけなかった時にふる、
-       デフォルトのラベルを与える。
- \item 第2引数には各itemを置く時に処理されるパラメータを与える。
- \item[*] のようにオプション引数をつけるとそれがラベルとなる。
-\end{list}
-
-  list環境の体裁を制御する変数には以下のものがある(括弧内は既定値)。
-水平方向:
-<refer list環境の体裁を制御する変数>
-
-list環境の体裁を制御する変数
-\labelwidth	itemのラベルの幅
-\labelsep	ラベルの右端と最初のアイテムのテキストとの間隔
-\leftmargin	list環境内での左マージン
-\rightmargin	同右マージン (0pt)
-\itemindent	itemの直前に加えられるインデント幅 (0pt)
-\linewidth	一行の幅
-\listparindent	各パラグラフの先頭のインデント(ただし\itemの付いている先
-		頭のパラグラフを除く)(0pt)
-
-垂直方向:
-\topsep		list環境に入る前のパラグラフと最初のitemとの間隔
-\partopsep	list環境で新しいパラグラフをはじめる時に\topsepに加えら
-		れる付加的な間隔
-\itemsep	連続するitemどうしの間隔
-\parsep		一つのitem内でのパラグラフどうしの間隔
-
-
-itemize
-\begin{itemize} \item アイテム1 ... \item アイテムn \end{itemize}
-項目を列挙するための環境。
-最大4つまでネストできる。
-各レベルのitemの頭につく記号は、\labelitemi, \labelitemii,
-\labelitemiii, \labelitemiv で制御される。
-
-itemize環境の体裁を制御する変数には以下のものがある。
-<refer list環境の体裁を制御する変数>
-
-
-enumerate
-\begin{enumerate} \item アイテム1 ... \item アイテムn \end{enumerate}
-項目を番号つきで列挙するための環境。
-最大4つまでネストできる。
-各レベルのitemの頭につく番号は、enumi, enumii, enumiii, enumiv
-が保持していて、各itemのラベルは、\labelenumi, ..., \labelenumiv
-で生成される。また、\p@enumN\theenumN は \ref値を設定する。
-(Nはレベルの深さ。\ref値については\refの説明を参照せよ)
-たとえば
-\def\theenumii{\alph{enumii}}
-\def\p@enumii{\theenumi\theenumii}
-\def\labelenumii{(\theenumii)}
-とすると \ref値が 3a などのように設定される。
-
-enumerate環境の体裁を制御する変数には以下のものがある。
-<refer list環境の体裁を制御する変数>
-
-item
-\item			\item[LABEL]
-itemize, enumerate, description 環境などで項目を開始する。
-[LABEL]を指定するとラベルとしてLABELを出力する。
-
-description
-\begin{description} \item[見出し単語] 説明 ... \end{description}
-[見出し単語]を見出しとする
-<refer itemize>
-
-subitem
-\subitem 項目
-サブアイテムを定義。
-
-subsubitem
-\subsubitem 項目
-サブサブアイテムを定義。
-
-makebox
-\makebox[WID][POS]{オブジェクト}	\makebox(X,Y)[POS]{オブジェクト}
-第1の書式では、オブジェクトをWIDで指定した幅として、\hbox 内の
-POSで指定した場所に配置する。POSにlを指定すると左寄せ、rを指定すると右寄せ、
-何も指定しないとセンタリングされる。
-第2の書式では、picuture環境で大きさ(X,Y)の(\unitlengthを基準とする)
-\hbox にオブジェクトを配置する。配置位置POSは第1の書式と同様。
-
-mbox
-\mbox{オブジェクト}
-\makebox{オブジェクト}と同じ。
-
-newsavebox
-\newsavebox{\CMD}
-新規のボックス保存用コマンドを定義する。\CMDは \savebox コマンドで
-ボックスを保存するために使う。\newsaveboxで宣言したコマンド名は
-常にグローバルとなる。
-
-savebox
-\savebox{\CMD}{テキスト}
-ボックスを組む内容である「テキスト」の結果を\CMDに保存する。
-「テキスト」は \makebox への引数と全く同じであるが、「テキスト」を
-処理した結果はその場に表示はしない。\usebox{\CMD}により処理したボックス
-が置かれる。
-
-sbox
-\sbox{\CMD}{テキスト}
-\saveboxと同じ。sboxはrobust, saveboxはfragile
-
-framebox
-\framebox{オブジェクト}
-「オブジェクト」に枠をつけて\makeboxと同様の処理をする。
-枠の線の太さは \framerule、オブジェクトとの間隔は \framesep で決まる。た
-だしpicture環境で \framebox(X,Y){オブジェクト}とした場合は、picture環境
-用の線の太さに従い、外枠とオブジェクトとの間隔は空けられない。
-
-fbox
-\fbox{オブジェクト}
-\framebox{オブジェクト}と同じ。
-\fboxはrobust, \frameboxはfragile
-
-parbox
-\parbox[POS]{WIDTH}{TEXT}
-TEXTをWIDThの幅で組んでボックスを作成する。ボックスの位置はPOSによって
-c : センタリング(デフォルト)
-b : ボックスの一番下の線が現テキストのラインに合う
-t : ボックスの一番上の線が現テキストのラインに合う
-のように決められる。\parboxではパラメータが以下のようにリセットされる。
-
-\parskip          = 0pt
-\linewidth        = \hsize
-\@totalleftmargin = 0pt
-\leftskip         = 0pt
-\rightskip        = 0pt
-\@rightskip       = 0pt
-\parfillskip      = 0pt plus 1fil
-\lineskip         = \normallineskip
-\baselineskip     = \normalbaselineskip
-
-minipage
-\begin{minipage}[pos]{WIDTH}  TEXT   \end{minipage}
-\parbox とほぼ同様WIDTHの幅のTEXTをボックスとして組む。ボックスの位置は
-POSによって
-c : センタリング(デフォルト)
-b : ボックスの一番下の線が現テキストのラインに合う
-t : ボックスの一番上の線が現テキストのラインに合う
-のように決められる。
-parboxと違い、TEXTは通常のパラグラフとして組まれる。
-
-rule
-\rule[RAISED]{WIDTH}{HEIGHT}
-幅 WIDTH x 高さ HEIGHT の罫線を作る。RAISEDが指定された場合、その分だけ
-上に上げられる。
-
-underline
-\underline{TEXT}
-TEXTに下線をつけて表示。
-
-raisebox
-\raisebox{DISTANCE}[HEIGHT][DEPTH]{BOX}
-BOXをDISTANCEだけ上げて組む。
-HEIGHT, DEPTH を指定すると、TeXから見たBOXの「高さ」と「深さ」
-(註:これらの用語についてはTeXBookなどを参照のこと)
-を HEIGHT, DEPTH に指定する。
-
-tabbing
-\begin{tabbing} \= text1.1 \= text1.2 \\ \> text2.1 \> text2.2 \end{tabbing}
-桁揃えを行う環境を作る(入れ子不可)。例えば、
-\begin{tabbing}
- \= 項目1 \hspace*{2em} \= 項目2 \hspace*{3em}	\= 項目3 \\
- \> いろは		\> にほへ		\> とちり \+ \\
- 			\> ぬるを		\> わかよ \\
-			\> たれそ \- \\
- \> つねな		\> らむう		\> ゐのお
-\end{tabbing}
-上のtabbing環境は以下のように3つのタブ位置で組まれる。
-  (1番目)   (2番目)     (3番目)
-   いろは    にほへ      とちり
-             ぬるを      をかよ
-             たれそ
-   つねな    らむう      ゐのお
-        \2em/      \3em/
-tabbing環境におけるタブ位置操作コマンドは以下の通り(nは1から):
-\=	n番目のタブ位置を現在位置に設定しタブカウンタ(n)を1進める
-\\	改行してタブカウンタをリセットする(n=1)
-\>	位置をn番目のタブ位置に設定し、カウンタを1進める
-\+	次の行のタブカウンタの初期値に1加える \+ \\ とすると次の行の最初
-	の \> は2番目のタブ位置を示す. \+ を複数書くとその数だけタブカウ
-	ンタの初期値が増える
-\-	\+とは逆に、次の行のタブカウンタの初期値から1引く
-\<	一つ前のタブカウンタに戻ってそのタブ位置をセット. 行頭のみ
-\'	\'以降を通常のタブ位置より \tabbingsep 分だけ右寄せして出力
-\`	\`以降のテキストをすべて右寄せして出力
-\pushtabs それまで用いていたタブストップ位置を全てpush
-\poptabs  それまで用いていたタブストップ位置を全てpop. \pushtabs と 
-	\poptabs は必ず対になっていなければならない. 入れ子可
-\aX	Xは = か ' か `   tabbing環境でない通常のアクセントは
-	\a= \a' \a` で表わす
-\kill	現在行のテキストは出力せずタブ設定だけ解釈する
-
-array
-\begin{array}{プリアンブル} C1 & C2 & .. & Cn \\ D1 ... \end{array}
-(数式などによる)配列を作成する。行列などは array 環境で作成する。
-詳しい説明は tabular 環境を参照。
-
-tabular
-\begin{tabular}[OPT]{プリアンブル} C1 & C2 & .. & Cn \\ D1 ... \end{tabular}
-表を作成する。
-【[OPT]】(省略可)
-[t]		表の上端を現在の行に合わせる
-[b]		表の下端を現在の行に合わせる
-【プリアンブル】
-c		カラムを一つ指定し、そのカラムをセンタリング
-l		カラムを一つ指定し、そのカラムを左寄せ
-r		カラムを一つ指定し、そのカラムを右寄せ
-@{表現}		「表現」をカラム毎に挿入する。これを指定すると
-		\arraycolsep や \tabcolsep のスペーシングは抑制される
-*{N}{PRE}	PREを N 回書いたのと同様の作用
-p{LEN}		そのカラムをLENの長さのparboxエントリとして作成する
-
-【array, tabular 環境で使えるコマンド】
-\multicolumn
-<refer multicolumn>
-\vline
-<refer vline>
-\hline
-<refer hline>
-\cline{i-j}
-<refer cline>
-\extracolsep{W}
-<refer extracolsep>
-
-
-以下の例を参照せよ。
-
-\LaTeX 表記					印刷形式
-\begin{array}{ccr}
- x+y+z	& a_1	&  1 \\				x+y+z  a1    1
- x+z	& a_2	&  21 \\			 x+z   a2   21
- y	& a_3	&  321				  y    a3  321
-\end{array}
-
-\[ \left(
- \begin{array}{cccc}
-  a_{11}  & a_{12}  & \dots & a_{1n} \\		/ a11 a12 ... a1n \
-  a_{21}  & a_{22}  & \dots & a_{2n} \\		| a21 a22 ... a2n |
-  \vdots  & \vdots  & \ddots& \vdots \\		|  :   :  \.   :  |
-  a_{n1}  & a_{n2}  & \dots & a_{nn}		\ an1 an2 ..: ann /
- \end{array} 
-\right)\]
-
-array環境を \right( \left) で囲むと配列自体を大きな括弧で括る。同様に、
-\right\{ \left\} で配列を中括弧で、\right[ \left] で配列を大括弧で、
-\right| \left| で配列をノルム記号(絶対値記号)で括ることができる。
-\right の数と \left の数は必ず同じでなければならないが、\right( \left] 
-のように括弧の種類は違ってもよい。\right. のように . をつけると見えない
-括弧が出力される。
-
-\[ 答 \cdots \left\{					/
-	\begin{array}{ccc}				|  x = 5
-	 x & = & 5 \\				答 ... <
-   	 y & = & 3					|  y = 3
-	\end{array} \right. \]				\
-
-array環境を制御する変数には以下のものがある:
-\arraycolsep    : array環境の各カラム間の間隔の半分
-\tabcolsep      : tabular環境の各カラム間の間隔の半分
-\arrayrulewidth : 罫線の幅
-\doublerulesep  : array, tabular環境での隣接した罫線(二重罫線?)間の間隔
-\arraystretch   : \baselinestretch と同様行間スペースの比率を決める
-		  \renewcommandで再定義する
-
-tabular環境は、ページを跨ることができない。これを可能にするスタイルファ
-イルとして、supertab.styがある。
-
-tabular*
-\begin{tabular*}{幅}{プリアンブル} ... \end{tabular*}
-幅を指定してtabular環境を作成。
-この幅を充填するだけのスペースをプリアンブルの \extracolsep{} コマンドで
-確保する。
-\begin{tabular*}{10em}[b]{|c@{\extracolsep{\fill}}|c|c|}
- \hline
- a & b & c \\ \hline
- 1 & 2 & 3
-\end{tabular*}
-tabular環境の説明を参照のこと。
-
-multicolumn
-\multicolumn{N}{FORMAT}{ITEM}
-	tabular環境で現在のカラムを含めNこのカラムをFORMATに従った
-	ITEMで埋める。FORMATはl,r,cのうち(最大)ひとつ
-
-vline
-\vline
-	tabular環境でそのカラムに縦線を引く. 縦線の位置はそのカラムに
-	指定されている l, r, c によって決まる
-
-hline
-\hline
-	tabular環境で、行間に水平線を引く. 環境の最初のエントリの直前、
-	もしくは \\ の直後に来なければならない. もし \hline を続けて
-	指定すると\doublerulesep 分の空白が空けられる(標準では罫線の
-	箱自体が分割されてしまう)
-
-cline
-\cline{i-j}
-	tabular環境中、i番目からj番目のカラムに横線を引く. \hlineと同様
-
-extracolsep
-\extracolsep{W}
-	tabular環境の@表現の中で用いると、幅Wのスペースをそれ以降の
-	全てのカラムの左側に加える
-
-picture
-\begin{picture}(WIDTH,HEIGHT)(X,Y) ..contents.. \end{picture}
-幅WIDTH, 高さHEIGHT の描画ボックスを作成。このボックスの左下の座標は
-(X,Y) となる(省略すると(0,0))。これらの引数の数値を含め、picuture環境の
-数値は \unitlength に対する相対値であらわされる。\unitlength の既定値は
-1pt.
-今時picture環境じゃないと思うので用法しか書かないよーん。
-
-【コマンド】
-\put(X座標,Y座標){描画オブジェクト}
-\multiput(X座標,Y座標)(Xの増分,Yの増分){繰り返し回数}{描画オブジェクト}
-【描画オブジェクト】
-\makebox(X座標,Y座標)[POS]{テキスト}		(箱)
-\framebox(X座標,Y座標)[POS]{テキスト}		(枠付きの箱)
-\dashbox(X座標,Y座標)[POS]{テキスト}		(破線枠付きの箱)
-(以上POS = l, r, b, t)
-\line(ΔX,ΔY){水平方向の長さ}			(直線)
-\vector(ΔX,ΔY){水平方向の長さ}		(矢印)
-(ΔX,ΔY = ±1, ±2, ..., ±6 で互素, それぞれ基準は始点)
-\shortstack[POS]{一行\\二行\\三行}
-\circle{直径}					(円)
-\circle*{直径}					(塗り潰した円)
-(それぞれ基準は円の中心, 最大直径は40pt, 15pt)
-\oval(直径X,直径Y)[POS]				(楕円風 POS = l, r, t, b)
-\frame{描画オブジェクト}
-\thinlines, \thicklines				(細,太線を選ぶ)
-\linethickness{太さ}
-
-newtheorem
-\newtheorem{NAME}{TEXT}[COUNTER]	\newtheorem{NAME}[OLDNAME]{TEXT} 
-定理型の新しい環境「NAME」を定義する。
-TEXT	定理番号のキャプションとして出される文字列
-COUNTER	NAMEのカウンタの親となるカウンタ名. 通常section.
-第2の形式では OLDNAME と同じカウンタ形式を使うことを指示する。
-NAME環境のカウンタ形式は \theNAME コマンドを再定義する。これのデフォルトは
-\theCOUNTER.\arabic{NAME}
-
-title
-\title{タイトル}
-\maketitleコマンドで出力するタイトル名を設定する。
-
-author
-\author{著者名}
-\maketitleコマンドで出力する著者を設定する。
-複数の著者を書くときは \and で区切って名前を書く。
-
-date
-\date{日付}
-\maketitleコマンドで出力する日付を設定する。
-\date を省略するとタイプセットした日の日付が出力される。
-
-thanks
-\thanks{脚注}
-タイトル中(\title, \author, \date)での脚注(謝辞や住所など)の出力を行う。
-
-maketitle
-\maketitle
-タイトルを出力する。document環境中で宣言されなければならない。
-タイトルを構成する項目は以下のコマンドで定義する。
-\title{タイトル}
-\author{著者名}
-\date{日付}		(省略するとタイプセットした日の日付)
-\thanks{脚注}		(謝辞や所属名などを脚注形式で出すために用いる)
-
-part
-\part{第?部のタイトル}
-<refer chapter>
-
-chapter
-\chapter{章のタイトル}
-文を区切るコマンド一覧:
-\part			第?部
-\chapter		?章	(articleにはない)
-\section		?節
-\subsection		?.?節
-\subsubsection		?.?.?節
-\paragraph		段落
-\subparagraph		副段落
-
-section
-\section{セクション名}
-第一引数のセクション名でセクションの区切りを設定。
-<refer chapter>
-
-subsection
-\subsection{サブセクション名}
-第一引数の名前でサブセクションの区切りを設定。
-<refer chapter>
-
-subsubsection
-\subsubsection{サブサブセクション名}
-第一引数の名前でサブサブセクションの区切りを設定。
-<refer chapter>
-
-paragraph
-\paragraph{パラグラフ名}
-第一引数の名前でパラグラフの区切りを設定。
-<refer chapter>
-
-subparagraph
-\subparagraph{サブパラグラフ名}
-第一引数の名前でサブパラグラフの区切りを設定。
-<refer chapter>
-
-appendix
-\appendix
-付録部に入る宣言。
-セクションコマンドの番号の方式を付録用に変える。
-
-contentsline
-\contentsline{TYPE}{ENTRY}{PAGE}
-\contentsline{subsection}{\makebox{30pt}[r]{1.4.3} Gnats and Gnus}{22}
-とすると .toc ファイルに ENTRY を吐き出す。
-TYPEはセクションコマンドのどれか。
-
-addcontentsline
-\addcontentsline{TABLE}{TYPE}{ENTRY}
-TABLEで指定したファイル(toc, lof, lot のどれか)にENTRYというエントリを出
-力する。TYPEはTABLEの値によって変わり、
-	toc:	セクションコマンドのどれか
-	lof:	figure
-	lot:	table
-である。
-
-addtocontents
-\addtocontents{TABLE}{TEXT}
-TEXTをTABLEで指定したテーブルファイル(toc, lof, lot のどれか)に出力する。
-
-index
-\index{INDEX}
-索引のエントリを定義する。
-
---------------------------------------------------------------------
-<refer 索引の作り方>
-
-glossary
-\glossary{STRING}
-用語集のエントリを定義する。
-
-makeindex
-\makeindex
-\indexentryで登録されている項目を .idx ファイルに書き込む。
-プリアンブルで指定する。
-
---------------------------------------------------------------------
-<refer 索引の作り方>
-
-makeglossary
-\makeglossary
-\glossaryentryで登録されている項目を .glo ファイルに書き込む。
-プリアンブルで指定する。
-
-索引の作り方
-
-(1)\documentstyleにmakeidxオプションを与え、プリアンブルに \makeindex
-   を書き、索引を生成する場所に \printindex を書く。
-(2)本文に \index{索引となる単語} を埋め込む。
-(3)一度(または二度)タイプセットする。
-(4).idxファイルができるのでそのファイルを makeindex にかける。
-(5).indファイルができるのでもう一度タイプセットして出来上がり。
-
-** \indexの記法 **
-日本語をそのまま \index{漢字} と入れたのではあいうえお順にソートされない。
-そこで、読みを@で区切って \index{かんじ@漢字} のように入れる。
-
-bibliography
-\bibliography{FILE1,FILE2, ... ,FILEn}
-BibTeXで読み込むファイルを指定する。
-
-bibliographystyle
-\bibliographystyle{スタイル}
-plain	通上
-unsrt	ソートしない
-alpha	"Foo94" のようなタグをつける
-abbrv	著者のファーストネーム、発行月、書籍名が省略される
-
-thebibliography
-\begin{thebibliography} \bibitem{アイテム}… \end{thebibliography}
-参考文献データの登録環境を開始する。
-データは \bibitem コマンドによって登録する。
-\bibitem コマンドの用法は以下の通り。
-<refer bibitem>
-
-bibitem
-\bibitem{NAME}			\bibitem[LABEL]{NAME}
-\bibitem{NAME}の書式では、NAMEで参照され、[1],[2] のような形で引用記号が
-出力される、\bibitem[LABEL]{NAME}の書式では、\cite{NAME}で参照され、
-[LABEL] のような引用記号が出力される。
-
-cite
-\cite{NAME}			\cite[LABEL]{NAME}
-\cite{NAME}の書式では、NAMEで参照され、[1],[2] のような形で引用記号が
-出力される、\cite[LABEL]{NAME}の書式では、[1,LABEL] のような引用記号
-が出力される。
-
-footnote
-\footnote{NOTE}
-NOTEという内容の脚注を生成する。
-\footnote[NUM]{NOTE} とすると、番号をNUMで指定できる。
-脚注がうまく出力されないような場所では \footnotemark と \footnotetext を
-組み合わせて出力する。
-fragile
-
-footnotemark
-\footnotemark[NUM]
-脚注番号のみ出力する時に使う。tabbing環境のように、脚注が出力されないと
-ころで、\footnotetext と組み合わせて使う。[NUM]は省略可。
-
-footnotetext
-\footnotetext[NUM]{TEXT}
-脚注番号を出力せず脚注のみ出力する。
-通常 \footnotemark と組み合わせて使う。
-
-footnotesize
-\footnotesize
-文字サイズを脚注用のサイズに変更する。
-
-footnotesep
-\footnotesep
-各脚注の最初に置かれる空白の高さ(数値)。
-
-
-footnoterule
-\footnoterule
-本文と脚注のあいだに引かれる罫線を出力。
-
-documentstyle
-\documentstyle[OPTION1,OPTION2, ... ,OPTIONn]{STYLE}
-文書スタイルを指定する。
-[OPTION...] を指定すると、STYLE.sty を読んだ後に、
-OPTIONn.sty が順次読み込まれる。
-
-verb
-\verb#内容#
-\verbの直後に来る文字と、次にあらわれる同じ文字とのあいだに挟まれたもの
-を verbatim で表示する。\verb|foo| と \verb,foo, は同じ結果が得られる。
-
-styleparameter
-まだ訳していないスタイルパラメータ。
-%   \topfigrule     : Command to place rule (or whatever) between floats
-%                     at top of page and text.  Executed in inner vertical
-%                     mode right before the \textfloatsep skip separating
-%                     the floats from the text.  Must occupy zero vertical
-%                     space.  (See \footnoterule.)
-botfigrule
-\setlength{\botfigrule}{長さ}
-Same as \topfigrule, but put after the \textfloatsep
-skip separating text from the floats at bottom of page.
-
-intextsep
-\setlength{\intextsep}{長さ}
-文書中フロートの上下に残された空白の長さ
-
-
-newpage
-\newpage
-改頁を行う。
-\clearpage 		未出力の図表があれば独立した図表用頁を出力してから
-			改頁を行う。
-\cleardoublepage 	clearpageと同じだが、 両画面スタイル(bookなど)の
-			場合は、奇数頁から始まるように改頁する。
-\newpage		二段組みの時は現在の段を終了する。
-
-clearpage
-\clearpage 
-<refer newpage>
-
-cleardoublepage
-\cleardoublepage 
-<refer newpage>
-
-長さ
-
-長さに使える単位には以下のものがある。
-cm		センチ
-em		大文字Mの幅
-ex		小文字xの高さ
-in		インチ(約2.54cm)
-mm		ミリメートル
-pc		パイカ(=12pt)
-pt		ポイント(72.27pt=1インチ)
-\fill		自然長は0だが、任意の長さに伸びることのできる伸縮長
-\stretch{X}	\fill のX倍
-
-stretch
-\stretch{X}
-<refer 長さ>
-
-twocolumn
-\twocolumn[STRING]
-改頁したあと二段組みでの組版を開始する。
-[STRING]を指定すると、STRINGを二段ぶち抜きのタイトルとして出力。
-→onecolumn
-
-onecolumn
-\onecolumn
-改頁したあとで一段組みでの組版を開始する。
-→twocolumn
-
-topnewpage
-\topnewpage{BOX}
-新しいページを開始し、\textwidthのBOXをparboxで作成する。
-二段組みページでぶち抜きタイトルを作成する時に用いるとよい。
-
-LaiTeX
-a Little Assistant Interface for TeX on Vz
-おそらくあなたが今 Vz 上で使っているこのモード。
-LaTeXを効率的に使うための多くの機能を盛り込んでいます。
-
-【発音について】
-laitex.defなどプログラムを指す時は「らいてっく」、システムを指す時は「ら
-いちょう」と読みます。
-
-【補足】
-「雷鳥」の旧仮名遣いは「らいてう」だそうです。
-
-【謝辞】
-以下の方々の御協力を頂きました。ここに感謝申し上げます。
-
-(順不同/代表項目のみ)
-横田一也さん(マツダ)
-	転載を行って頂きました。
-
-北岸隆史さん(豊橋技術科学大)
-小林克志さん(広島大)
-保甫恒喜さん(立命館大)
-小島昭二さん(静岡大)
-小林肇さん(金沢工業大)
-坂田一生さん(niftyserve)
-山際直之さん(niftyserve)
-並川仁さん(niftyserve)
-	バグの指摘や、要望、励ましのメールを頂きました。
-	(まとめてでごめんなさい -- 桂川)
-
-柴田みゆきさん(京都ソフトウェアリサーチ)
-	Software Design 誌で本ソフトをご紹介いただきました。
-
-バッキー"毒ラッコ"トミザワさん(筑波大)
-	雷鳥の為にノートパソコンを無償で貸与して下さいました。
-	彼のおかげで、雷鳥ははばたくことが出来ました。
-
-laitex
-a Little Assistant Interface for TeX on Vz
-<refer LaiTeX>
-
-YaTeX
-(setq auto-mode-alist (cons '("\\.tex$" . yatex-mode) auto-mode-alist))
-おそらくあなたが今 Emacs で使っているこのモード。
-LaTeXを効率的に使うための多くの機能を盛り込んでいます。
-
-【発音について】
-yatex.elなどプログラムを指す時は「やてっく」、システムを指す時は「やちょ
-う」と読みます。
-
-【謝辞】
-以下の方々の御協力を頂きました。ここに感謝申し上げます。
-
-(順不同/代表項目のみ)
-峯恒憲さん(九州大)
-	Bibtex起動、typeset process の kill、エラー箇所の正しい判定
-	の要望その他を頂きました。
-
-森中秀明さん(アンリツ)
-	タイプセットバッファでの実行継続、lpq, bibtex起動、領域指定タイ
-	プセット後のプレビュー対象ファイルのデフォルト値の変更、
-	describe-mode、\verb の補完の要望、verbatim環境や\verbの中にある
-	\begin{}, \end{} を数えないようにする要望、などを頂きました。
-
-石坂裕毅さん(富士通)
-	YaTeX-get-error-file のバグレポートなどを頂きました。
-
-Bayardさん(asciinet)
-	min-outとの連係の不具合の報告を頂きました。
-
-Kけんさん(asciinet)
-	ms-dos固有の設定に関するバグレポートを頂きました。
-
-sa2cさん(asciinet)
-	Mule用のパッチを頂きました。
-
-桂川直己さん(筑波大)
-	数え切れないバグレポートと要望を頂きました。またVzへの移植版であ
-	る laitex(雷鳥) を作成されました。また、「こんな機能はどうだろう?」
-	と相談すると、「いらん」と一蹴し、しばらく経ってから「やっぱり欲
-	しい」と言うなど、多くの混乱を招かせていただきました。
-
-るねきちさん(asciinet)
-	占い師だそうです。
-	http://www.comp.ae.keio.ac.jp/~yuuji/lune/astrology/
-
-柱川さん(prc)
-        各所で暴れています。
-	http://www.prc.tsukuba.ac.jp/~katsura/
-
-三平善郎さん(慶應大)
-	開き括弧の入力時の処理のモード分けのアイデアを頂きました。
-
-萩庭崇さん(慶應大)
-	begin型補完の内側に文字があった場合それらをインデントしてほしい
-	という要望を頂きました。
-
-田中健次郎さん(慶應大)
-	タイプセット時に未セーブ状態の関連ファイルをセーブして欲しいとい
-	う要望を頂きました。
-
-bauerさん(asciinet)
-	アクセント補完の要望とアクセント記号の規則の情報等を頂きました。
-
-佐々木たろうさん(asciinet)
-	数式環境の処理に関する多様なアイデア、ウィンドウ選択処理に関する
-	ユーザインタフェースの繊細な改善案などを頂きました。
-
-Deslarさん(asciinet)
-	byte-compile関係のバグ報告などを頂きました。
-
-tadfさん(asciinet)
-	Demacsでのプロセス起動時のインタフェースの不具合の報告などを頂き
-	ました。
-
-ほんまたけるさん(asciinet)
-	パラグラフ境界をLaTeX用に設定しなおす要望などを頂きました。
-
-TUSKさん(asciinet)
-	Texinfoドキュメント(初版)を作成して頂き、第二版に関するコメント
-	と添削をして頂きました。
-
-横田和也さん(asciinet)
-	dviout起動時の工夫の案、ミニバッファで読み込むもののヒストリを分
-	けるアイデアのきっかけを頂き、ヘルプファイルの項目の提供をして頂
-	きました。
-
-Nop.Mさん(asciinet)
-	異なる環境での設定の不具合等のレポートを数多く頂きました。
-
-jaybirdさん(asciinet)
-	英語版のヘルプファイルを作成して頂きました。
-
-内山滋さん(成蹊大学)
-	日本語入力モード判定関数のバグを直すパッチ、section-view のバグ
-	報告、* 付きセクションコマンド対応の要望、\right, \left のアドイ
-	ン関数作成に関する有用な情報などを頂きました。
-
-神貞介さん(niftyserve)
-	dviout起動オプションに関するコメント、ヘルプファイルのバグ報告等
-	を頂きました。
-
-藤枝和宏さん(JAIST)
-	野鳥/雷鳥の Mailing List を設立して頂きました。
-
-松本憲彦さん(東京学芸大)
-	マニュアルのバグを指摘して頂きました。
-
-小宮山康子さん(成蹊大)
-	\item[] などの補完後 [] の中にカーソルを置く要望を頂きました。
-
-竹中浩さん(東京大)
-	M-q (YaTeX-fill-paragraph) のバグを報告して頂きました。
-	YaTeX-insert-amper をcontributeして頂きました。
-	作者の数多くの凡ミスを丁寧に拾って下さいました。
-	YaTeX-shift-section-undo の実現方法を教えていただきました。
-
-佐藤圭さん(慶應大)
-	ネストした同種のitemize環境でのindentationの不具合を指摘して頂き
-	ました。
-
-石川洋介さん(富士通)
-	Mule2で斜体フォントを使用するための手順、auto-insertの存在を教え
-	て頂きました。
-
-井上浩一さん(九州大学)
-	MuleでフォーマットしたinfoファイルをNemacs用にコンバートする方法
-	を教えて頂きました。
-
-田口直文さん(慶應大)
-	font-lock の使い方を調査するといって、まだ何も教えてくれません。
-	早くしてください:-)。
-
-吉田尚志さん(慶應大)
-	label/ref補完で、labelやrefで始まる単語全てを候補にいれてしまう
-	バグを報告して頂きました。
-
-上田佳明さん(豊橋技科大)
-	Emacs 19.29 以降で生じるYaTeX-indent-new-comment-lineの不具合を
-	指摘して頂きました。
-
-成宮隆之さん(富山大学)
-	「初めて使うYaTeX」というCoolなWWWページを作成して下さいました。
-
-田中敏さん(富山大学)
-	AMS-LaTeX に対応するためのパッチを送って頂きました。
-
-西澤幸司さん(東北大学)
-田仲稔さん([株]ケイケンエンジニアリングシステム)
-	begin型補完でおまかせ改行関数があれば、補完時に初期エントリを挿
-	入するというアイデアを提供していただきました。
-
-葛西澄人さん(慶應大)
-	YaTeX-default-pop-window-height の原案を頂きました。
-	$ \% $ のような場合の数式モード終了判定のミスを指摘して頂きました。
-yatex
-(setq auto-mode-alist (cons '("\\.tex$" . yatex-mode) auto-mode-alist))
-<refer YaTeX>
-
+textfloatsep
+\addtolength{\textfloatsep}{長さ}
+ページ先頭のfloatまたは、ページ最下部のfloatとテキストとの間隔。
+
+floatsep
+\addtolength{\floatsep}{長さ}
+floatとfloatの間隔。
+
+pagestyle
+\pagestyle{スタイル}
+出力ページのヘッダとフッタのスタイルを決める。スタイルには以下のものがある:
+plain		標準スタイル. フッタにページ番号だけつける.
+empty		ヘッダにもフッタにも何も出力しない.
+headings	ヘッダにセクションに応じた見出しとページ番号をつけ
+		フッタには何も出力しない.
+myheadings	headingsのスタイルで、ヘッダの情報を \markbpth と
+		\markright で指定できる.
+
+thispagestyle
+\thispagestyle{スタイル}
+現在のページだけのスタイルを決定する。
+
+pagenumbering
+\pagenumbering{スタイル}
+ページ番号のスタイルを決める。スタイルには以下のものがある:
+arabic		アラビア数字
+alph		小文字の英字
+Alph		大文字の英字
+roman		小文字のローマ数字
+Roman		大文字のローマ数字
+
+shortstack
+\shortstack[場所]{重ねて\\表示する\\内容}
+{}内の内容を\\で区切られた単位毎に積み重ねて表示する。
+[場所]は、l(左寄せ)、c(センタリング)、r(右寄せ)のいずれか。
+
+newlength
+\newlength{NAME}
+NAMEという長さコマンドを新たに宣言する。
+
+addtolength
+\addtolength{長さコマンド}{数値}
+第1引数の長さを第2に引数の数値を足す。
+代表的なスタイルパラメータについては \setlength の項を参照せよ。
+
+setlength
+\setlength{長さコマンド}{数値}
+第1引数の長さを第2に引数の数値に設定する。
+代表的なスタイルパラメータは以下の通り:
+(スタイルパラメータの変更はプリアンブルで行うこと)
+\evensidemargin	\footheight	\footskip	\headheight
+\headsep	\marginparsep	\marginparwidth	\oddsidemargin
+\textheight	\textwidth	\topmargin	\topskip
+\parindent	\baselineskip	\baselinestretch \parskip
+\columnsep	\columnseprule	\mathindent
+
+settowidth{\NAME}{TEXT}
+\hbox{TEXT}の出力結果と同じ幅に長さ\NAME をセットする。
+
+evensidemargin
+\setlength{\evensidemargin}{長さ}
+左ページの左端から1インチ(2.54cm)の線と本文の距離
+
+footheight
+\setlength{\footheight}{長さ}
+フッタの高さ
+
+footskip
+\setlength{\footskip}{長さ}
+本文の箱の下端とフッタの距離
+
+headheight
+\addtolength{\headheight}{長さ}
+ヘッダの高さ
+
+headsep
+\setlength{\headsep}{長さ}
+ヘッダと本文の間隔
+
+marginparsep
+\addtolength{\marginparsep}{長さ}
+傍注と本文の間隔
+
+marginparwidth
+\addtolength{\marginparwidth}{長さ}
+傍注の幅
+
+oddsidemargin
+\addtolength{\oddsidemargin}{長さ}
+右ページの左端から1インチ(2.54cm)の線と本文の距離
+
+textheight
+\addtolength{\textheight}{長さ}
+本文の高さ
+
+textwidth
+\addtolength{\textwidth}{長さ}
+本文の幅
+
+topmargin
+\addtolength{\topmargin}{長さ}
+ページ上端から1インチの線とヘッダの距離
+
+topskip
+\addtolength{\topskip}{長さ}
+本文の箱の上端と一行目のテキストとの間隔
+
+parindent
+\setlength{\parindent}{長さ}
+\parindent	段落の先頭の字下げ幅.
+
+linewidth
+\addtolength{\linewidth}{長さ}
+\linewidth	行の幅.
+
+baselineskip
+\addtolength{baselineskip}{長さ}
+\baselineskip	行のベースライン間の最低限の高さ.
+
+baselinestretch
+\renewcommand{\baselinestretch}{1.5}
+\baselinestretch \baselineskip に乗ずる係数.		(default=1)
+(* \setlengthなどではなく、\renewcommandで再定義する。)
+
+parskip
+\addtolength{\parskip}{長さ}
+\parskip	段落前の垂直スペース.
+
+columnsep
+\addtolength{\columnsep}{長さ}
+\columnsep	2段組みの時の段間の幅.
+
+columnseprule
+\addtolength{\columnseprule}{長さ}
+二段組の時の段間の罫線の太さ.		(default=0pt)
+
+columnwidth
+\addtolength{\columnwidth}{長さ}
+二段組の時には (\textwidth - \columnsep)/2
+そうでない時は、\textwidth
+
+mathindent
+\addtolength{mathindent}{長さ}
+\mathindent	スタイルオプションで fleqn を指定した場合の、
+		左マージンからの数式の字下げ幅.
+
+LaTeX
+\LaTeX
+\LaTeX のロゴを表示。\LaTeX の定義は以下の通り。
+\def\LaTeX{{\rm L\kern-.36em\raise.3ex\hbox{\sc a}\kern-.15em
+    T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}
+
+fragile
+** LaTeX用語 **
+引数によって展開結果が変わるようなコマンドをいう。
+その逆は robust なコマンド。
+
+robust
+** LaTeX用語 **
+展開結果が常に変わらないようなコマンドをいう。
+フォント/サイズ指定子、長さコマンド、数式モード中に使う多くのコマンドは
+robustなコマンド。
+(maketitle型コマンドのうちオプション引数を全くとらないものと考えて良い)
+
+protect
+\protect「fragileなコマンド」
+引数によって結果が変わるようなコマンドを「fragileなコマンド」と言う。
+一方、引数がいろいろな箇所で参照されるコマンドを「動く引数を取るコマンド
+と言う。これは chapter や caption など目次などから参照される引数をとるも
+のや、tabular/array 環境の @ 表現が該当する。
+
+さて、これらの「動く引数を取るコマンド」の引数に「fragileなコマンド」を
+与える時に(fragileなコマンドの直前に)使うのが \protect である。以下は典
+型的な利用例である。
+
+\newcommand{\thissystem}[1]{YaTeX version #1}
+\chapter{\protect \thissystem{1.50}について}
+
+newcommand
+\newcommand{\コマンド名}[引数の数]{定義}
+「コマンド名」を「引数の数」個の引数を取る「定義」であるマクロとして定義
+する。定義中でn番目の引数は #n として参照する。
+	\newcommand{\foo}[1]{\underline{#1}}
+とすると \foo{bar} は \underline{bar} と展開される。したがってフォント指
+定子を含む場合newcommandの{}につられて、
+	\newcommand{\foo}[1]{\bf #1}
+とすると \foo{bar} がテキスト中で \bf bar と展開されてしまうので、
+	\newcommand{\foo}[1]{{\bf #1}}
+としなければならない。
+
+  「コマンド名」のマクロが既に定義されている場合はエラーとなる。再定義す
+る場合は、\renewcommandを使う。
+
+renewcommand
+\renewcommand{\コマンド名}[引数の数]{定義}
+既に定義されているコマンドを別の内容で再定義する。
+以下は \newcommand の説明。
+<refer newcommand>
+
+newenvironment
+\newenvironment{環境名}[引数の数]{定義1}{定義2}
+新たな環境を定義する。
+\begin{環境名}の時の展開内容を「定義1」に\end{環境名}の時の展開内容を
+「定義2」に記述する。
+	\newcommand{\環境名}{定義1} \def{\end環境名}{定義2}
+と同値。
+
+renewenvironment
+\renewenvironment{環境名}[引数の数]{定義1}{定義2}
+既に定義されている「環境名」を別の内容で再定義する。
+以下は、\newenvironmentの説明。
+
+<refer newenvironment>
+
+typeout
+\typeout{メッセージ}
+タイプセット中に「メッセージ」を端末に出力する。
+
+typein
+\typein{メッセージ}	\typein[\マクロ]{メッセージ}
+タイプセット中に「メッセージ」をプロンプトに出し、入力した結果を実行する。
+第二の書式では、「\マクロ」を入力したものに定義する。
+
+par
+\par
+段落の区切りの役割をする。空行と同じ。
+
+everypar
+\everypar
+RTFM
+
+nopagebreak
+\nopagebreak[i]		(i = 0,1,2,3,4)
+改頁を強さiで抑制する([i]を省略すると4)。
+
+pagebreak
+\pagebreak[i]		(i = 0,1,2,3,4)
+改頁を強さiで促す([i]を省略すると4)。
+
+linebreak
+\linebreak[i]		(i = 0,1,2,3,4)
+改行を強さiで促す([i]を省略すると4)。
+
+nolinebreak
+\nolinebreak[i]		(i = 0,1,2,3,4)
+改行を強さiで抑制する([i]を省略すると4)。
+
+samepage
+\samepage
+改頁を禁止する。
+RTFM
+
+obeycr
+\obeycr
+<CR> を \\. に定義する。→\restorecr
+
+restorecr
+\restorecr
+\obeycrで変更した<CR>の定義を元に戻す。
+
+\
+\\		\\[長さ]
+(任意の場所で)改行する。段落中では、\newline と同じ。
+オプション引数の[長さ]を指定すると、次の行との間隔を
+\vspace{長さ}によって確保する。
+
+addvspace
+\addvspace{スキップ}
+縦方向の間隔に「スキップ」の値を足す。ただし
+\addvspace{S1} \addvspace{S2} と複数の値を同時に指定しても
+\addvspace{S1,S2のうち大きいほう} と同値になる。
+
+vspace
+\vspace{間隔}		\vspace*{間隔}
+垂直方向に「間隔」ぶんのスペースを足す。
+\vspace* はどんな場所でもスペースを足すが、\vspace はページの先頭や
+末尾でははたらかない。
+
+vspace*
+\vspace{間隔}		\vspace*{間隔}
+垂直方向に「間隔」ぶんのスペースを足す。
+\vspace* はどんな場所でもスペースを足すが、\vspace はページの先頭や
+末尾でははたらかない。
+
+hspace
+\hspace{間隔}		\hspace*{間隔}
+水平方向に「間隔」ぶんのスペースを足す。
+\hspace* はどんな場所でもスペースを足すが、\hspace は行の先頭や末尾では
+はたらかない。
+
+hspace*
+\hspace{間隔}		\hspace*{間隔}
+水平方向に「間隔」ぶんのスペースを足す。
+\hspace* はどんな場所でもスペースを足すが、\hspace は行の先頭や末尾では
+はたらかない。
+
+smallskip
+\smallskip
+垂直方向に小さな間隔を空ける。
+\def\smallskip{\vspace\smallskipamount}
+
+medskip
+\medskip
+垂直方向に中くらいの間隔を空ける。
+\def\medskip{\vspace\medskipamount}
+
+bigskip
+\bigskip
+垂直方向に大きな間隔を空ける。
+\def\bigskip{\vspace\bigskipamount}
+
+,
+\,
+狭いスペースを空ける。段落モード、LRモード、数式モードいずれでも利用可。
+クォートの中にクォートを書くときなどに用いる。
+例: ``\,`Foo', he said.''
+数式モードで使えるスペースには以下のものがある:
+	\:	少し広い
+	\!	負で狭い
+	\;	広い
+
+:
+$\:$
+少し広いスペース。数式モードのみ。
+
+!
+$\!$
+狭い負のスペース。数式モードのみ。
+
+;
+$\;$
+広いスペース。数式モードのみ。
+
+@whilenum
+\@whilenum TEST \do {BODY}  
+この辺あとで
+
+whiledo{TEST}{BODY}
+TESTが真の間BODYを繰り返す。
+
+
+nofiles
+\nofiles
+プリアンブルで宣言すると、.aux, .idx, .lof, .lot, .toc ファイルの作成が
+抑制される。
+
+includeonly
+\includeonly{sub1}	\includeonly{sub1,sub3}
+\include{}で読み込むファイルのうち、実際に読み込み処理するものを指定する。
+(.texは省略可)
+\includeonlyの引数リストにないファイルはまったく処理されない、または前回
+以前に処理されている場合そこから全く変更がないものとして扱われる。
+
+include
+\include{FILE}
+\clearpage \input{FILE} \clearpage
+と同じはたらきをする。
+
+input
+\input{FILE}
+FILE.tex がそこにあるかのように処理を続ける。
+
+setcounter
+\setcounter{FOO}{VAL}
+カウンタFOOの値をVALに設定する。
+
+addtocounter
+\addtocounter{FOO}{VAL}
+カウンタFOOの値にVALを加える。
+
+newcounter
+\newcounter{COUNTER}[OLDCTR]
+新しいカウンタCOUNTERを設定する。
+オプション引数[OLDCTR]を指定すると、既存のカウンタOLDCTRの値が
+\stepcounter もしくは \addtocounter で変更されるたびにCOUNTERの値もリセッ
+トされる。
+
+value
+\value{COUNTER}
+COUNTERの値を返す。\protect を前置してはならない。
+
+stepcounter
+\stepcounter{FOO}
+カウンタFOOの値をインクリメントする。FOOに従うカウンタがあればそれらをリ
+セットする。
+
+refstepcounter
+\refstepcounter{FOO}
+カウンタFOOの値をインクリメントする。FOOに従うカウンタがあればそれらをリ
+セットする。\stepcounterとの違いは、\refstepcounter{FOO} の直後に 
+\label{hoge} があった場合に、\ref{hoge} の値が \value{FOO} を持つように
+「\ref値」を設定することである。
+
+arabic
+\arabic{COUNTER}
+アラビア数字でCOUNTERの値を出力。
+
+roman
+\roman{COUNTER}
+小文字のローマ数字でCOUNTERの値を出力。
+
+Roman
+\Roman{COUNTER}
+大文字のローマ数字でCOUNTERの値を出力。
+
+alph
+\alph{COUNTER}
+小文字の英字でCOUNTERの値を出力。
+
+Alph
+\Alph{COUNTER}
+大文字の英字でCOUNTERの値を出力。
+
+fnsymbol
+\fnsymbol{COUNTER}
+脚注シンボル(1 = *, 2 = \dagger, ...) でCOUNTERの値を出力。数式モードのみ。
+
+label
+\label{LABEL}
+ラベルLABELの値をその時の「\ref値」に設定する。
+この値は、\ref{LABEL}によって参照される。また\pageref{LABEL}により
+\label{LABEL}の存在するページ番号が参照される。
+「\ref値」とは \section などのセクションコマンド、enumerate環境での
+\item コマンド、theorem環境などによって設定される値である。例えば、
+enumerate環境中の \item の直後ではそのitemの番号が「\ref値」となり、
+そこにある \label{LABEL} はitemの番号をLABELにセットする。
+
+ref
+\ref{LABEL}
+\label{LABEL}で設定したLABELの値を参照する。
+本文中で設定されたラベルにたいしてはページ番号が、
+図表中で設定されたラベルは図表番号が、
+enumerateされたitemで設定されたラベルにたいしては、item番号が返される。
+
+pageref
+pageref{LABEL}
+\label{LABEL}の存在するページ番号を参照する。
+
+(
+\( 数式 \)
+文中数式を組む。
+\begin{math} 数式 \end{math}
+と同値。\( および \)は fragile.
+
+)
+\( x^2 = 4 \)
+文中数式を組む。
+\begin{math} 数式 \end{math}
+と同値。\( および \)は fragile.
+
+[
+ディスプレイ数式を組む。
+\[ 数式 \]
+\begin{displaymath} 数式 \end{displaymath}
+と同値。\[ および \]は fragile.
+
+]
+\[ 数式 \]
+ディスプレイ数式を組む。
+\begin{displaymath} 数式 \end{displaymath}
+と同値。\[ および \]は fragile.
+
+equation
+\begin{equation} 数式 \end{equation}
+番号つきの数式をdisplaymath環境で組む。
+
+eqnarray
+\begin{eqnarray} 方程式の並び \end{eqnarray}
+方程式の並びを3つの桁に整理して出力する。3つの桁は&記号によって、
+「左辺 & 等不等号 & 右辺」のように区切られる。例えば以下のようにする。
+\begin{eqnarray}
+ 3x + 2y & = & 4 \\
+  x - 4y & = & -5
+\end{eqnarray}
+eqnarray* 環境は数式番号を出力しないほかはeqnarray環境と同じである。
+
+eqnarray*
+\begin{eqnarray*} 方程式の並び \end{eqnarray*}
+数式番号を出力しないほかはeqnarray環境と同じである。
+
+frac
+\frac{分子}{分母}
+ 分子
+------   のような分数形式を組む。{分子 \over 分母} と同じ。
+ 分母
+
+sqrt
+\sqrt[N]{式}
+「式」のN乗根をあらわす数式。[N]を省略すると平方根。
+
+lefteqn
+\lefteqn{式}
+ディスプレイ数式モードにおいて、「式」が幅ゼロであるとみなして、左寄せす
+る。たとえばeqnarray環境において、左辺が長くなってしまう場合に、行を
+折り畳むために利用する。
+\begin{eqnarray}
+ \lefteqn{a_1 + a_2 + \cdots + a_n =} \\
+ 	&	&	a_1 + b_1 + \cdots + z_1 + \\
+ 	&	&	b_2 + c+2 + \cdost + z_2
+\end{eqnarray}
+
+center
+\begin{center} 内容 \end{center}
+「内容」を中央寄せする。各行は\\によって改行位置を指定する。
+→ \centering
+
+flushright
+\begin{flushright} 内容 \end{flushright}
+「内容」を右寄せする。各行は\\によって改行位置を指定する。
+→ \raggedright
+
+flushleft
+\begin{flushleft} 内容 \end{flushleft}
+「内容」を左寄せする。各行を\\によって改行位置を指定するとその位置で改行
+するが、指定しないと適当な行長のところで改行してくれる。
+→ \raggedleft
+
+centering
+\centering 
+段落をセンタリングして組版する。
+たとえば table環境、figura環境の先頭で宣言すると環境の終りまでをセンタリ
+ングして組む。
+
+raggedright
+\raggedright
+段落の右端を不揃いにして組版。
+結果として左寄せになる。
+
+raggedleft
+\raggedleft
+段落の左端を不揃いにして組版。
+結果として右寄せになる。
+
+raggedbottom
+\raggedbottom
+組版する時に各ページの高さに多少のずれがあっても許容する。
+プリアンブルで指定する。
+→\flushbottom
+
+flushbottom
+\flushbottom
+組版する時に各ページの高さを正確にそろえる。
+プリアンブルで指定する。
+→\raggedbottom
+
+sloppy
+\sloppy
+\sloppy を指定すると、各行を必ず右マージンで折り返す代わりに、
+単語間の空白を大目に見る。
+→\fussy
+
+fussy
+\fussy
+通常の組版規則に戻る。
+→\sloppy
+
+sloppypar
+\begin{sloppypar} 段落 \end{sloppypar}
+段落を \sloppy で組む。
+→\sloppy
+
+verbatim
+\begin{verbatim} 内容 \end{verbatim}
+「内容」を固定幅フォントのタイプライタ書体で表示し、すべての文字を(TeXの
+シーケンスとしてではなく)そのまま解釈する。
+
+#「ばーばちむ」じゃなくて「ばーべいたむ」だ!
+
+verbatim*
+\begin{verbatim*} 内容 \end{verbatim*}
+通常のverbatim環境において、スペース文字を空白ではなく、TeXbook に載って
+いるスペース文字のように印字する。
+
+(註)こういう感じ→ |_|
+    (苦しい…)
+
+list
+\begin{list}{デフォルトラベル}{整形パラメータ} ... \end{list}
+リスト環境に入る。リスト環境では \item で指定された各項目を一定の字下げ
+で列挙する。第1引数には \item のオプション引数のラベルが省略された時のデ
+フォルトラベルを指定し、第2引数には各itemを置く時に処理されるパラメータ
+を指定する。
+例:
+\begin{list}%
+ {$\diamond$}
+ {\addtolength{\leftmargin}{4em}}
+ \item 第1引数には\verb|\item| にオプション引数をつけなかった時にふる、
+       デフォルトのラベルを与える。
+ \item 第2引数には各itemを置く時に処理されるパラメータを与える。
+ \item[*] のようにオプション引数をつけるとそれがラベルとなる。
+\end{list}
+
+  list環境の体裁を制御する変数には以下のものがある(括弧内は既定値)。
+水平方向:
+<refer list環境の体裁を制御する変数>
+
+list環境の体裁を制御する変数
+\labelwidth	itemのラベルの幅
+\labelsep	ラベルの右端と最初のアイテムのテキストとの間隔
+\leftmargin	list環境内での左マージン
+\rightmargin	同右マージン (0pt)
+\itemindent	itemの直前に加えられるインデント幅 (0pt)
+\linewidth	一行の幅
+\listparindent	各パラグラフの先頭のインデント(ただし\itemの付いている先
+		頭のパラグラフを除く)(0pt)
+
+垂直方向:
+\topsep		list環境に入る前のパラグラフと最初のitemとの間隔
+\partopsep	list環境で新しいパラグラフをはじめる時に\topsepに加えら
+		れる付加的な間隔
+\itemsep	連続するitemどうしの間隔
+\parsep		一つのitem内でのパラグラフどうしの間隔
+
+
+itemize
+\begin{itemize} \item アイテム1 ... \item アイテムn \end{itemize}
+項目を列挙するための環境。
+最大4つまでネストできる。
+各レベルのitemの頭につく記号は、\labelitemi, \labelitemii,
+\labelitemiii, \labelitemiv で制御される。
+
+itemize環境の体裁を制御する変数には以下のものがある。
+<refer list環境の体裁を制御する変数>
+
+
+enumerate
+\begin{enumerate} \item アイテム1 ... \item アイテムn \end{enumerate}
+項目を番号つきで列挙するための環境。
+最大4つまでネストできる。
+各レベルのitemの頭につく番号は、enumi, enumii, enumiii, enumiv
+が保持していて、各itemのラベルは、\labelenumi, ..., \labelenumiv
+で生成される。また、\p@enumN\theenumN は \ref値を設定する。
+(Nはレベルの深さ。\ref値については\refの説明を参照せよ)
+たとえば
+\def\theenumii{\alph{enumii}}
+\def\p@enumii{\theenumi\theenumii}
+\def\labelenumii{(\theenumii)}
+とすると \ref値が 3a などのように設定される。
+
+enumerate環境の体裁を制御する変数には以下のものがある。
+<refer list環境の体裁を制御する変数>
+
+item
+\item			\item[LABEL]
+itemize, enumerate, description 環境などで項目を開始する。
+[LABEL]を指定するとラベルとしてLABELを出力する。
+
+description
+\begin{description} \item[見出し単語] 説明 ... \end{description}
+[見出し単語]を見出しとする
+<refer itemize>
+
+subitem
+\subitem 項目
+サブアイテムを定義。
+
+subsubitem
+\subsubitem 項目
+サブサブアイテムを定義。
+
+makebox
+\makebox[WID][POS]{オブジェクト}	\makebox(X,Y)[POS]{オブジェクト}
+第1の書式では、オブジェクトをWIDで指定した幅として、\hbox 内の
+POSで指定した場所に配置する。POSにlを指定すると左寄せ、rを指定すると右寄せ、
+何も指定しないとセンタリングされる。
+第2の書式では、picuture環境で大きさ(X,Y)の(\unitlengthを基準とする)
+\hbox にオブジェクトを配置する。配置位置POSは第1の書式と同様。
+
+mbox
+\mbox{オブジェクト}
+\makebox{オブジェクト}と同じ。
+
+newsavebox
+\newsavebox{\CMD}
+新規のボックス保存用コマンドを定義する。\CMDは \savebox コマンドで
+ボックスを保存するために使う。\newsaveboxで宣言したコマンド名は
+常にグローバルとなる。
+
+savebox
+\savebox{\CMD}{テキスト}
+ボックスを組む内容である「テキスト」の結果を\CMDに保存する。
+「テキスト」は \makebox への引数と全く同じであるが、「テキスト」を
+処理した結果はその場に表示はしない。\usebox{\CMD}により処理したボックス
+が置かれる。
+
+sbox
+\sbox{\CMD}{テキスト}
+\saveboxと同じ。sboxはrobust, saveboxはfragile
+
+framebox
+\framebox{オブジェクト}
+「オブジェクト」に枠をつけて\makeboxと同様の処理をする。
+枠の線の太さは \framerule、オブジェクトとの間隔は \framesep で決まる。た
+だしpicture環境で \framebox(X,Y){オブジェクト}とした場合は、picture環境
+用の線の太さに従い、外枠とオブジェクトとの間隔は空けられない。
+
+fbox
+\fbox{オブジェクト}
+\framebox{オブジェクト}と同じ。
+\fboxはrobust, \frameboxはfragile
+
+parbox
+\parbox[POS]{WIDTH}{TEXT}
+TEXTをWIDThの幅で組んでボックスを作成する。ボックスの位置はPOSによって
+c : センタリング(デフォルト)
+b : ボックスの一番下の線が現テキストのラインに合う
+t : ボックスの一番上の線が現テキストのラインに合う
+のように決められる。\parboxではパラメータが以下のようにリセットされる。
+
+\parskip          = 0pt
+\linewidth        = \hsize
+\@totalleftmargin = 0pt
+\leftskip         = 0pt
+\rightskip        = 0pt
+\@rightskip       = 0pt
+\parfillskip      = 0pt plus 1fil
+\lineskip         = \normallineskip
+\baselineskip     = \normalbaselineskip
+
+minipage
+\begin{minipage}[pos]{WIDTH}  TEXT   \end{minipage}
+\parbox とほぼ同様WIDTHの幅のTEXTをボックスとして組む。ボックスの位置は
+POSによって
+c : センタリング(デフォルト)
+b : ボックスの一番下の線が現テキストのラインに合う
+t : ボックスの一番上の線が現テキストのラインに合う
+のように決められる。
+parboxと違い、TEXTは通常のパラグラフとして組まれる。
+
+rule
+\rule[RAISED]{WIDTH}{HEIGHT}
+幅 WIDTH x 高さ HEIGHT の罫線を作る。RAISEDが指定された場合、その分だけ
+上に上げられる。
+
+underline
+\underline{TEXT}
+TEXTに下線をつけて表示。
+
+raisebox
+\raisebox{DISTANCE}[HEIGHT][DEPTH]{BOX}
+BOXをDISTANCEだけ上げて組む。
+HEIGHT, DEPTH を指定すると、TeXから見たBOXの「高さ」と「深さ」
+(註:これらの用語についてはTeXBookなどを参照のこと)
+を HEIGHT, DEPTH に指定する。
+
+tabbing
+\begin{tabbing} \= text1.1 \= text1.2 \\ \> text2.1 \> text2.2 \end{tabbing}
+桁揃えを行う環境を作る(入れ子不可)。例えば、
+\begin{tabbing}
+ \= 項目1 \hspace*{2em} \= 項目2 \hspace*{3em}	\= 項目3 \\
+ \> いろは		\> にほへ		\> とちり \+ \\
+ 			\> ぬるを		\> わかよ \\
+			\> たれそ \- \\
+ \> つねな		\> らむう		\> ゐのお
+\end{tabbing}
+上のtabbing環境は以下のように3つのタブ位置で組まれる。
+  (1番目)   (2番目)     (3番目)
+   いろは    にほへ      とちり
+             ぬるを      をかよ
+             たれそ
+   つねな    らむう      ゐのお
+        \2em/      \3em/
+tabbing環境におけるタブ位置操作コマンドは以下の通り(nは1から):
+\=	n番目のタブ位置を現在位置に設定しタブカウンタ(n)を1進める
+\\	改行してタブカウンタをリセットする(n=1)
+\>	位置をn番目のタブ位置に設定し、カウンタを1進める
+\+	次の行のタブカウンタの初期値に1加える \+ \\ とすると次の行の最初
+	の \> は2番目のタブ位置を示す. \+ を複数書くとその数だけタブカウ
+	ンタの初期値が増える
+\-	\+とは逆に、次の行のタブカウンタの初期値から1引く
+\<	一つ前のタブカウンタに戻ってそのタブ位置をセット. 行頭のみ
+\'	\'以降を通常のタブ位置より \tabbingsep 分だけ右寄せして出力
+\`	\`以降のテキストをすべて右寄せして出力
+\pushtabs それまで用いていたタブストップ位置を全てpush
+\poptabs  それまで用いていたタブストップ位置を全てpop. \pushtabs と 
+	\poptabs は必ず対になっていなければならない. 入れ子可
+\aX	Xは = か ' か `   tabbing環境でない通常のアクセントは
+	\a= \a' \a` で表わす
+\kill	現在行のテキストは出力せずタブ設定だけ解釈する
+
+array
+\begin{array}{プリアンブル} C1 & C2 & .. & Cn \\ D1 ... \end{array}
+(数式などによる)配列を作成する。行列などは array 環境で作成する。
+詳しい説明は tabular 環境を参照。
+
+tabular
+\begin{tabular}[OPT]{プリアンブル} C1 & C2 & .. & Cn \\ D1 ... \end{tabular}
+表を作成する。
+【[OPT]】(省略可)
+[t]		表の上端を現在の行に合わせる
+[b]		表の下端を現在の行に合わせる
+【プリアンブル】
+c		カラムを一つ指定し、そのカラムをセンタリング
+l		カラムを一つ指定し、そのカラムを左寄せ
+r		カラムを一つ指定し、そのカラムを右寄せ
+@{表現}		「表現」をカラム毎に挿入する。これを指定すると
+		\arraycolsep や \tabcolsep のスペーシングは抑制される
+*{N}{PRE}	PREを N 回書いたのと同様の作用
+p{LEN}		そのカラムをLENの長さのparboxエントリとして作成する
+
+【array, tabular 環境で使えるコマンド】
+\multicolumn
+<refer multicolumn>
+\vline
+<refer vline>
+\hline
+<refer hline>
+\cline{i-j}
+<refer cline>
+\extracolsep{W}
+<refer extracolsep>
+
+
+以下の例を参照せよ。
+
+\LaTeX 表記					印刷形式
+\begin{array}{ccr}
+ x+y+z	& a_1	&  1 \\				x+y+z  a1    1
+ x+z	& a_2	&  21 \\			 x+z   a2   21
+ y	& a_3	&  321				  y    a3  321
+\end{array}
+
+\[ \left(
+ \begin{array}{cccc}
+  a_{11}  & a_{12}  & \dots & a_{1n} \\		/ a11 a12 ... a1n \
+  a_{21}  & a_{22}  & \dots & a_{2n} \\		| a21 a22 ... a2n |
+  \vdots  & \vdots  & \ddots& \vdots \\		|  :   :  \.   :  |
+  a_{n1}  & a_{n2}  & \dots & a_{nn}		\ an1 an2 ..: ann /
+ \end{array} 
+\right)\]
+
+array環境を \right( \left) で囲むと配列自体を大きな括弧で括る。同様に、
+\right\{ \left\} で配列を中括弧で、\right[ \left] で配列を大括弧で、
+\right| \left| で配列をノルム記号(絶対値記号)で括ることができる。
+\right の数と \left の数は必ず同じでなければならないが、\right( \left] 
+のように括弧の種類は違ってもよい。\right. のように . をつけると見えない
+括弧が出力される。
+
+\[ 答 \cdots \left\{					/
+	\begin{array}{ccc}				|  x = 5
+	 x & = & 5 \\				答 ... <
+   	 y & = & 3					|  y = 3
+	\end{array} \right. \]				\
+
+array環境を制御する変数には以下のものがある:
+\arraycolsep    : array環境の各カラム間の間隔の半分
+\tabcolsep      : tabular環境の各カラム間の間隔の半分
+\arrayrulewidth : 罫線の幅
+\doublerulesep  : array, tabular環境での隣接した罫線(二重罫線?)間の間隔
+\arraystretch   : \baselinestretch と同様行間スペースの比率を決める
+		  \renewcommandで再定義する
+
+tabular環境は、ページを跨ることができない。これを可能にするスタイルファ
+イルとして、supertab.styがある。
+
+tabular*
+\begin{tabular*}{幅}{プリアンブル} ... \end{tabular*}
+幅を指定してtabular環境を作成。
+この幅を充填するだけのスペースをプリアンブルの \extracolsep{} コマンドで
+確保する。
+\begin{tabular*}{10em}[b]{|c@{\extracolsep{\fill}}|c|c|}
+ \hline
+ a & b & c \\ \hline
+ 1 & 2 & 3
+\end{tabular*}
+tabular環境の説明を参照のこと。
+
+multicolumn
+\multicolumn{N}{FORMAT}{ITEM}
+	tabular環境で現在のカラムを含めNこのカラムをFORMATに従った
+	ITEMで埋める。FORMATはl,r,cのうち(最大)ひとつ
+
+vline
+\vline
+	tabular環境でそのカラムに縦線を引く. 縦線の位置はそのカラムに
+	指定されている l, r, c によって決まる
+
+hline
+\hline
+	tabular環境で、行間に水平線を引く. 環境の最初のエントリの直前、
+	もしくは \\ の直後に来なければならない. もし \hline を続けて
+	指定すると\doublerulesep 分の空白が空けられる(標準では罫線の
+	箱自体が分割されてしまう)
+
+cline
+\cline{i-j}
+	tabular環境中、i番目からj番目のカラムに横線を引く. \hlineと同様
+
+extracolsep
+\extracolsep{W}
+	tabular環境の@表現の中で用いると、幅Wのスペースをそれ以降の
+	全てのカラムの左側に加える
+
+picture
+\begin{picture}(WIDTH,HEIGHT)(X,Y) ..contents.. \end{picture}
+幅WIDTH, 高さHEIGHT の描画ボックスを作成。このボックスの左下の座標は
+(X,Y) となる(省略すると(0,0))。これらの引数の数値を含め、picuture環境の
+数値は \unitlength に対する相対値であらわされる。\unitlength の既定値は
+1pt.
+今時picture環境じゃないと思うので用法しか書かないよーん。
+
+【コマンド】
+\put(X座標,Y座標){描画オブジェクト}
+\multiput(X座標,Y座標)(Xの増分,Yの増分){繰り返し回数}{描画オブジェクト}
+【描画オブジェクト】
+\makebox(X座標,Y座標)[POS]{テキスト}		(箱)
+\framebox(X座標,Y座標)[POS]{テキスト}		(枠付きの箱)
+\dashbox(X座標,Y座標)[POS]{テキスト}		(破線枠付きの箱)
+(以上POS = l, r, b, t)
+\line(ΔX,ΔY){水平方向の長さ}			(直線)
+\vector(ΔX,ΔY){水平方向の長さ}		(矢印)
+(ΔX,ΔY = ±1, ±2, ..., ±6 で互素, それぞれ基準は始点)
+\shortstack[POS]{一行\\二行\\三行}
+\circle{直径}					(円)
+\circle*{直径}					(塗り潰した円)
+(それぞれ基準は円の中心, 最大直径は40pt, 15pt)
+\oval(直径X,直径Y)[POS]				(楕円風 POS = l, r, t, b)
+\frame{描画オブジェクト}
+\thinlines, \thicklines				(細,太線を選ぶ)
+\linethickness{太さ}
+
+newtheorem
+\newtheorem{NAME}{TEXT}[COUNTER]	\newtheorem{NAME}[OLDNAME]{TEXT} 
+定理型の新しい環境「NAME」を定義する。
+TEXT	定理番号のキャプションとして出される文字列
+COUNTER	NAMEのカウンタの親となるカウンタ名. 通常section.
+第2の形式では OLDNAME と同じカウンタ形式を使うことを指示する。
+NAME環境のカウンタ形式は \theNAME コマンドを再定義する。これのデフォルトは
+\theCOUNTER.\arabic{NAME}
+
+title
+\title{タイトル}
+\maketitleコマンドで出力するタイトル名を設定する。
+
+author
+\author{著者名}
+\maketitleコマンドで出力する著者を設定する。
+複数の著者を書くときは \and で区切って名前を書く。
+
+date
+\date{日付}
+\maketitleコマンドで出力する日付を設定する。
+\date を省略するとタイプセットした日の日付が出力される。
+
+thanks
+\thanks{脚注}
+タイトル中(\title, \author, \date)での脚注(謝辞や住所など)の出力を行う。
+
+maketitle
+\maketitle
+タイトルを出力する。document環境中で宣言されなければならない。
+タイトルを構成する項目は以下のコマンドで定義する。
+\title{タイトル}
+\author{著者名}
+\date{日付}		(省略するとタイプセットした日の日付)
+\thanks{脚注}		(謝辞や所属名などを脚注形式で出すために用いる)
+
+part
+\part{第?部のタイトル}
+<refer chapter>
+
+chapter
+\chapter{章のタイトル}
+文を区切るコマンド一覧:
+\part			第?部
+\chapter		?章	(articleにはない)
+\section		?節
+\subsection		?.?節
+\subsubsection		?.?.?節
+\paragraph		段落
+\subparagraph		副段落
+
+section
+\section{セクション名}
+第一引数のセクション名でセクションの区切りを設定。
+<refer chapter>
+
+subsection
+\subsection{サブセクション名}
+第一引数の名前でサブセクションの区切りを設定。
+<refer chapter>
+
+subsubsection
+\subsubsection{サブサブセクション名}
+第一引数の名前でサブサブセクションの区切りを設定。
+<refer chapter>
+
+paragraph
+\paragraph{パラグラフ名}
+第一引数の名前でパラグラフの区切りを設定。
+<refer chapter>
+
+subparagraph
+\subparagraph{サブパラグラフ名}
+第一引数の名前でサブパラグラフの区切りを設定。
+<refer chapter>
+
+appendix
+\appendix
+付録部に入る宣言。
+セクションコマンドの番号の方式を付録用に変える。
+
+contentsline
+\contentsline{TYPE}{ENTRY}{PAGE}
+\contentsline{subsection}{\makebox{30pt}[r]{1.4.3} Gnats and Gnus}{22}
+とすると .toc ファイルに ENTRY を吐き出す。
+TYPEはセクションコマンドのどれか。
+
+addcontentsline
+\addcontentsline{TABLE}{TYPE}{ENTRY}
+TABLEで指定したファイル(toc, lof, lot のどれか)にENTRYというエントリを出
+力する。TYPEはTABLEの値によって変わり、
+	toc:	セクションコマンドのどれか
+	lof:	figure
+	lot:	table
+である。
+
+addtocontents
+\addtocontents{TABLE}{TEXT}
+TEXTをTABLEで指定したテーブルファイル(toc, lof, lot のどれか)に出力する。
+
+index
+\index{INDEX}
+索引のエントリを定義する。
+
+--------------------------------------------------------------------
+<refer 索引の作り方>
+
+glossary
+\glossary{STRING}
+用語集のエントリを定義する。
+
+makeindex
+\makeindex
+\indexentryで登録されている項目を .idx ファイルに書き込む。
+プリアンブルで指定する。
+
+--------------------------------------------------------------------
+<refer 索引の作り方>
+
+makeglossary
+\makeglossary
+\glossaryentryで登録されている項目を .glo ファイルに書き込む。
+プリアンブルで指定する。
+
+索引の作り方
+
+(1)\documentstyleにmakeidxオプションを与え、プリアンブルに \makeindex
+   を書き、索引を生成する場所に \printindex を書く。
+(2)本文に \index{索引となる単語} を埋め込む。
+(3)一度(または二度)タイプセットする。
+(4).idxファイルができるのでそのファイルを makeindex にかける。
+(5).indファイルができるのでもう一度タイプセットして出来上がり。
+
+** \indexの記法 **
+日本語をそのまま \index{漢字} と入れたのではあいうえお順にソートされない。
+そこで、読みを@で区切って \index{かんじ@漢字} のように入れる。
+
+bibliography
+\bibliography{FILE1,FILE2, ... ,FILEn}
+BibTeXで読み込むファイルを指定する。
+
+bibliographystyle
+\bibliographystyle{スタイル}
+plain	通上
+unsrt	ソートしない
+alpha	"Foo94" のようなタグをつける
+abbrv	著者のファーストネーム、発行月、書籍名が省略される
+
+thebibliography
+\begin{thebibliography} \bibitem{アイテム}… \end{thebibliography}
+参考文献データの登録環境を開始する。
+データは \bibitem コマンドによって登録する。
+\bibitem コマンドの用法は以下の通り。
+<refer bibitem>
+
+bibitem
+\bibitem{NAME}			\bibitem[LABEL]{NAME}
+\bibitem{NAME}の書式では、NAMEで参照され、[1],[2] のような形で引用記号が
+出力される、\bibitem[LABEL]{NAME}の書式では、\cite{NAME}で参照され、
+[LABEL] のような引用記号が出力される。
+
+cite
+\cite{NAME}			\cite[LABEL]{NAME}
+\cite{NAME}の書式では、NAMEで参照され、[1],[2] のような形で引用記号が
+出力される、\cite[LABEL]{NAME}の書式では、[1,LABEL] のような引用記号
+が出力される。
+
+footnote
+\footnote{NOTE}
+NOTEという内容の脚注を生成する。
+\footnote[NUM]{NOTE} とすると、番号をNUMで指定できる。
+脚注がうまく出力されないような場所では \footnotemark と \footnotetext を
+組み合わせて出力する。
+fragile
+
+footnotemark
+\footnotemark[NUM]
+脚注番号のみ出力する時に使う。tabbing環境のように、脚注が出力されないと
+ころで、\footnotetext と組み合わせて使う。[NUM]は省略可。
+
+footnotetext
+\footnotetext[NUM]{TEXT}
+脚注番号を出力せず脚注のみ出力する。
+通常 \footnotemark と組み合わせて使う。
+
+footnotesize
+\footnotesize
+文字サイズを脚注用のサイズに変更する。
+
+footnotesep
+\footnotesep
+各脚注の最初に置かれる空白の高さ(数値)。
+
+
+footnoterule
+\footnoterule
+本文と脚注のあいだに引かれる罫線を出力。
+
+documentstyle
+\documentstyle[OPTION1,OPTION2, ... ,OPTIONn]{STYLE}
+文書スタイルを指定する。
+[OPTION...] を指定すると、STYLE.sty を読んだ後に、
+OPTIONn.sty が順次読み込まれる。
+
+verb
+\verb#内容#
+\verbの直後に来る文字と、次にあらわれる同じ文字とのあいだに挟まれたもの
+を verbatim で表示する。\verb|foo| と \verb,foo, は同じ結果が得られる。
+
+styleparameter
+まだ訳していないスタイルパラメータ。
+%   \topfigrule     : Command to place rule (or whatever) between floats
+%                     at top of page and text.  Executed in inner vertical
+%                     mode right before the \textfloatsep skip separating
+%                     the floats from the text.  Must occupy zero vertical
+%                     space.  (See \footnoterule.)
+botfigrule
+\setlength{\botfigrule}{長さ}
+Same as \topfigrule, but put after the \textfloatsep
+skip separating text from the floats at bottom of page.
+
+intextsep
+\setlength{\intextsep}{長さ}
+文書中フロートの上下に残された空白の長さ
+
+
+newpage
+\newpage
+改頁を行う。
+\clearpage 		未出力の図表があれば独立した図表用頁を出力してから
+			改頁を行う。
+\cleardoublepage 	clearpageと同じだが、 両画面スタイル(bookなど)の
+			場合は、奇数頁から始まるように改頁する。
+\newpage		二段組みの時は現在の段を終了する。
+
+clearpage
+\clearpage 
+<refer newpage>
+
+cleardoublepage
+\cleardoublepage 
+<refer newpage>
+
+長さ
+
+長さに使える単位には以下のものがある。
+cm		センチ
+em		大文字Mの幅
+ex		小文字xの高さ
+in		インチ(約2.54cm)
+mm		ミリメートル
+pc		パイカ(=12pt)
+pt		ポイント(72.27pt=1インチ)
+\fill		自然長は0だが、任意の長さに伸びることのできる伸縮長
+\stretch{X}	\fill のX倍
+
+stretch
+\stretch{X}
+<refer 長さ>
+
+twocolumn
+\twocolumn[STRING]
+改頁したあと二段組みでの組版を開始する。
+[STRING]を指定すると、STRINGを二段ぶち抜きのタイトルとして出力。
+→onecolumn
+
+onecolumn
+\onecolumn
+改頁したあとで一段組みでの組版を開始する。
+→twocolumn
+
+topnewpage
+\topnewpage{BOX}
+新しいページを開始し、\textwidthのBOXをparboxで作成する。
+二段組みページでぶち抜きタイトルを作成する時に用いるとよい。
+
+LaiTeX
+a Little Assistant Interface for TeX on Vz
+おそらくあなたが今 Vz 上で使っているこのモード。
+LaTeXを効率的に使うための多くの機能を盛り込んでいます。
+
+【発音について】
+laitex.defなどプログラムを指す時は「らいてっく」、システムを指す時は「ら
+いちょう」と読みます。
+
+【補足】
+「雷鳥」の旧仮名遣いは「らいてう」だそうです。
+
+【謝辞】
+以下の方々の御協力を頂きました。ここに感謝申し上げます。
+
+(順不同/代表項目のみ)
+横田一也さん(マツダ)
+	転載を行って頂きました。
+
+北岸隆史さん(豊橋技術科学大)
+小林克志さん(広島大)
+保甫恒喜さん(立命館大)
+小島昭二さん(静岡大)
+小林肇さん(金沢工業大)
+坂田一生さん(niftyserve)
+山際直之さん(niftyserve)
+並川仁さん(niftyserve)
+	バグの指摘や、要望、励ましのメールを頂きました。
+	(まとめてでごめんなさい -- 桂川)
+
+柴田みゆきさん(京都ソフトウェアリサーチ)
+	Software Design 誌で本ソフトをご紹介いただきました。
+
+バッキー"毒ラッコ"トミザワさん(筑波大)
+	雷鳥の為にノートパソコンを無償で貸与して下さいました。
+	彼のおかげで、雷鳥ははばたくことが出来ました。
+
+laitex
+a Little Assistant Interface for TeX on Vz
+<refer LaiTeX>
+
+YaTeX
+(setq auto-mode-alist (cons '("\\.tex$" . yatex-mode) auto-mode-alist))
+おそらくあなたが今 Emacs で使っているこのモード。
+LaTeXを効率的に使うための多くの機能を盛り込んでいます。
+
+【発音について】
+yatex.elなどプログラムを指す時は「やてっく」、システムを指す時は「やちょ
+う」と読みます。
+
+【謝辞】
+以下の方々の御協力を頂きました。ここに感謝申し上げます。
+
+(順不同/代表項目のみ)
+峯恒憲さん(九州大)
+	Bibtex起動、typeset process の kill、エラー箇所の正しい判定
+	の要望その他を頂きました。
+
+森中秀明さん(アンリツ)
+	タイプセットバッファでの実行継続、lpq, bibtex起動、領域指定タイ
+	プセット後のプレビュー対象ファイルのデフォルト値の変更、
+	describe-mode、\verb の補完の要望、verbatim環境や\verbの中にある
+	\begin{}, \end{} を数えないようにする要望、などを頂きました。
+
+石坂裕毅さん(富士通)
+	YaTeX-get-error-file のバグレポートなどを頂きました。
+
+Bayardさん(asciinet)
+	min-outとの連係の不具合の報告を頂きました。
+
+Kけんさん(asciinet)
+	ms-dos固有の設定に関するバグレポートを頂きました。
+
+sa2cさん(asciinet)
+	Mule用のパッチを頂きました。
+
+桂川直己さん(筑波大)
+	数え切れないバグレポートと要望を頂きました。またVzへの移植版であ
+	る laitex(雷鳥) を作成されました。また、「こんな機能はどうだろう?」
+	と相談すると、「いらん」と一蹴し、しばらく経ってから「やっぱり欲
+	しい」と言うなど、多くの混乱を招かせていただきました。
+
+るねきちさん(asciinet)
+	占い師だそうです。
+	http://www.comp.ae.keio.ac.jp/~yuuji/lune/astrology/
+
+柱川さん(prc)
+        各所で暴れています。
+	http://www.prc.tsukuba.ac.jp/~katsura/
+
+三平善郎さん(慶應大)
+	開き括弧の入力時の処理のモード分けのアイデアを頂きました。
+
+萩庭崇さん(慶應大)
+	begin型補完の内側に文字があった場合それらをインデントしてほしい
+	という要望を頂きました。
+
+田中健次郎さん(慶應大)
+	タイプセット時に未セーブ状態の関連ファイルをセーブして欲しいとい
+	う要望を頂きました。
+
+bauerさん(asciinet)
+	アクセント補完の要望とアクセント記号の規則の情報等を頂きました。
+
+佐々木たろうさん(asciinet)
+	数式環境の処理に関する多様なアイデア、ウィンドウ選択処理に関する
+	ユーザインタフェースの繊細な改善案などを頂きました。
+
+Deslarさん(asciinet)
+	byte-compile関係のバグ報告などを頂きました。
+
+tadfさん(asciinet)
+	Demacsでのプロセス起動時のインタフェースの不具合の報告などを頂き
+	ました。
+
+ほんまたけるさん(asciinet)
+	パラグラフ境界をLaTeX用に設定しなおす要望などを頂きました。
+
+TUSKさん(asciinet)
+	Texinfoドキュメント(初版)を作成して頂き、第二版に関するコメント
+	と添削をして頂きました。
+
+横田和也さん(asciinet)
+	dviout起動時の工夫の案、ミニバッファで読み込むもののヒストリを分
+	けるアイデアのきっかけを頂き、ヘルプファイルの項目の提供をして頂
+	きました。
+
+Nop.Mさん(asciinet)
+	異なる環境での設定の不具合等のレポートを数多く頂きました。
+
+jaybirdさん(asciinet)
+	英語版のヘルプファイルを作成して頂きました。
+
+内山滋さん(成蹊大学)
+	日本語入力モード判定関数のバグを直すパッチ、section-view のバグ
+	報告、* 付きセクションコマンド対応の要望、\right, \left のアドイ
+	ン関数作成に関する有用な情報などを頂きました。
+
+神貞介さん(niftyserve)
+	dviout起動オプションに関するコメント、ヘルプファイルのバグ報告等
+	を頂きました。
+
+藤枝和宏さん(JAIST)
+	野鳥/雷鳥の Mailing List を設立して頂きました。
+
+松本憲彦さん(東京学芸大)
+	マニュアルのバグを指摘して頂きました。
+
+小宮山康子さん(成蹊大)
+	\item[] などの補完後 [] の中にカーソルを置く要望を頂きました。
+
+竹中浩さん(東京大)
+	M-q (YaTeX-fill-paragraph) のバグを報告して頂きました。
+	YaTeX-insert-amper をcontributeして頂きました。
+	作者の数多くの凡ミスを丁寧に拾って下さいました。
+	YaTeX-shift-section-undo の実現方法を教えていただきました。
+
+佐藤圭さん(慶應大)
+	ネストした同種のitemize環境でのindentationの不具合を指摘して頂き
+	ました。
+
+石川洋介さん(富士通)
+	Mule2で斜体フォントを使用するための手順、auto-insertの存在を教え
+	て頂きました。
+
+井上浩一さん(九州大学)
+	MuleでフォーマットしたinfoファイルをNemacs用にコンバートする方法
+	を教えて頂きました。
+
+田口直文さん(慶應大)
+	font-lock の使い方を調査するといって、まだ何も教えてくれません。
+	早くしてください:-)。
+
+吉田尚志さん(慶應大)
+	label/ref補完で、labelやrefで始まる単語全てを候補にいれてしまう
+	バグを報告して頂きました。
+
+上田佳明さん(豊橋技科大)
+	Emacs 19.29 以降で生じるYaTeX-indent-new-comment-lineの不具合を
+	指摘して頂きました。
+
+成宮隆之さん(富山大学)
+	「初めて使うYaTeX」というCoolなWWWページを作成して下さいました。
+
+田中敏さん(富山大学)
+	AMS-LaTeX に対応するためのパッチを送って頂きました。
+
+西澤幸司さん(東北大学)
+田仲稔さん([株]ケイケンエンジニアリングシステム)
+	begin型補完でおまかせ改行関数があれば、補完時に初期エントリを挿
+	入するというアイデアを提供していただきました。
+
+葛西澄人さん(慶應大)
+	YaTeX-default-pop-window-height の原案を頂きました。
+	$ \% $ のような場合の数式モード終了判定のミスを指摘して頂きました。
+
+安藤利和(金沢工大)
+	野鳥を使うTipsをまとめた「あなたもわたしも野鳥の…」というWWWペー
+	ジを作成して下さいました。
+
+yatex
+(setq auto-mode-alist (cons '("\\.tex$" . yatex-mode) auto-mode-alist))
+<refer YaTeX>
+
--- a/yahtml.el	Thu Feb 01 18:55:47 1996 +0000
+++ b/yahtml.el	Wed May 01 15:35:40 1996 +0000
@@ -1,6 +1,6 @@
 ;;; -*- Emacs-Lisp -*-
 ;;; (c ) 1994 by HIROSE Yuuji [yuuji@ae.keio.ac.jp, pcs39334@asciinet.or.jp]
-;;; Last modified Fri Feb  2 02:37:23 1996 on supra
+;;; Last modified Tue Apr 23 23:13:12 1996 on inspire
 ;;; This package is no longer tentative.
 ;;; $Id$
 
@@ -28,6 +28,8 @@
 ;;;			normally requires closing tag `</H1>
 ;;;			<a href=foo> ... </a> is also classified into
 ;;;			this group
+;;;			When input `href=...', you can complete file
+;;;			name or label(href="#foo") by typing TAB.
 ;;;  * [prefix] s	Complete declarative notations such as
 ;;;			`<img src="foo.gif">'
 ;;;			`<input name="var" ...>'
@@ -35,20 +37,26 @@
 ;;;			`<i> ... </i>' or `<samp> ... </samp>'
 ;;;  * [prefix] m	Complete single commands such as
 ;;;			`<br>' or `<hr> or <li>...'
+;;;  * M-RET		Intelligent newline; if current TAG is one of
+;;;			ul, ol, or  dl. insert newline and <li> or
+;;;			<dt> or <dd> suitable for current condition.
 ;;;  * menu-bar yahtml	Complete all by selecting a menu item (Though I
 ;;;			hate menu, this is most useful)
 ;;;  * [prefix] g	Goto corresponding Tag or HREF such as
-;;; 			<dl> <-> </dl>  or href="xxx"
+;;; 			<dl> <-> </dl>  or href="xxx".
+;;;			Or invoke image viewer if point is on <img src=...>.
 ;;;  * [prefix] k	Kill html tags on the point.  If you provide
 ;;; 			universal-argument, kill surrounded contents too.
 ;;;  * [prefix] c	Change html tags on the point.
+;;;			When typeing [prefix] c on `href="xxx"', you can 
+;;;			change the reference link with completion.
 ;;;  * [prefix] t b	View current html with WWW browser
 ;;; 			(To activate this, never fail to set the lisp
 ;;; 			 variable yahtml-www-browser.  Recommended value
 ;;; 			 is "netscape")
+;;;  * [prefix] a	YaTeX's accent mark's equivalent of yahtml.
+;;;			This function can input $lt, $gt or so.
 ;;; 
-;;; NOTE!  This program is  truly  tentative.  If  you find some  bright
-;;; future with this, please send me a mail to drive me to maintain this :)
 
 
 (require 'yatex)
@@ -128,6 +136,7 @@
       (yahtml-define-begend-key "bh" "HTML" map)
       (yahtml-define-begend-key "bH" "HEAD" map)
       (yahtml-define-begend-key "bt" "TITLE" map)
+      (yahtml-define-begend-key "bT" "table" map)
       (yahtml-define-begend-key "bb" "BODY" map)
       (yahtml-define-begend-key "bd" "DL" map)
       (yahtml-define-begend-key "b1" "H1" map)
@@ -146,13 +155,18 @@
     (YaTeX-define-key "k" 'yahtml-kill-* map)
     (YaTeX-define-key "c" 'yahtml-change-* map)
     (YaTeX-define-key "t" 'yahtml-browse-menu map)
+    (YaTeX-define-key "a" 'yahtml-complete-mark map)
     ;;;;;(YaTeX-define-key "i" 'yahtml-fill-item map)
     )
 )
 
+(defvar yahtml-paragraph-start
+  (concat
+   "^$\\|<[bh]r>\\|<p>\\|^[ \t]*</?\\(h[1-6]\\|p\\|d[ldt]\\|t[rdh]\\|li\\|body\\|html\\|head\\|title\\|ul\\|ol\\|dl\\|pre\\)>")
+  "*Regexp of html paragraph separater")
 (defvar yahtml-paragraph-separate
   (concat
-   "^$\\|<[bh]r>\\|<p>\\|^[ \t]*</?\\(h[1-6]\\|p\\|dl\\|dd\\|dt\\|li\\|body\\|html\\|head\\|title\\|ul\\|ol\\|dl\\|pre\\)>")
+   "^$\\|<[bh]r>\\|<p>\\|^[ \t]*</?\\(h[1-6]\\|p\\|d[ldt]\\|li\\|body\\|html\\|head\\|title\\|ul\\|ol\\|dl\\|pre\\)>")
   "*Regexp of html paragraph separater")
 (defvar yahtml-syntax-table nil
   "*Syntax table for typesetting buffer")
@@ -162,6 +176,7 @@
 	(make-syntax-table (standard-syntax-table)))
   (modify-syntax-entry ?\< "(" yahtml-syntax-table)
   (modify-syntax-entry ?\> ")" yahtml-syntax-table)
+  (modify-syntax-entry ?\n " " yahtml-syntax-table)
 )
 (defvar yahtml-command-regexp "[A-Za-z0-9]+"
   "Regexp of constituent of html commands.")
@@ -174,9 +189,12 @@
 
 (defvar yahtml-env-table
   '(("html") ("head") ("title") ("body") ("dl") ("a") ("form") ("select")
+    ("textarea")
     ("OrderedList" . "ol")
     ("UnorderedList" . "ul")
     ("DefinitionList" . "dl")
+    ("Preformatted" . "pre")
+    ("table") ("tr") ("th") ("td")
     ("h1") ("h2") ("h3") ("h4") ("h5") ("h6") ("ul")))
 
 (defvar yahtml-itemizing-regexp
@@ -224,7 +242,7 @@
 		yahtml-typeface-table))))
 
 (defvar yahtml-struct-name-regexp
-  "\\<\\(h[1-6]\\|[uod]l\\|body\\|title\\|head\\|table\\|t[rhd]\\)")
+  "\\<\\(h[1-6]\\|[uod]l\\|body\\|title\\|head\\|table\\|t[rhd]\\|pre\\|a\\|form\\|select\\)\\b")
 
 
 (defun yahtml-mode ()
@@ -240,20 +258,23 @@
   (setq major-mode 'yahtml-mode
 	mode-name "yahtml")
   (make-local-variable 'YaTeX-ec) (setq YaTeX-ec "")
-  (make-local-variable 'YaTeX-struct-begin) (setq YaTeX-struct-begin "<%1%2>")
+  (make-local-variable 'YaTeX-struct-begin)
+  (setq YaTeX-struct-begin "<%1%2>")
   (make-local-variable 'YaTeX-struct-end) (setq YaTeX-struct-end "</%1>")
   (make-local-variable 'YaTeX-struct-name-regexp)
   (setq YaTeX-struct-name-regexp yahtml-struct-name-regexp)
   (make-local-variable 'YaTeX-prefix-map)
   (make-local-variable 'YaTeX-command-token-regexp)
   (setq YaTeX-command-token-regexp yahtml-command-regexp)
+  (make-local-variable 'YaTeX-comment-prefix)
+  (setq YaTeX-comment-prefix "<!--")
   ;;(make-local-variable 'YaTeX-environment-indent)
   ;;(setq YaTeX-environment-indent 0)
   (make-local-variable 'fill-prefix)
   (setq fill-prefix nil)
   (make-local-variable 'paragraph-separate)
-  (setq paragraph-separate yahtml-paragraph-separate
-	paragraph-start  yahtml-paragraph-separate)
+  (setq paragraph-start  yahtml-paragraph-start
+	paragraph-separate yahtml-paragraph-separate)
   (make-local-variable 'comment-start)
   (make-local-variable 'comment-end)
   (setq comment-start "<!-- " comment-end " -->")
@@ -452,6 +473,7 @@
 	 (save-excursion (insert (format "</%s>" form))))
      (if (search-backward "\"\"" p t) (forward-char 1))))
 
+;;; ---------- Add-in ----------
 (defun yahtml-addin (form)
   "Check add-in function's existence and call it if exists."
    (let ((addin (concat "yahtml:" (downcase form))) s)
@@ -461,6 +483,26 @@
 	 (concat " " s)
        "")))
 
+
+(defvar yahtml-completing-buffer nil)
+(defun yahtml-collect-labels (&optional file)
+  "Collect current buffers label (<a name=...>).
+If optional argument FILE is specified collect labels in FILE."
+  (let (list)
+    (save-excursion
+      (set-buffer yahtml-completing-buffer)
+      (if file (set-buffer (find-file-noselect file)))
+      (save-excursion
+	(goto-char (point-min))
+	(while (re-search-forward "<a\\b" nil t)
+	  (skip-chars-forward " \t\n")
+	  (if (looking-at "name\\s *=\\s *\"?#?\\([^\">]+\\)\"?>")
+	      (setq list (cons
+			  (list (concat "#" (YaTeX-match-string 1)))
+			  list))))
+	list)))
+  )
+
 (defvar yahtml-url-completion-map nil "Key map used in URL completion buffer")
 (if yahtml-url-completion-map nil
   (setq yahtml-url-completion-map
@@ -472,7 +514,7 @@
 (defun yahtml-complete-url ()
   "Complete external URL from history or local file name."
   (interactive)
-  (let (initial cmpl path dir file listfunc beg (p (point)))
+  (let (initial i2 cmpl path dir file listfunc beg labels (p (point)))
     (setq initial (buffer-string))
     (cond
      ((string-match "^http:" initial)
@@ -480,6 +522,19 @@
 	    listfunc (list 'lambda nil
 			   (list 'all-completions initial 'yahtml-urls))
 	    beg (point-min)))
+     ((setq beg (string-match "#" initial))
+      (or (equal beg 0)			;begin with #
+	  (progn
+	    (setq path (substring initial 0 beg))
+	    (if (string-match "^/" path)
+		(setq path (yahtml-url-to-path path)))))
+      (setq initial (substring initial beg))
+      (setq labels (yahtml-collect-labels path)
+	    cmpl (try-completion initial labels)
+	    listfunc (list 'lambda ()
+			   (list 'all-completions
+				 initial (list 'quote labels)))
+	    beg (+ (point-min) beg)))
      (t
       (setq path (if (string-match "^/" initial)
 		     (yahtml-url-to-path initial)
@@ -514,24 +569,28 @@
 (defun yahtml:a ()
   "Add-in function for <a>"
   (or yahtml-urls (yahtml-collect-url-history))
+  (setq yahtml-completing-buffer (current-buffer))
 ;  (concat "href=\""
 ;	  (completing-read "href: " yahtml-urls)
 ;	  "\"")
   (message "(H)ref  (N)ame?")
   (cond
-   ((string-match "[hH]" (char-to-string (read-char)))
+   ((string-match "[nN]" (char-to-string (read-char)))
+    (concat "name=\"" (read-string "name: ") "\""))
+   (t
     (concat "href=\""
 	    (read-from-minibuffer "href: " "" yahtml-url-completion-map)
-	    "\""))
-   (t (concat "name=\"" (read-string "name: ") "\""))))
+	    "\""))))
 
 (defun yahtml:img ()
   "Add-in function for <img>"
   (or yahtml-urls (yahtml-collect-url-history))
   (let ((src (read-file-name "src: " "" nil nil ""))
-	(alg (completing-read "align: " '(("top") ("middle") ("bottom")))))
+	(alg (completing-read "align: " '(("top") ("middle") ("bottom"))))
+	(alt (read-string "alt: ")))
     (concat "src=\"" src "\""
-	    (if (string< "" alg) (concat " align=\"" alg "\"")))))
+	    (if (string< "" alg) (concat " align=\"" alg "\""))
+	    (if (string< "" alt) (concat " alt=\"" alt "\"")))))
 
 (defun yahtml:form ()
   "Add-in function `form' input format"
@@ -576,7 +635,24 @@
      (if (string< "" size) (concat " size=\"" size "\""))
      (if (string< "" maxlength) (concat " maxlength=\"" maxlength "\""))
     )))
-	
+
+(defun yahtml:textarea ()
+  "Add-in function for `textarea'"
+  (interactive)
+  (let (name rows cols)
+    (setq name (read-string "Name: ")
+	  cols (read-string "Columns: "
+	  rows (read-string "Rows: ")))
+    (concat
+     (concat (if yahtml-prefer-upcases "NAME=" "name=")
+	     "\"" name "\"")
+     (if (string< "" cols)
+	 (concat " " (if yahtml-prefer-upcases "COLS" "cols") "=" cols))
+     (if (string< "" rows)
+	 (concat " " (if yahtml-prefer-upcases "ROWS" "rows") "=" rows)))))
+
+
+;;; ---------- Simple tag ----------
 (defun yahtml-insert-tag (region-mode &optional tag)
   "Insert <TAG> </TAG> and put cursor inside of them."
   (interactive "P")
@@ -769,7 +845,7 @@
 	     (string-match "img" tag)
 	     (save-excursion
 	       (re-search-backward "<\\s *img" nil t)
-	       (re-search-forward "src=\"?\\([^\"> ]+\\)\"?>")
+	       (re-search-forward "src=\"?\\([^\"> ]+\\)\"?")
 	       (match-beginning 1)
 	       (setq image
 		     (buffer-substring (match-beginning 1) (match-end 1)))))
@@ -833,8 +909,28 @@
 	(default (append yahtml-env-table yahtml-typeface-table))
 	(user (append yahtml-user-env-table yahtml-user-typeface-table))
 	(tmp (append yahtml-tmp-env-table yahtml-tmp-typeface-table))
-	)
-    (if tag
+	href b1 e1)
+    (cond
+     (tag
+      (cond
+       ((and (equal tag "a")
+	     (save-excursion
+	       (and
+		(re-search-backward "<a" nil t)
+		(goto-char (match-end 0))
+		(skip-chars-forward " \t\n")
+		(>= p (point))
+		(looking-at "href\\s *=\\s *\"?\\([^\"> \t\n]+\\)\"?")
+		(< p (match-end 0)))))
+	(setq b1 (match-beginning 1) e1 (match-end 1)
+	      href (read-from-minibuffer
+		    "Change href to: " "" yahtml-url-completion-map))
+	(if (string< "" href)
+	    (progn
+	      (delete-region b1 e1)
+	      (goto-char b1)
+	      (insert href))))
+       (t
 	(save-excursion
 	  (if (= (aref tag 0) ?/) (setq tag (substring tag 1)))
 	  (or (= (char-after (point)) ?<) (skip-chars-backward "^<"))
@@ -861,7 +957,7 @@
 	  (insert (format "%s%s" tag (yahtml-addin tag)))
 	  (goto-char q)
 	  (delete-region (point) (progn (skip-chars-forward "^>") (point)))
-	  (insert tag)))))
+	  (insert tag))))))))
 
 (defun yahtml-change-* ()
   "Change current position's HTML tag (set)."
@@ -903,8 +999,8 @@
 (defvar yahtml-hate-too-deep-indentation nil)
 (defun yahtml-indent-line ()
   (interactive)
-  (let ((envs "[uod]l\\|table\\|t[rhd]")
-	(itms "<\\(dt\\|dd\\|li\\|t[rdh]\\)>")
+  (let ((envs "[uod]l\\|table\\|t[rhd]\\|select\\|a\\b")
+	(itms "<\\(dt\\|dd\\|li\\|t[rdh]\\|option\\)>")
 	inenv p col peol (case-fold-search t))
     (save-excursion
       (beginning-of-line)
@@ -1018,17 +1114,20 @@
     (cond
      ((string-match "^/" file)
       (while list
-	(if (string-match (concat "^" (regexp-quote (car (car list)))) basedir)
+	(if (file-directory-p (car (car list)))
 	    (progn
 	      (setq url (cdr (car list)))
 	      (if (string-match "\\(http://[^/]*\\)/" url)
 		  (setq docroot (substring url (match-end 1)))
 		(setq docroot url))
-	      (if (string-match (regexp-quote docroot) file)
+	      (if (string-match (concat "^" (regexp-quote docroot)) file)
 		  (setq realpath
 			(expand-file-name
 			 (substring
-			  file (min (1+ (match-end 0)) (length file)))
+			  file
+			  (if (= (aref file (1- (match-end 0))) ?/)
+			      (match-end 0) ; "/foo"
+			    (min (1+ (match-end 0)) (length file)))) ; "/~foo"
 			 (car (car list)))))
 	      (if realpath
 		  (progn (setq list nil)
@@ -1099,6 +1198,11 @@
       (insert (if yahtml-prefer-upcases "<DT> " "<dt> ")))
     (yahtml-indent-line)))
 
+(defun yahtml-intelligent-newline-select ()
+  (interactive)
+  (insert "<" (if yahtml-prefer-upcases "OPTION" "option") "> ")
+  (yahtml-indent-line))
+
 ;;; ---------- Marking ----------
 (defun yahtml-mark-begend ()
   "Mark current tag"
@@ -1113,7 +1217,20 @@
   (forward-list 1)
   (if (eolp) (forward-char 1)))
 
-;;; ---------- ----------
+;;; ---------- complete marks ----------
+(defun yahtml-complete-mark ()
+  "Complete &gt, &lt, &asterisk, and &quote."
+  (interactive)
+  (message "1:< 2:> 3:& 4:\"")
+  (let ((c (read-char)))
+    (setq c (if (or (< c ?0) (> c ?5))
+		(string-match (regexp-quote (char-to-string c)) "<>&\"")
+	      (- c ?1)))
+    (if (or (< c 0) (> c 4))
+	nil
+      (insert (format "&%s;" (nth c '("lt" "gt" "amp" "quot")))))))
+
+
 ;;; ---------- ----------
 ;;; ---------- ----------
 
--- a/yatex.el	Thu Feb 01 18:55:47 1996 +0000
+++ b/yatex.el	Wed May 01 15:35:40 1996 +0000
@@ -1,8 +1,8 @@
 ;;; -*- Emacs-Lisp -*-
 ;;; Yet Another tex-mode for emacs.
-;;; yatex.el rev. 1.61
+;;; yatex.el rev. 1.62
 ;;; (c )1991-1995 by HIROSE Yuuji.[yuuji@ae.keio.ac.jp]
-;;; Last modified Fri Feb  2 03:47:10 1996 on supra
+;;; Last modified Thu May  2 00:13:21 1996 on supra
 ;;; $Id$
 
 ;; This program is free software; you can redistribute it and/or modify
@@ -20,7 +20,7 @@
 ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
 (require 'comment)
-(defconst YaTeX-revision-number "1.61"
+(defconst YaTeX-revision-number "1.62"
   "Revision number of running yatex.el"
 )
 
@@ -33,7 +33,7 @@
 ;; ** for your site, if needed.           **
 ;;;
 (defvar YaTeX-prefix "\C-c"
-  "*Prefix key to trigger YaTeX functions.
+  "*Prefix key to call YaTeX functions.
 You can select favorite prefix key by setq in your ~/.emacs."
 )
 (defvar YaTeX-environment-indent 1
@@ -152,9 +152,10 @@
   "*LaTeX sectioning commands regexp."
 )
 (defvar YaTeX-paragraph-start
-  (concat "^[ \t]*%\\|^[ \t]*$\\|^\C-l\\|\\\\\\\\$\\|^[ \t]*\\\\\\("
+  (concat "^[ \t]*%\\|^[ \t]*$\\|\\'\\|^\C-l\\|\\\\\\\\$\\|^[ \t]*\\\\\\("
 	  YaTeX-sectioning-regexp		;sectioning commands
 	  "\\|[A-z]*item\\|begin{\\|end{"	;special declaration
+	  "\\|newpage\\b\\|vspace\\b"
 	  "\\)")
   "*Paragraph starting regexp of common LaTeX source.  Use this value
 for YaTeX-uncomment-paragraph."
@@ -163,6 +164,7 @@
   (concat "^[ \t]*%\\|^[ \t]*$\\|^\C-l\\|\\\\\\\\$\\|^[ \t]*\\\\\\("
 	  YaTeX-sectioning-regexp		;sectioning commands
 	  "\\|begin{\\|end{"			;special declaration
+	  "\\|newpage\\b\\|vspace\\b"
 	  "\\)")
   "*Paragraph delimiter regexp of common LaTeX source.  Use this value
 for YaTeX-uncomment-paragraph."
@@ -298,7 +300,7 @@
      ;;("rightarrow") ("Rightarrow") ("leftarrow") ("Leftarrow")
      ("pagebreak") ("newpage") ("clearpage") ("cleardoublepage")
      ("footnotemark") ("verb") ("verb*")
-     ("linebreak") ("pagebreak")
+     ("linebreak") ("pagebreak") ("noindent") ("indent")
      ("left") ("right")
      )
    (if YaTeX-greek-by-maketitle-completion
@@ -691,6 +693,7 @@
   "Visit main other window." t)
 (autoload 'YaTeX-main-file-p "yatexprc" "Check if the file is main." t)
 (autoload 'YaTeX-get-builtin "yatexprc" "Get %# built-in." t)
+(autoload 'YaTeX-system "yatexprc" "Call system command" t)
 
 ;;autoload from yatexmth.el
 (autoload 'YaTeX-math-insert-sequence "yatexmth" "Image input." t)
@@ -808,7 +811,9 @@
   (let*((nest 0)
 	(beg (YaTeX-replace-format-args
 	      (regexp-quote YaTeX-struct-begin)
-	      YaTeX-struct-name-regexp "" ""))
+	      YaTeX-struct-name-regexp
+	      (if (eq major-mode 'yahtml-mode) "\\s *.*" "")
+	      ""))
 	(end (YaTeX-replace-format-args
 	      (regexp-quote YaTeX-struct-end)
 	      YaTeX-struct-name-regexp "" ""))
@@ -817,7 +822,7 @@
 	(open
 	 (concat "^" (or (cdr (assq major-mode '((yahtml-mode . "<")))) "{")))
 	(close
-	 (concat "^" (or (cdr (assq major-mode '((yahtml-mode . ">")))) "}"))))
+	 (concat "^" (or (cdr(assq major-mode '((yahtml-mode . " >")))) "}"))))
     (save-excursion
       (if quick
 	  (setq bound
@@ -1184,7 +1189,8 @@
      ((YaTeX-jmode) (YaTeX-self-insert arg))
      ((not (YaTeX-closable-p)) (YaTeX-self-insert arg))
      ((save-excursion
-	(and (> (- (point) (point-min)) 6) (forward-char -6))
+	(and (> (- (point) (point-min)) 6)
+	     (condition-case () (forward-char -6) (error nil)))
 	(looking-at "\\\\left\\\\"))
       (insert "{\\right\\}")
       (forward-char -8))
@@ -1212,6 +1218,16 @@
       (and (boundp 'egg:*mode-on*) egg:*mode-on* egg:*input-mode*))
 )
 
+(defun YaTeX-jmode-off ()
+  (cond
+   ((and (boundp 'canna:*japanese-mode*) canna:*japanese-mode*)
+    (canna-toggle-japanese-mode))
+   ((and (boundp 'egg:*mode-on*) egg:*mode-on* egg:*input-mode*)
+    (egg:toggle-egg-mode-on-off))
+   ((and (fboundp 'skk-mode)) (skk-mode -1))
+   ((and (fboundp 'fep-force-off) (fep-force-off))))
+)
+
 (defun YaTeX-self-insert (arg)
   (call-interactively (global-key-binding (char-to-string last-command-char))))
 
@@ -1285,6 +1301,7 @@
       (insert "$")
     (insert "$$")
     (forward-char -1)
+    (YaTeX-jmode-off)
     (or YaTeX-auto-math-mode YaTeX-math-mode (YaTeX-toggle-math-mode 1)))
 )
 
@@ -1319,7 +1336,7 @@
   (interactive "P")
   (message
    (concat "J)latex R)egion B)ibtex mk(I)ndex "
-	   (or YaTeX-dos "K)ill-latex ")
+	   (if (not YaTeX-dos) "K)ill-latex ")
 	   "P)review "
 	   (and (boundp 'window-system) window-system "S)earch ")
 	   "V)iewerr L)pr"))
@@ -1539,28 +1556,28 @@
 	      nil)))))
 )
 
-(defun YaTeX-goto-corresponding-file (&optional other)
-  "Visit or switch buffer of corresponding file,
-looking at \\input or \\include or \includeonly on current line."
-  (if (not (YaTeX-on-includes-p)) nil
-    (let ((parent buffer-file-name) input-file)
-      (save-excursion
-	(if (search-forward "{" (point-end-of-line) t)
-	    nil
-	  (skip-chars-backward "^,{"))
-	(setq input-file
-	      (buffer-substring
-	       (point) (progn (skip-chars-forward "^ ,}") (point))))
-	(if (not (string-match "\\.\\(tex\\|sty\\)$" input-file))
-	    (setq input-file (concat input-file ".tex"))))
-      (cond
-       (other (YaTeX-switch-to-buffer-other-window input-file))
-       ((get-file-buffer input-file) (goto-buffer-window input-file))
-       (t (YaTeX-switch-to-buffer input-file)))
-      (or (YaTeX-get-builtin "!")
-	  YaTeX-parent-file
-	  (setq YaTeX-parent-file parent))))
-)
+;(defun YaTeX-goto-corresponding-file (&optional other)
+;  "Visit or switch buffer of corresponding file,
+;looking at \\input or \\include or \includeonly on current line."
+;  (if (not (YaTeX-on-includes-p)) nil
+;    (let ((parent buffer-file-name) input-file)
+;      (save-excursion
+;	(if (search-forward "{" (point-end-of-line) t)
+;	    nil
+;	  (skip-chars-backward "^,{"))
+;	(setq input-file
+;	      (buffer-substring
+;	       (point) (progn (skip-chars-forward "^ ,}") (point))))
+;	(if (not (string-match "\\.\\(tex\\|sty\\)$" input-file))
+;	    (setq input-file (concat input-file ".tex"))))
+;      (cond
+;       (other (YaTeX-switch-to-buffer-other-window input-file))
+;       ((get-file-buffer input-file) (goto-buffer-window input-file))
+;       (t (YaTeX-switch-to-buffer input-file)))
+;      (or (YaTeX-get-builtin "!")
+;	  YaTeX-parent-file
+;	  (setq YaTeX-parent-file parent))))
+;)
 
 (defun YaTeX-goto-corresponding-BEGIN-END ()
   (if (not (YaTeX-on-BEGIN-END-p)) nil
@@ -1574,6 +1591,121 @@
     t)
 )
 
+(defvar YaTeX-processed-file-regexp-alist nil
+  "Alist of regexp of processed file regexp vs. its file name part;
+For example, if you include image file with `\\epsfile{file=FILE}' where
+`FILE' is processed file.  You might want to view FILE with other previewer
+such as ghostview, or want to preview its source which was drawn with
+other drawing tool, tgif for example.  Then you should set entire regexp
+of including expression and enclose its file name part with \\\\( and \\\\).
+
+ Ex. (\"\\\\\\\\epsfile{[^}]*file=\\\\([^,} ]+\\\\)\\\\(\\\\.e?ps\\\\)?[^}]*}\" 1)
+
+Where the first group surrounded by \\\\( and \\\\) is the file name part
+of expression.  So you should set 1 to second element.  And the first
+matching group is sent to (image) processor defined by the variable
+YaTeX-file-processor-alist. See also the documentation of
+YaTeX-file-processor-alist.
+
+↑じゃ良くわかんないすね。例えば tgif hoge.obj して hoge.eps を
+\\epsfile{file=hoge.eps} でインクルードしているとしよう。その行で
+\[prefix\] g を押した時に tgif を起動して欲しかったら、まず上のような
+正規表現を設定する。\\\\(と\\\\)で囲んだところがファイル名になるように
+注意する。でファイル名部分が何番目の\\\\(\\\\)になるかをリストの2番目に書く。
+すると、その部分が変数 YaTeX-file-processor-alist で定義された
+処理プログラムに渡される。というわけ。
+ん〜やっぱりむずかしいね。分からない時は隣の Lisper に聞くか、
+fj野鳥の会で聞こう!
+")
+
+(defvar YaTeX-processed-file-regexp-alist-default
+  '(("\\\\epsfile{[^},]*file=\\([^,}. ]+\\)\\(\\.e?ps\\)?[^}]*}" 1)
+    ("\\\\epsfig{[^},]*fi\\(le\\|gure\\)=\\([^,}. ]+\\)\\(\\.e?ps\\)?[^}]*}" 2)
+    ("\\\\postscriptbox{[^}]*}{[^}]*}{\\([^} ]+\\)\\(\\.e?ps\\)?}" 1)
+    ("\\\\\\(epsfbox\\|includegraphics\\){\\([^} ]+\\)\\(\\.e?ps\\)?}" 2)
+    ("\\\\\\(include\\|input\\){\\([^},.]+\\)\\(\\.\\(tex\\|sty\\)\\)?}" 2 t)
+    )
+  "See the documentation of YaTeX-processed-file-regexp-alist."
+)
+
+(defvar YaTeX-file-processor-alist nil
+  "*Alist of files' processor vs. its extension;
+See also the documentation of YaTeX-processed-file-regexp-alist."
+)  
+(defvar YaTeX-file-processor-alist-default
+  '(("tgif" . ".obj")
+    ("ghostview" . ".ps")
+    ("ghostview" . ".eps")
+    (t . ".tex")
+    (t . ".sty")
+    (t . ""))
+  "See the documentation of YaTeX-file-processor-alist."
+)
+
+(defun YaTeX-goto-corresponding-file-processor (&optional other)
+  "Execute corresponding file processor."
+  (save-excursion
+    (or (looking-at YaTeX-ec-regexp)
+	(skip-chars-backward (concat "^" YaTeX-ec) (point-beginning-of-line)))
+    (let ((list (append YaTeX-processed-file-regexp-alist
+			YaTeX-processed-file-regexp-alist-default))
+	  (p (point)) flist file
+	  (peol (point-end-of-line)))
+      (setq flist (catch 'found
+		   (while list
+		     (goto-char p)
+		     (if (re-search-forward (car (car list)) peol t)
+			 (progn
+			   (setq file (YaTeX-match-string
+				       (car (cdr (car list)))))
+			   (throw 'found (cdr (car list)))))
+		     (setq list (cdr list)))))
+      (if flist				;if pattern and file name found
+	  (let*((plist (append YaTeX-file-processor-alist
+			       YaTeX-file-processor-alist-default))
+		(plist0 plist)
+		ext cmd src buf (alt (car (cdr flist))))
+	    (if (and (re-search-forward
+		      (concat YaTeX-comment-prefix "\\s *\\(.*\\)$") peol t)
+		     (assoc (setq cmd (YaTeX-match-string 1))
+			    YaTeX-file-processor-alist))
+		(setq src		;if processor is specified
+		      (concat file
+			      (cdr (assoc cmd YaTeX-file-processor-alist))))
+	      (while plist		;if processor is not specified
+		(setq ext (cdr (car plist)))
+		(if (file-exists-p (concat file ext))
+		      (setq cmd (car (car plist))
+			    src (concat file ext) plist nil))
+		(setq plist (cdr plist)))
+	      (if (and (null src) alt YaTeX-create-file-prefix-g)
+		  (setq cmd alt
+			src (concat file (cdr (assoc alt plist0))))))
+	    (if src		;if processor and src file found
+		(cond
+		 ((stringp cmd)
+		  (let ((buf (concat "* " cmd " " src " *")))
+		    (YaTeX-system (concat cmd " " src) buf)
+		    t))
+		 ((eq t cmd)
+		  (let ((parent buffer-file-name))
+		    (funcall
+		     (cond
+		      (other 'YaTeX-switch-to-buffer-other-window)
+		      ((get-file-buffer src) 'goto-buffer-window)
+		      (t 'YaTeX-switch-to-buffer))
+		     src)
+		    (or (YaTeX-get-builtin "!")
+			YaTeX-parent-file
+			(setq YaTeX-parent-file parent))
+		    t))
+		 ((symbolp cmd)
+		  (cond
+		   ((symbol-function cmd)
+		    (funcall cmd src)))
+		  t)))))))
+)
+
 (defun YaTeX-on-section-command-p (command)
   "Check if point is on the LaTeX command: COMMAND(regexp).
 Return nil if point is not on it.  Otherwise return the
@@ -1681,7 +1813,8 @@
   (cond
    ((YaTeX-goto-corresponding-label arg))
    ((YaTeX-goto-corresponding-environment))
-   ((YaTeX-goto-corresponding-file))
+   ((YaTeX-goto-corresponding-file-processor arg))
+   ;;((YaTeX-goto-corresponding-file))
    ((YaTeX-goto-corresponding-BEGIN-END))
    ((and (string-match
 	  YaTeX-equation-env-regexp	;to delay loading
@@ -2172,7 +2305,8 @@
     (save-excursion
       (and point (goto-char point))
       (or (YaTeX-in-verb-p (point))
-	  (YaTeX-quick-in-environment-p YaTeX-verbatim-environments)))))
+	  (and (not (looking-at "\\\\end{verb"))
+	       (YaTeX-quick-in-environment-p YaTeX-verbatim-environments))))))
 )
 
 (defun YaTeX-in-environment-p (env)
@@ -2375,6 +2509,11 @@
 	  (goto-char (point-min))
 	  (forward-word 1)
 	  (beginning-of-line)
+	  (while (re-search-forward "\\\\\\(\\(page\\)?ref\\|cite\\){" nil t)
+	    (if (< (point-end-of-line)
+		   (save-excursion (forward-char -1) (forward-list 1) (point)))
+		(progn (end-of-line) (insert YaTeX-comment-prefix))))
+	  (goto-char (point-min))
 	  (if (and NTT-jTeX (looking-at "[ \t]"))
 	      (progn
 		(goto-char (point-min))
@@ -2384,7 +2523,7 @@
 		      (save-excursion
 			(backward-word 1)
 			(looking-at "\\sw+")) ;is not japanese string
-		      (progn (setq p (point)) (insert ?%)))
+		      (progn (setq p (point)) (insert YaTeX-comment-prefix)))
 		  (forward-line 1))
 		(goto-char p)
 		(delete-char 1)		;remove last inserted `%'
@@ -2560,8 +2699,21 @@
 	  (setq depth (current-column))
 	  (YaTeX-goto-corresponding-environment)
 	  (YaTeX-reindent depth)))
-    (if (and NTT-jTeX
-	     (save-excursion (beginning-of-line) (looking-at "[ \t]")))
+    (if (or
+	 (and NTT-jTeX
+	      (save-excursion (beginning-of-line) (looking-at "[ \t]")))
+	 (save-excursion
+	   (beginning-of-line)
+	   (backward-char 1)
+	   (and
+	    (re-search-backward
+	     "\\\\\\(\\(page\\)?ref\\|cite\\){" (point-beginning-of-line) t)
+	    (goto-char (1- (match-end 0)))
+	    (> (save-excursion
+		 (condition-case ()
+		     (progn (forward-list 1) (point))
+		   (error (point-max))))
+	       (point-end-of-line)))))
 	(save-excursion
 	  (end-of-line)
 	  (let ((p (point)))
--- a/yatex.new	Thu Feb 01 18:55:47 1996 +0000
+++ b/yatex.new	Wed May 01 15:35:40 1996 +0000
@@ -1,5 +1,14 @@
 	What's new in YaTeX
-	野鳥 - 各バージョンの変更点について
+	野鳥/yahtml - 各バージョンの変更点について
+
+1.62	\ref の引数が二行に渡る時行末に%を付けるようにした
+	yahtmlでおまかせ改行が不必要に起動するのを修正
+	href の補完文字列に # が含まれる時は name を補完
+	\epsfile{file=foo.eps} などで [prefix] g した場合、foo.epsの元絵
+	を編集しているお絵書きソフトを起動するようにした
+	yahtmlで [prefix] a で &lt などが入るようにした
+	verbatim環境の [prefix] g がうまく飛ばなかったのを修正
+	sectionのオプション引数をつけた時の色づけが無効だったのを修正
 
 1.61	AMS-LaTeX 対応
 	xdvi -remote によるサーチに対応 [prefix] t s
--- a/yatex19.el	Thu Feb 01 18:55:47 1996 +0000
+++ b/yatex19.el	Wed May 01 15:35:40 1996 +0000
@@ -1,7 +1,7 @@
 ;;; -*- Emacs-Lisp -*-
 ;;; YaTeX facilities for Emacs 19
 ;;; (c )1994-1995 by HIROSE Yuuji.[yuuji@ae.keio.ac.jp]
-;;; Last modified Wed Dec 20 22:32:21 1995 on supra
+;;; Last modified Thu Mar 14 10:51:00 1996 on supra
 ;;; $Id$
 
 ;;; とりあえず hilit19 を使っている時に色が付くようにして
@@ -281,7 +281,7 @@
     (YaTeX-19-region-section-type
      "\\\\\\(title\\|author\\|date\\|thanks\\){" define)
 
-    ("\\\\documentstyle\\(\\[.*\\]\\)?{" "}" decl)
+    ("\\\\document\\(style\\|class\\)\\(\\[.*\\]\\)?{" "}" decl)
     ("\\\\\\(begin\\|end\\|nofiles\\|includeonly\\){" "}" decl)
     ("\\\\\\(raggedright\\|makeindex\\|makeglossary\\|maketitle\\)\\b" 0 decl)
     ("\\\\\\(pagestyle\\|thispagestyle\\|pagenumbering\\){" "}" decl)
@@ -368,7 +368,8 @@
 		lm YaTeX-sectioning-max-level
 		list YaTeX-sectioning-level)
 	  (while list
-	    (setq pat (concat YaTeX-ec-regexp (car (car list)) "\\*?{")
+	    (setq pat (concat YaTeX-ec-regexp (car (car list))
+			      "\\*?\\(\\[[^]]*\\]\\)?{")
 		  level (cdr (car list))
 		  fg (format "hex-%02x%02x%02x"
 			     (- fR (/ (* level fR fmin) lm 100))
--- a/yatexadd.el	Thu Feb 01 18:55:47 1996 +0000
+++ b/yatexadd.el	Wed May 01 15:35:40 1996 +0000
@@ -2,7 +2,7 @@
 ;;; YaTeX add-in functions.
 ;;; yatexadd.el rev.13
 ;;; (c )1991-1995 by HIROSE Yuuji.[yuuji@ae.keio.ac.jp]
-;;; Last modified Thu Dec 21 21:47:34 1995 on supra
+;;; Last modified Sat Apr 27 21:38:36 1996 on NSR
 ;;; $Id$
 
 ;;;
@@ -119,11 +119,16 @@
 )
 
 (defun YaTeX:equation ()
+  (YaTeX-jmode-off)
   (if (fboundp 'YaTeX-toggle-math-mode)
       (YaTeX-toggle-math-mode t))		;force math-mode ON.
 )
-(fset 'YaTeX:eqnarray 'YaTeX:equation)
-(fset 'YaTeX:displaymath 'YaTeX:equation)
+(mapcar '(lambda (f) (fset f 'YaTeX:equation))
+	'(YaTeX:eqnarray YaTeX:eqnarray* YaTeX:align YaTeX:align*
+	  YaTeX:split YaTeX:multline YaTeX:multline* YaTeX:gather YaTeX:gather*
+	  YaTeX:aligned* YaTeX:gathered YaTeX:gathered*
+	  YaTeX:alignat YaTeX:alignat* YaTeX:xalignat YaTeX:xalignat*
+	  YaTeX:xxalignat YaTeX:xxalignat*))
 
 (defun YaTeX:list ()
   "%\n{} %default label\n{} %formatting parameter"
@@ -418,7 +423,7 @@
 	    );with
 	  (goto-char p)
 	  (message "Collecting %s...Done" labelcmd)
-	  (pop-to-buffer YaTeX-label-buffer)
+	  (YaTeX-showup-buffer YaTeX-label-buffer nil t)
 	  (YaTeX::label-setup-key-map)
 	  (setq truncate-lines t)
 	  (setq buffer-read-only t)
@@ -479,7 +484,7 @@
 		 (buffer-name (car blist))))
 	(setq blist (cdr blist)))
       (princ (format "':{%s}" ff)))
-    (pop-to-buffer lbuf)
+    (YaTeX-showup-buffer lbuf nil t)
     (YaTeX::label-setup-key-map)
     (setq buffer-read-only t)
     (use-local-map YaTeX-label-select-map)
--- a/yatexenv.el	Thu Feb 01 18:55:47 1996 +0000
+++ b/yatexenv.el	Wed May 01 15:35:40 1996 +0000
@@ -2,7 +2,7 @@
 ;;; YaTeX environment-specific functions.
 ;;; yatexenv.el
 ;;; (c ) 1994, 1995 by HIROSE Yuuji.[yuuji@ae.keio.ac.jp]
-;;; Last modified Fri Feb  2 03:47:14 1996 on supra
+;;; Last modified Mon Apr 15 16:24:00 1996 on supra
 ;;; $Id$
 
 ;;;
@@ -47,6 +47,7 @@
 		     -1)))))
       (message "%s" n)
       (goto-char (1- beg))
+      (beginning-of-line)
       (setq j n)
       (while (> j 1)
 	(or (re-search-forward andptn p nil)
--- a/yatexgen.el	Thu Feb 01 18:55:47 1996 +0000
+++ b/yatexgen.el	Wed May 01 15:35:40 1996 +0000
@@ -2,7 +2,7 @@
 ;;; YaTeX add-in function generator.
 ;;; yatexgen.el rev.5
 ;;; (c )1991-1995 by HIROSE Yuuji.[yuuji@ae.keio.ac.jp]
-;;; Last modified Sun Jan 22 23:15:34 1995 on landcruiser
+;;; Last modified Thu Feb 15 01:44:24 1996 on nsr
 ;;; $Id$
 
 (require 'yatex)
@@ -450,7 +450,7 @@
    ((equal left "[") "]")
    ((equal left "(") ")")
    ((equal left "<") ">")
-   ((equal left "\\begin{" "}"))
+   ((equal left "\\begin{") "}")
    (t left))
 )
 (defun YaTeX-generate-create-read-string (&optional nth)
--- a/yatexhlp.el	Thu Feb 01 18:55:47 1996 +0000
+++ b/yatexhlp.el	Wed May 01 15:35:40 1996 +0000
@@ -2,7 +2,7 @@
 ;;; YaTeX helper with LaTeX commands and macros.
 ;;; yatexhlp.el
 ;;; (c )1994 by HIROSE Yuuji.[yuuji@ae.keio.ac.jp]
-;;; Last modified Tue Dec 26 00:02:02 1995 on inspire
+;;; Last modified Mon Apr  1 03:34:23 1996 on NSR
 ;;; $Id$
 
 (let ((help-file (concat "YATEXHLP."
@@ -10,7 +10,7 @@
 			       (t "eng"))))
       (help-dir
        (cond
-	(YaTeX-emacs-19 (expand-file-name "../../site-lisp" exec-directory))
+	(YaTeX-emacs-19 (expand-file-name "../../site-lisp" doc-directory))
 	(t exec-directory))))
   (defvar YaTeX-help-file
     (expand-file-name help-file help-dir)
@@ -134,8 +134,8 @@
 		  (concat "^" (regexp-quote YaTeX-help-delimiter)) nil 1)
 		 (- (point) (length YaTeX-help-delimiter))))
       (YaTeX-showup-buffer
-       hbuf (function (lambda (x) (nth 3 (window-edges x)))))
-      (pop-to-buffer hbuf)
+       hbuf (function (lambda (x) (nth 3 (window-edges x)))) t)
+      (set-buffer hbuf)
       (if append (goto-char (point-max)) (erase-buffer))
       (insert YaTeX-help-synopsis "\n")
       (insert-buffer-substring hfbuf sb se)
@@ -191,8 +191,7 @@
   (let ((buf (get-buffer-create "**Description**"))
 	(conf (current-window-configuration)))
     (YaTeX-showup-buffer
-     buf (function (lambda (x) (nth 3 (window-edges x)))))
-    (pop-to-buffer buf)
+     buf (function (lambda (x) (nth 3 (window-edges x)))) t)
     (make-local-variable 'YaTeX-help-file-current)
     (make-local-variable 'YaTeX-help-command-current)
     (make-local-variable 'YaTeX-help-saved-config)
--- a/yatexlib.el	Thu Feb 01 18:55:47 1996 +0000
+++ b/yatexlib.el	Wed May 01 15:35:40 1996 +0000
@@ -2,7 +2,7 @@
 ;;; YaTeX library of general functions.
 ;;; yatexlib.el
 ;;; (c )1994-1995 by HIROSE Yuuji.[yuuji@ae.keio.ac.jp]
-;;; Last modified Thu Feb  1 22:34:57 1996 on nsr
+;;; Last modified Fri Apr  5 17:56:43 1996 on supra
 ;;; $Id$
 
 ;;;###autoload
@@ -161,7 +161,9 @@
 	    nil)			;if found in other frame
 	   (YaTeX-default-pop-window-height
 	    (split-window-calculate-height YaTeX-default-pop-window-height)
-	    (pop-to-buffer buffer)
+	    ;;(pop-to-buffer buffer)	;damn! emacs-19.30
+	    (select-window (next-window nil 1))
+	    (switch-to-buffer (get-buffer-create buffer))
 	    (or select (select-window window)))
 	   (t nil)))
 	 )))
@@ -170,19 +172,19 @@
 ;;;###autoload
 (defun split-window-calculate-height (height)
   "Split current window wight specified HEIGHT.
-If HEIGHT is number, make new window that has HEIGHT lines.
-If HEIGHT is string, make new window that occupy HEIGT % of screen height.
+If HEIGHT is number, make a new window that has HEIGHT lines.
+If HEIGHT is string, make a new window that occupies HEIGT % of screen height.
 Otherwise split window conventionally."
-  (if (one-window-p)
+  (if (one-window-p t)
       (split-window
        (selected-window)
        (max
 	(min
 	 (- (screen-height)
-	    (if (numberp YaTeX-default-pop-window-height)
-		(+ YaTeX-default-pop-window-height 2)
+	    (if (numberp height)
+		(+ height 2)
 	      (/ (* (screen-height)
-		    (string-to-int YaTeX-default-pop-window-height))
+		    (string-to-int height))
 		 100)))
 	 (- (screen-height) window-min-height 1))
 	window-min-height)))
--- a/yatexmth.el	Thu Feb 01 18:55:47 1996 +0000
+++ b/yatexmth.el	Wed May 01 15:35:40 1996 +0000
@@ -2,7 +2,7 @@
 ;;; YaTeX math-mode-specific functions.
 ;;; yatexmth.el rev.4
 ;;; (c )1993-1995 by HIROSE Yuuji [yuuji@ae.keio.ac.jp]
-;;; Last modified Thu Feb  1 13:04:16 1996 on supra
+;;; Last modified Tue Apr 23 23:17:24 1996 on inspire
 ;;; $Id$
 
 ;;; [Customization guide]
@@ -254,7 +254,7 @@
    ("6"		"partial"	(" -+\n+-+\n+-+" YaTeX-image-partial))
    ("partial"	"partial"	(" -+\n+-+\n+-+" YaTeX-image-partial))
    ("round"	"partial"	(" -+\n+-+\n+-+" YaTeX-image-partial))
-   ("[]"	"box"		"[]")
+   ("[]"	"Box"		"[]")
    ("Diamond"	"Diamond"	"/\\\n\\/")
    ("3"		"triangle"	"/\\\n~~")
    ("C"		"clubsuit"	" o\no+o\n |")
@@ -522,7 +522,7 @@
 
 (defun YaTeX-math-show-menu (match-str)
   (save-window-excursion
-    (pop-to-buffer YaTeX-math-menu-buffer)
+    (YaTeX-showup-buffer YaTeX-math-menu-buffer nil t)
     (let ((maxcols (max 1 (/ (screen-width) YaTeX-math-sign-width)))
 	  (case-fold-search nil)
 	  (cols 0) (list alist) command)
--- a/yatexprc.el	Thu Feb 01 18:55:47 1996 +0000
+++ b/yatexprc.el	Wed May 01 15:35:40 1996 +0000
@@ -2,7 +2,7 @@
 ;;; YaTeX process handler.
 ;;; yatexprc.el
 ;;; (c )1993-1995 by HIROSE Yuuji.[yuuji@ae.keio.ac.jp]
-;;; Last modified Fri Feb  2 02:09:57 1996 on supra
+;;; Last modified Fri Mar 29 00:15:35 1996 on inspire
 ;;; $Id$
 
 (require 'yatex)
@@ -328,15 +328,23 @@
   (save-excursion
     (YaTeX-showup-buffer
      buffer (function (lambda (x) (nth 3 (window-edges x)))))
-    (set-buffer (get-buffer-create buffer))
+    (let ((df default-directory))		;preserve current buf's pwd
+      (set-buffer (get-buffer-create buffer))	;1.61.3
+      (setq default-directory df)
+      (cd df))
     (erase-buffer)
     (if YaTeX-dos
 	(call-process
 	 shell-file-name nil buffer nil YaTeX-shell-command-option command)
-      (set-process-buffer
-       (start-process
-	"system" buffer shell-file-name YaTeX-shell-command-option command)
-       (get-buffer buffer))))
+      (if (and (get-buffer-process buffer)
+	       (eq (process-status (get-buffer-process buffer)) 'run)
+	       (not
+		(y-or-n-p (format "Process %s is running. Continue?" buffer))))
+	  nil
+	(set-process-buffer
+	 (start-process
+	  "system" buffer shell-file-name YaTeX-shell-command-option command)
+	 (get-buffer buffer)))))
 )
 
 (defvar YaTeX-preview-command-history nil

yatex.org