
yuuji@46: \def\lang{jp} % -*- texinfo -*- for Texinfo V.3.1 
yuuji@46: \input texinfo
yuuji@20: @setfilename yatexj
yuuji@20: @settitle Yet Another tex-mode for Emacs
yuuji@20: 
yuuji@20: @iftex
yuuji@46: @c @syncodeindex fn cp
yuuji@20: @syncodeindex vr cp
yuuji@20: @end iftex
yuuji@20: 
yuuji@20: @titlepage
yuuji@20: @sp 10
yuuji@20: @center
yuuji@20: @subtitle Yet Another tex-mode for emacs
yuuji@20: @title 『野鳥』
yuuji@20: @subtitle // YaTeX //
yuuji@20: @author @copyright{} 1991-1994 by    HIROSE, Yuuji [yuuji@@ae.keio.ac.jp]
yuuji@20: @end titlepage
yuuji@20: 
yuuji@46: @node Top, Intro, (dir), (dir)
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: 
yuuji@20: @menu
yuuji@46: * Intro::                       はじめに
yuuji@52: * Termnology::                  マニュアル参照上の注意
yuuji@46: * Main features::               主な機能
yuuji@46: * Installation::                インストール
yuuji@51: * Invocation::                  プロセス起動
yuuji@49: * %#notation ::                 %#記法
yuuji@46: * Completion::                  補完入力
yuuji@49: * Local dictionary::            ローカル辞書
yuuji@46: * Commenting out::              コメントアウト
yuuji@46: * Cursor jump::                 カーソルジャンプ
yuuji@51: * Modifying/Deleting::          LaTeXコマンドの変更/削除
yuuji@51: * Filling::                     桁揃え
yuuji@51: * Includeonly::                 勝手に includeonly
yuuji@51: * What column::                 カラム位置ガイド
yuuji@46: * Intelligent newline::         おまかせ改行
yuuji@52: * Changing mode of YaTeX::      野鳥動作モード変更
yuuji@51: * Online help::                 LaTeXオンラインヘルプ
yuuji@46: * Cooperation with other packages::  他パッケージとの連携
yuuji@46: * Customizations::              カスタマイズ
yuuji@46: * Etc::                         その他
yuuji@46: * Copying::                     取り扱い
yuuji@46: * Concept Index::               索引
yuuji@51: 
yuuji@51:  --- The Detailed Node Listing ---
yuuji@51: 
yuuji@51: latexコマンド起動
yuuji@51: 
yuuji@51: * Calling typesetter::          タイプセッタ起動
yuuji@51: * Print out::                   プリントアウト用コマンドの起動
yuuji@51: 
yuuji@51: %#記法
yuuji@51: 
yuuji@51: * Changing typesetter::         タイプセット用コマンドの変更
yuuji@51: * Splitting input files::       入力ファイル分割
yuuji@51: * Fix region for typesetting::  領域の固定
yuuji@51: * lpr format::                  プリントアウトコマンド用フォーマット
yuuji@51: * Editing %# notation::         %#記法の編集
yuuji@51: 
yuuji@51: 補完入力
yuuji@51: 
yuuji@51: * begin型補完::                 
yuuji@51: * section型補完::               
yuuji@51: * large型補完::                 
yuuji@51: * maketitle型補完::             
yuuji@51: * Arbitrary completion::        随時補完
yuuji@51: * end補完::                     
yuuji@51: * Accent mark completion::      アクセント記号補完
yuuji@51: * Image completion::            数式記号イメージ補完
yuuji@51: * Greek letter completion::     ギリシャ文字補完
yuuji@51: 
yuuji@51: section型補完
yuuji@51: 
yuuji@51: * 2個以上の引数をとる section型コマンド::  
yuuji@51: * Enclose region-type command::  
yuuji@51: * Recursive completion::        再帰補完
yuuji@51: * view-sectioning::             セクション区切りのアウトライン表示
yuuji@51: 
yuuji@51: 変更/削除
yuuji@51: 
yuuji@51: * Changing LaTeX command::      La@TeX{} コマンドの変更
yuuji@51: * Killing LaTeX command::       La@TeX{} コマンドの削除
yuuji@51: 
yuuji@51: カスタマイズ
yuuji@51: 
yuuji@51: * Lisp variables::              lisp 変数
yuuji@51: * Add-in functions::            付加関数(アドイン関数)
yuuji@51: 
yuuji@51: lisp 変数
yuuji@51: 
yuuji@51: * All customizable variables::  カスタマイズ変数一覧
yuuji@51: * Sample definitions::          カスタマイズ変数設定例
yuuji@51: * Hook variables::              hook変数
yuuji@51: * Hook file::                   hook用ファイル
yuuji@20: @end menu
yuuji@20: 
yuuji@52: @node Intro, Termnology, Top, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter はじめに
yuuji@20: @cindex Demacs
yuuji@20: @cindex Mule
yuuji@20: @cindex LaTeX
yuuji@46: @cindex やちょう[やちよう]
yuuji@20: 
yuuji@20:   野鳥は、GNU Emacs で La@TeX{} 用の文書を作成する時に jLa@TeX{} などの
yuuji@20: タイプセットコマンドや、プレヴューアの起動を Emacs 編集画面中から
yuuji@20: 行えるようにすると共に、拡張性の高い種々の補完機能によりソーステキ
yuuji@20: ストの編集を支援します。さらに La@TeX{} コマンドのオンラインヘルプに
yuuji@20: よりマニュアルを調べる手間を軽減します。
yuuji@20: 
yuuji@49:   English manual @xref{Top, , , yatexe,YaTeX English info}
yuuji@20: 
yuuji@52: @node Termnology, Main features, Intro, Top
yuuji@52: @comment  node-name,  next,  previous,  up
yuuji@52: @chapter 本マニュアル参照上の注意
yuuji@52: 
yuuji@52:   本マニュアルでは以下の表記を用います。
yuuji@52: 
yuuji@52: @itemize @bullet
yuuji@52: @item
yuuji@52: begin型コマンド
yuuji@52: 
yuuji@52: @code{\begin@{環境@} ～ \end@{環境@}}という形式のLaTeXコマンドを指します。
yuuji@52: begin型コマンドを補完入力することをbegin型補完と呼びます。
yuuji@52: 
yuuji@52: @item
yuuji@52: section型コマンド
yuuji@52: 
yuuji@52: @code{\section@{タイトル@}}や@code{\mbox@{内容@}}のように
yuuji@52: 引数を取るLaTeXコマンドを指します。
yuuji@52: 
yuuji@52: @item
yuuji@52: maketitle型コマンド
yuuji@52: 
yuuji@52: @code{\maketitle}や@code{\tableofcontents}のように引数を取らないLaTeXコマ
yuuji@52: ンドを指します。
yuuji@52: 
yuuji@52: @item
yuuji@52: large型コマンド
yuuji@52: 
yuuji@52: @code{@{\large ...@}} や @code{@{\tt ...@}} のようなフォント/サイズ指定子
yuuji@52: を指します。
yuuji@52: 
yuuji@52: @item @kbd{[prefix]}
yuuji@52: 
yuuji@52: 野鳥の機能を呼び出すためのプリフィクスキー。デフォルトでは@kbd{C-c}に割り
yuuji@52: 当てられているので、特に変更していない場合本マニュアルの @kbd{[prefix]} と
yuuji@52: いう表記は、@kbd{C-c} と読み換えてください。
yuuji@52: @end itemize
yuuji@52: 
yuuji@52: @node Main features, Installation, Termnology, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter 主な機能
yuuji@20: 
yuuji@20: @itemize @bullet
yuuji@46: @item タイプセッタやプレヴューアなどの編集画面からの起動(@kbd{C-c t})
yuuji@20: @item カーソル位置によらない固定リジョンの部分タイプセット
yuuji@20: @item \includeonlyのワンタッチ更新
yuuji@46: @item エラー箇所への自動ジャンプ(@kbd{C-c '})
yuuji@20: @item @code{\begin@{@}, \end@{@}, \section...} などの La@TeX{}
yuuji@20: コマンドの補完入力
yuuji@20: (@kbd{C-c b}, @kbd{C-c s}, @kbd{C-c l}, @kbd{C-c m})
yuuji@20: @item 既に入力したテキストを環境やコマンド引数の中に取り込む括り補完
yuuji@49: (@kbd{C-u} +通常補完キー)
yuuji@49: @item セクション区切り入力時の文書構造アウトライン表示
yuuji@20: @item 補完辞書の学習
yuuji@20: @item La@TeX{} の環境やコマンドに応じたガイド付き引数入力
yuuji@20: @item 野鳥にないガイド付き引数入力関数の自動生成(@file{yatexgen.el})
yuuji@20: @item La@TeX{} コマンドの削除/変更(@kbd{C-c k}, @kbd{C-c c})
yuuji@20: @item ファイル間、@code{\begin}<->@code{\end}間、
yuuji@48:         @code{\ref}<->@code{\label}間、
yuuji@48:         @code{\cite}<->@code{\bibitem}ジャンプ(@kbd{C-c g})
yuuji@20: @item 一括コメントアウト/アンコメントアウト
yuuji@46:         (@kbd{C-c >}, @kbd{C-c <}, @kbd{C-c ,}, @kbd{C-c .})
yuuji@20: @item アクセント記号/数式環境用コマンド/ギリシャ文字の入力支援
yuuji@52:         (@kbd{C-c a}, @kbd{;}, @kbd{/})
yuuji@20: @item tabular/array環境のカラム位置ガイド
yuuji@46: @item 標準的 La@TeX{} コマンドのオンラインヘルプ(@kbd{C-c ?}, @kbd{C-c /})
yuuji@53: @item ドキュメントのインクルード構造の視覚的表示とバッファ切り替え
yuuji@53: (@kbd{C-c d})
yuuji@20: @end itemize
yuuji@20: 
yuuji@46: @node Installation, Invocation, Main features, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter 起動法
yuuji@20: @cindex Install
yuuji@46: @cindex インストール[いんすとおる]
yuuji@20: @cindex .emacs
yuuji@20: @cindex auto-mode-alist
yuuji@20: @cindex autoload
yuuji@52: @section 野鳥起動のための設定
yuuji@20: 
yuuji@20:   ~/.emacsに下の2項目を加えます。
yuuji@20: 
yuuji@20: @lisp
yuuji@46: (setq auto-mode-alist
yuuji@20:       (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist))
yuuji@46: (autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t)
yuuji@20: @end lisp
yuuji@20: 
yuuji@46: 次に野鳥の emacs-lisp ファイル群を置くディレクトリを load-path に加えます。
yuuji@46: たとえば、 @file{~/src/emacs/yatex}に置くのであれば、
yuuji@20: 
yuuji@20: @lisp
yuuji@20: (setq load-path (cons (expand-file-name "~/src/emacs/yatex") load-path))
yuuji@20: @end lisp
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: などとします。
yuuji@20: 
yuuji@20:   以上の設定により、拡張子が .tex であるファイルを編集すると自動的に野鳥が
yuuji@20: ロードされます。野鳥が正常に起動できたときはモードラインの表示が「やてふ」
yuuji@20: に変わります。
yuuji@20: 
yuuji@52: @section タイプセッタ/プレヴューア環境の設定
yuuji@52: 
yuuji@52:   利用する外部プログラムに関する以下の変数を確認し、必要なら正しい値に変更
yuuji@52: します。
yuuji@52: @table @code
yuuji@52: @item tex-command
yuuji@52:         @dots{} 起動するタイプセッタのコマンド名
yuuji@52: @item dvi2-command
yuuji@52:         @dots{} 起動するプレヴューアのコマンド名
yuuji@52: @item NTT-jTeX
yuuji@52:         @dots{} NTT jTeX を使用するなら t
yuuji@52: @item YaTeX-kanji-code
yuuji@52:         @dots{} 文書を作成する時の漢字コード
yuuji@52: @item dviprint-command-format
yuuji@52:         @dots{} ファイルの印刷に使われるコマンド列の書式
yuuji@52: @item makeindex-command
yuuji@52:         @dots{} makeindexコマンド
yuuji@52: @end table
yuuji@52: 
yuuji@52: これらを変更する場合は、やはり@file{~/.emacs}にて、たとえば
yuuji@52: @lisp
yuuji@52: (setq tex-command "bigjlatex")
yuuji@52: @end lisp
yuuji@52: のようにしてください。どのような値をセットすれば良いかについては、
yuuji@52: @ref{All customizable variables}を参照してください。
yuuji@52: 
yuuji@20: 
yuuji@49: @node Invocation, %#notation , Installation, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter latexコマンド起動
yuuji@20: @cindex prefix key
yuuji@20: @cindex C-c
yuuji@46: @cindex タイプセッタ[たいふせつた]
yuuji@46: @cindex プレヴューア[ふれひゆうあ]
yuuji@20: @cindex jlatex
yuuji@46: @cindex プリントアウト[ふりんとあうと]
yuuji@20: 
yuuji@52: LaTeXソースの編集中、次のキー入力により、jlatex などのタイプセットプログラ
yuuji@52: ム(以後タイプセッタと呼ぶ)、プレヴューアなどの起動ができます。
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] t j
yuuji@46:         @dots{} タイプセッタ(jlatex)起動
yuuji@20: @item [prefix] t r
yuuji@46:         @dots{} タイプセッタ起動(領域指定)
yuuji@20: @item [prefix] t k
yuuji@46:         @dots{} 動作中のタイプセッタの停止
yuuji@20: @item [prefix] t b
yuuji@46:         @dots{} jbibtex起動
yuuji@20: @item [prefix] t p
yuuji@46:         @dots{} プレヴューア起動
yuuji@20: @item [prefix] t l
yuuji@46:         @dots{} lpr(プリントアウト用)コマンド起動
yuuji@20: @end table
yuuji@20: 
yuuji@20: @menu
yuuji@46: * Calling typesetter::          タイプセッタ起動
yuuji@46: * Print out::                   プリントアウト用コマンドの起動
yuuji@20: @end menu
yuuji@20: 
yuuji@46: @node Calling typesetter, Print out, Invocation, Invocation
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section タイプセッタ起動
yuuji@20: @cindex タイプセッタ起動
yuuji@46: @cindex タイプセットエラー[たいふせつとえらあ]
yuuji@46: @cindex エラー修正[えらあしゆうせい]
yuuji@20: 
yuuji@20:   タイプセッタを起動すると、編集ウィンドウが2つに分割され、片方のウィンド
yuuji@20: ウにタイプセット画面が表示されます。出力されるメッセージと連動しタイプセッ
yuuji@20: トバッファは自動的にスクロールします。もし、途中でエラーが起こって止まって
yuuji@49: しまった場合にはタイプセットバッファに移り、(@kbd{C-x o}) タイプセッタの出
yuuji@49: している ? プロンプトに対して、@kbd{x} (処理の中断)などの指示を送ることが
yuuji@49: できます。エラーを修正する場合は、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] '
yuuji@20: @itemx (prefix+アポストロフィ)
yuuji@46:         @dots{} 直前のエラー発生行へジャンプ
yuuji@20: @end table
yuuji@20: 
yuuji@20: を入力することにより、タイプセッタがエラーを発生した行に移ることができます。
yuuji@20: また、タイプセッタの出力する overfull hbox などのウォーニング行にも対応し
yuuji@20: ていますので、順次 @kbd{[prefix] '} を押すことにより、一つ前のウォーニング
yuuji@20: 発生行にジャンプしていきます。
yuuji@20: 
yuuji@20:   もし、気になるエラー行があった場合は、タイプセットバッファで、エ
yuuji@20: ラーの表示されている行にカーソルを合わせスペースキーを押すと La@TeX{} 
yuuji@20: ソースの対応する行にジャンプします。
yuuji@20: 
yuuji@52: @subsection 領域タイプセット
yuuji@52: 
yuuji@52:   ポイントとマークの間、あるいはテキスト中に埋め込んだ @code{%#BEGIN} と
yuuji@52: @code{%#END}の間の領域(@ref{%#記法})だけを切り取ってタイプセットすることが
yuuji@52: できます。この場合の documentstyle は、単一ファイルの La@TeX{} ソースの編
yuuji@52: 集時にはそのファイルの documentstyle が、別ファイルから include している場
yuuji@52: 合にはメインファイルの documentstyle が自動的に選択されます。指定領域は、
yuuji@52: メインファイルのあるディレクトリの@file{texput.tex}という臨時ファイルに出
yuuji@52: 力されますので、上書きには注意してください。
yuuji@20: 
yuuji@46: @node Print out,  , Calling typesetter, Invocation
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section プリントアウト
yuuji@20: 
yuuji@52:   @kbd{[prefix] t l}を押してプリントアウトを指示すると、出力開始/終了ペー
yuuji@52: ジを聞いてくるので、それぞれに答えます。これを省略したい時は、
yuuji@52: universal-argument をつけ、
yuuji@20: 
yuuji@46: @cindex 出力開始ページ[しゆつりよくかいしへえし]
yuuji@46: @cindex 出力終了ページ[しゆつりよくしゆうりようへえし]
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item C-u [prefix] t l
yuuji@46:         @dots{} ページ確認省略lpr起動
yuuji@20: @end table
yuuji@46: @cindex ページ確認省略lpr起動[へえしかくにんしようりやくlprきとう]
yuuji@20: 
yuuji@52: @noindent
yuuji@52: のように起動してください。
yuuji@52: 
yuuji@49: @node %#notation , Completion, Invocation, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter %#記法
yuuji@20: 
yuuji@20:   本文中に@code{%#}ではじまるキーワードを埋め込むことでタイプセッタ起動等
yuuji@20: の制御をすることができます。
yuuji@20: 
yuuji@20: @menu
yuuji@46: * Changing typesetter::         タイプセット用コマンドの変更
yuuji@46: * Splitting input files::       入力ファイル分割
yuuji@46: * Fix region for typesetting::  領域の固定
yuuji@46: * lpr format::                  プリントアウトコマンド用フォーマット
yuuji@46: * Editing %# notation::         %#記法の編集
yuuji@20: @end menu
yuuji@20: 
yuuji@49: @node Changing typesetter, Splitting input files, %#notation , %#notation
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section タイプセット用コマンド変更
yuuji@20: 
yuuji@20:   起動するコマンドを変えたい時は本文中に次のような行を書きます。
yuuji@20: 
yuuji@46: @cindex 起動するコマンドを変える[きとうするこまんとをかえる]
yuuji@20: 
yuuji@20: @example
yuuji@51:         %#!jlatex-ntt
yuuji@20: @end example
yuuji@20: 
yuuji@20: NTT jTeX と、ASCII jTeX を使い分けたいような場合に便利でしょう。
yuuji@20: 
yuuji@46: @cindex タイプセッタの使い分け[たいふせつたのつかいわけ]
yuuji@20: 
yuuji@49: @node Splitting input files, Fix region for typesetting, Changing typesetter, %#notation
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section 入力ファイル分割
yuuji@20: 
yuuji@20: また、章毎に別ファイルの .tex を作成している場合で、@file{main.tex}から 
yuuji@20: @file{sub.tex}を @code{\include}しているような時は、@file{sub.tex}の任意の
yuuji@20: 位置に次のような行を埋め込みます。
yuuji@20: 
yuuji@20: @example
yuuji@46:         %#!jlatex main.tex
yuuji@20: @end example
yuuji@20: 
yuuji@46: @cindex 入力ファイル分割[にゆうりよくふあいるふんかつ]
yuuji@20: 
yuuji@20: 上の例のようにコマンド名だけでなく引数も書いた場合には、全てをそのまま 
yuuji@20: shell に渡すので次のように書けば、ghostview などをプレヴューアに使う時に便
yuuji@20: 利です。
yuuji@20: 
yuuji@20: @cindex ghostview
yuuji@20: 
yuuji@20: @example
yuuji@49:         %#!jlatex main ; dvi2ps main.dvi > main
yuuji@20: @end example
yuuji@20: 
yuuji@20: なお、この行の最後の単語のピリオド以前を「メインファイル」のベース
yuuji@20: ネームであると仮定します(上の2つの場合どちらも@file{main})。
yuuji@20: 
yuuji@51:   @kbd{[prefix] g} (@ref{Cursor jump}参照) での
yuuji@51: ファイル間ジャンプを有効に機能させるため、入力ファイル分割時には次のことに
yuuji@51: 注意して下さい。
yuuji@20: 
yuuji@20: @enumerate
yuuji@20: @item
yuuji@20: サブディレクトリを作って、その中にサブファイルを置くことはできるが
yuuji@20: サブディレクトリのサブディレクトリには置けない。
yuuji@20: @item
yuuji@20: メインファイルからサブディレクトリ内のファイルを include
yuuji@20: する時には、相対パス指定を用いて、
yuuji@20: @code{\include{chap1/sub}}のように記述。
yuuji@20: @item
yuuji@20: メインファイルが一つ上のディレクトリにある場合も、サブファイルには
yuuji@20: %#!jlatex main.tex のように記述する(../mainではない)。
yuuji@20: @end enumerate
yuuji@20: 
yuuji@20: 
yuuji@20: 
yuuji@49: @node Fix region for typesetting, lpr format, Splitting input files, %#notation
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section 領域の固定
yuuji@46: @cindex 固定領域のタイプセット[こていりよういきのたいふせつと]
yuuji@20: @cindex %#BEGIN
yuuji@20: @cindex %#END
yuuji@20: 
yuuji@20:   @kbd{[prefix] tr} の領域指定のタイプセットでは、とくに指定のないかぎり、 
yuuji@20: @kbd{C-SPC}でマークした位置と、ポイント(カーソル位置)の間を領域とみなしま
yuuji@20: すが、必ず決まった領域をタイプセットしたい場合は、その領域を
yuuji@20: 
yuuji@20: @example
yuuji@49:         %#BEGIN
yuuji@49:         <渡したい領域>
yuuji@49:         %#END
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: のように@code{%#BEGIN}と@code{%#END}で囲み、カーソルを「@code{%#BEGIN}以降」
yuuji@20: に置いてください。この時の領域決定規則をまとめると次のようになります。
yuuji@20: 
yuuji@20: 
yuuji@20: @enumerate
yuuji@20: @item
yuuji@20: カーソル位置よりバッファの先頭方向に@code{%#BEGIN}というキーワードが
yuuji@20: ある場合
yuuji@20: 
yuuji@20: @enumerate
yuuji@20: @item
yuuji@20: @code{%#BEGIN}よりバッファの末尾方向に@code{%#END}というキーワードが見つかっ
yuuji@20: た場合。
yuuji@46: @result{}@code{%#BEGIN} から、その @code{%#END} のある位置まで。
yuuji@20: @item
yuuji@20: @code{%#END} が見つからなかった場合。
yuuji@46: @result{}バッファの最後尾まで。
yuuji@20: @end enumerate
yuuji@46: @cindex 領域決定規則[りよういきけつていきそく]
yuuji@20: 
yuuji@20: @item
yuuji@20: カーソル位置よりバッファの先頭方向に @code{%#BEGIN} というキーワードが
yuuji@20: 見つからなかった場合。
yuuji@46: @result{}マーク(@kbd{C-SPC}位置)とポイント(カーソル位置)の間の領域。
yuuji@20: @end enumerate
yuuji@20: 
yuuji@20:   tabular 環境を何度も試行錯誤しているような場合は、@code{\begin}の前の行
yuuji@20: に @code{%#BEGIN} と書き、@code{\end} の次の行に @code{%#END} と書いておく
yuuji@20: と簡単に作表結果をテストすることができます。また、長い .tex ファイルの後半
yuuji@20: に @code{%#BEGIN} を書いておけば、前半の部分は無視できます。このBEGINとEND
yuuji@20: の消し忘れには十分ご注意下さい。
yuuji@46: @cindex 長いファイルの編集[なかいふあいるのへんしゆう]
yuuji@20: 
yuuji@49: @node  Require, lpr format, Fix region for typesetting, %#notation
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: 
yuuji@49: @node lpr format, Editing %# notation, Fix region for typesetting, %#notation
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section lprフォーマット
yuuji@46: @cindex lprふぉーまっと[lprふおおまつと]
yuuji@46: @cindex lprフォーマット[lprふおおまつと]
yuuji@20: @cindex lpr format
yuuji@20: 
yuuji@20:   まず、プリントアウト用コマンド列のフォーマットについて説明します。
yuuji@20: コマンド列フォーマットは、3つの Lisp 変数によって表現されます。デ
yuuji@20: フォルトの dvi2ps 用のフォーマットを例に説明します。
yuuji@20: 
yuuji@20: @table @code
yuuji@46: @item (1)dviprint-command-format
yuuji@46: @code{"dvi2ps %f %t %s | lpr"}
yuuji@20: 
yuuji@46: @item (2)dviprint-from-format
yuuji@46: @code{"-f %b"}
yuuji@20: 
yuuji@46: @item (3)dviprint-to-format
yuuji@46: @code{"-t %e"}
yuuji@20: @end table
yuuji@20: 
yuuji@20: 実際にプリントアウトする時は、(1)中の %s がファイル名に置き換えられ、%f が
yuuji@20: (2)の内容、%t が(3)の内容に置き換えられます。その際に(2)の文字列中の %b は
yuuji@20: 「出力開始ページ」、(3)の文字列中の %e は「出力終了ページ」に置き換えられ
yuuji@20: ます。もし、ページを指定しない時には、%f, %t 両方とも無視されます。
yuuji@20: 
yuuji@20:   この、dviprint-command-format を臨時に変えたい時は、La@TeX{} の
yuuji@20: ソーステキスト中の任意の場所に、
yuuji@20: 
yuuji@20: @example
yuuji@20:         %#LPR dvi2ps %f %t %s | 4up -page 4 | texfix | lpr -Plp2
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: のように書いて下さい。プリントアウトするページ範囲をいちいち聞かせないよう
yuuji@20: にする時に
yuuji@20: 
yuuji@20: @example
yuuji@46:         %#LPR dvi2ps %s | lpr
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: などとするのも便利かもしれません。
yuuji@20: 
yuuji@49: @node Editing %# notation,  , lpr format, %#notation
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section %#記法自体の編集
yuuji@46: @cindex %#きほうじたいのへんしゅう[%#きほうしたいのへんしゆう]
yuuji@20: 
yuuji@20: 以上のような@code{%#}で始まる各種制御記法を編集するためには
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] %
yuuji@46:         @dots{} @code{%#}@var{記法編集メニュー}
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: を押します。
yuuji@20: 
yuuji@20: @example
yuuji@46:         !)Edit-%#! B)EGIN-END-region L)Edit-%#LPR
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: というメニューが出て来るので、@code{%#!}に続くコマンドを変更したい時には
yuuji@20: @kbd{!}を、@code{%#LPR}で lpr フォーマットを変えたい時は@kbd{l}を、あらか
yuuji@20: じめ設定したリジョンを @code{%#BEGIN} ～ @code{%#END} で括りたい時は、
yuuji@20: @kbd{b}を押します。@kbd{b}を選んだ時には、それまでバッファ中に置かれていた 
yuuji@20: @code{%#BEGIN}, @code{%#END} が自動的に消去されます。
yuuji@46: @cindex lprフォーマットの変更[lprふおおまつとのへんこう]
yuuji@20: 
yuuji@49: @node Completion, Local dictionary, %#notation , Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter 補完入力
yuuji@20: 
yuuji@20:   La@TeX{} での環境名などは、野鳥の補完機能を利用して能率的に入力すること
yuuji@20: ができます。
yuuji@20: 
yuuji@20: @menu
yuuji@20: * begin型補完::                 
yuuji@20: * section型補完::               
yuuji@20: * large型補完::                 
yuuji@20: * maketitle型補完::             
yuuji@46: * Arbitrary completion::        随時補完
yuuji@20: * end補完::                     
yuuji@46: * Accent mark completion::      アクセント記号補完
yuuji@46: * Image completion::            数式記号イメージ補完
yuuji@46: * Greek letter completion::     ギリシャ文字補完
yuuji@20: @end menu
yuuji@20: 
yuuji@46: @node begin型補完, section型補完, Completion, Completion
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section begin型補完
yuuji@46: @cindex begin型補完[beginかたほかん]
yuuji@46: @cindex 環境名の補完[かんきようめいのほかん]
yuuji@20: @cindex prefix b
yuuji@20: 
yuuji@20:   @code{\begin@{env@}...\end@{env@}}の様な形式の入力の補完をbegin型補完と
yuuji@20: 呼ぶことにします。begin 型補完は、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] b
yuuji@46:         @dots{} begin 型補完開始(標準では @kbd{C-c b})
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: で始まります。頻繁に用いられる次の La@TeX{} 環境の補完は、[prefix] @kbd{b}
yuuji@20: に続く次の1文字を入力するだけで、@code{\begin@{xxx@}...\end@{xxx@}}を完成
yuuji@20: させます。
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] b c
yuuji@46:         @dots{} @code{\begin@{center@}...\end@{center@}}
yuuji@20: @item [prefix] b d
yuuji@46:         @dots{} @code{\begin@{document@}...\end@{document@}}
yuuji@20: @item [prefix] b D
yuuji@46:         @dots{} @code{\begin@{description@}...\end@{description@}}
yuuji@20: @item [prefix] b e
yuuji@46:         @dots{} @code{\begin@{enumerate@}...\end@{enumerate@}}
yuuji@20: @item [prefix] b E
yuuji@46:         @dots{} @code{\begin@{equation@}...\end@{equation@}}
yuuji@20: @item [prefix] b i
yuuji@46:         @dots{} @code{\begin@{itemize@}...\end@{itemize@}}
yuuji@20: @item [prefix] b l
yuuji@46:         @dots{} @code{\begin@{flushleft@}...\end@{flushleft@}}
yuuji@20: @item [prefix] b m
yuuji@46:         @dots{} @code{\begin@{minipage@}...\end@{minipage@}}
yuuji@20: @item [prefix] b t
yuuji@46:         @dots{} @code{\begin@{tabbing@}...\end@{tabbing@}}
yuuji@20: @item [prefix] b T
yuuji@46:         @dots{} @code{\begin@{tabular@}...\end@{tabular@}}
yuuji@20: @item [prefix] b ^T
yuuji@46:         @dots{} @code{\begin@{table@}...\end@{table@}}
yuuji@20: @item [prefix] b p
yuuji@46:         @dots{} @code{\begin@{picture@}...\end@{picture@}}
yuuji@20: @item [prefix] b q
yuuji@46:         @dots{} @code{\begin@{quote@}...\end@{quote@}}
yuuji@20: @item [prefix] b Q
yuuji@46:         @dots{} @code{\begin@{quotation@}...\end@{quotation@}}
yuuji@20: @item [prefix] b r
yuuji@46:         @dots{} @code{\begin@{flushright@}...\end@{flushright@}}
yuuji@20: @item [prefix] b v
yuuji@46:         @dots{} @code{\begin@{verbatim@}...\end@{verbatim@}}
yuuji@20: @item [prefix] b V
yuuji@46:         @dots{} @code{\begin@{verse@}...\end@{verse@}}
yuuji@20: @end table
yuuji@20: 
yuuji@20:   上記のもの以外の環境名は Emacs の持つインクリメンタルな補完機能を用いて
yuuji@20: 入力します(上記の環境名も以下の補完入力可能)。
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] b @key{SPC}
yuuji@46:         @dots{} begin 型補完入力
yuuji@20: @end table
yuuji@20: 
yuuji@20: @kbd{[prefix] b @key{SPC}} と入力すると、最下行のミニバッファに
yuuji@20: 
yuuji@20: @example
yuuji@20:         Begin environment(default document): 
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent
yuuji@20: と表示されます。ここで、何も入れずにリターンキーのみ押すと、括弧内に出てい
yuuji@20: るデフォルトの環境名が入力されますが、適当な環境名を入力すると、
yuuji@20: @code{\begin@{環境名@} … \end@{環境名@}}が文書中に挿入されます。ミニバッ
yuuji@20: ファで環境名を入力するときに、環境名の頭文字を入力し「スペース」をたたくと、
yuuji@20: 一致する環境名が内部テーブルに存在した場合、正しい環境名に補完されるので、
yuuji@20: 入力の手間が省けます。内部テーブルに存在しない環境名を入力した時はユーザ専
yuuji@20: 用のテーブルに登録され、さらにそのテーブルを自動的に、ユーザ辞書(デフォル
yuuji@20: トでは @file{~/.yatexrc})に保存します。
yuuji@46: @cindex ユーザ辞書[ゆうさししよ]
yuuji@20: 
yuuji@20: @subsection 既に書いたテキストを環境で括る
yuuji@20: 
yuuji@20:   ところで、最初に書いてしまったブロックを後から、itemize 環境の中
yuuji@20: に閉じこめたいと思うことがありますが、そのようなときは、あらかじめ
yuuji@20: 閉じこめたい段落をマークして、begin 型補完の各コマンドの @kbd{[prefix]}
yuuji@20: の次の『小文字の 'b'』 を『大文字』に変えて起動して下さい。(または、
yuuji@20: @kbd{C-u} を先に打ち、universal argument をつけても可能です)
yuuji@46: @cindex ブロック[ふろつく]
yuuji@46: @cindex 閉じ込める[としこめる]
yuuji@20: 
yuuji@20:   例えばあるパラグラフを description 環境の中に入れたいときは、
yuuji@20: そのパラグラフをマークしてから、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] B D
yuuji@20: @itemx (または ESC 1 [prefix] b D)
yuuji@20: @itemx (または  C-u  [prefix] b D など)
yuuji@20: @end table
yuuji@20: 
yuuji@20: とタイプしてください。これは、@kbd{[prefix] b SPC}の補完入力にもあてはまり、
yuuji@20: @kbd{b} を大文字に変えて、@kbd{[prefix] B SPC} とタイプすれば、あらかじめ
yuuji@20: マークしておいたリジョンを、begin と end の環境で括ります。
yuuji@20: 
yuuji@46: @node section型補完, large型補完, begin型補完, Completion
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section section型補完
yuuji@46: @cindex  section型補完[sectionかたほかん]
yuuji@20: @cindex prefix s
yuuji@20: 
yuuji@20:   @code{\section@{目的@}} のような形式の入力の補完を section 型補完と呼ぶこ
yuuji@20: とにします。section 型補完は、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] s
yuuji@46:         @dots{} section 型補完
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: で実行します。@kbd{[prefix] s} を入力するとミニバッファに、
yuuji@20: 
yuuji@20: @example
yuuji@49:         (C-v for view-section) \???@{@} (default documentstyle):
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: というプロンプトが現れるので、そこで @samp{section} のような La@TeX{} コマ
yuuji@20: ンド名を入力します。ここでもリターンキーのみで括弧内のデフォルト値が選択さ
yuuji@20: れるほか、@samp{chapter}などのような頻度の高い名称入力にはスペースキーによ
yuuji@20: る補完機能が有効です。 次に、@{@}の中身の入力を促す、
yuuji@20: 
yuuji@20: @example
yuuji@49:         \section@{???@}:
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: というプロンプトが現れるので、セクションのタイトルなどを入力します。
yuuji@20: たとえば、
yuuji@20: 
yuuji@20: @example
yuuji@49:         (C-v for view-section) \???@{@} (default documentstyle): section
yuuji@49:         \section@{???@}: 目的
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: のように入力した場合は、文章中に
yuuji@20: 
yuuji@20: @example
yuuji@49:         \section@{目的@}
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: が挿入され、
yuuji@20: 
yuuji@20: @example
yuuji@49:         (C-v for view-section) \???@{@} (default section): vspace*
yuuji@49:         \vspace*@{???@}: 
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: のように@{@}の中身を省略したときは、
yuuji@20: 
yuuji@20: @example
yuuji@49:         \vspace*@{@}
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: だけが挿入され、改行はせずカーソルは自動的に中括弧の内側に移動します。
yuuji@20: 
yuuji@20: @menu
yuuji@20: * 2個以上の引数をとる section型コマンド::  
yuuji@46: * Enclose region-type command::  
yuuji@46: * Recursive completion::        再帰補完
yuuji@46: * view-sectioning::             セクション区切りのアウトライン表示
yuuji@20: @end menu
yuuji@20: 
yuuji@49: @node 2個以上の引数をとる section型コマンド, Enclose region-type command, section型補完, section型補完
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @subsection 2個以上の引数をとる section型コマンド
yuuji@20: @cindex 引数[ひきすう]
yuuji@20: 
yuuji@20:   ところで、@samp{\addtolength{\topmargin}{8mm}} などのように、引数を二つ
yuuji@20: 以上取る La@TeX{} コマンドがあります。このようなコマンドの補完入力には、
yuuji@20: section 型補完呼び出しに引数を付けてください。例えば上の@samp{addtolength} 
yuuji@20: の例であれば、引数2を指定します。つまり、
yuuji@20: 
yuuji@20: @example
yuuji@20:         C-u 2 [prefix] s   (または、ESC 2 [prefix] s)
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: と section 型補完を呼び出した後、
yuuji@20: 
yuuji@20: @example
yuuji@49:         (Ctrl-v for view-section) \???@{@} (default vspace*): addtolength
yuuji@20:         \addtolength@{???@}: \topmargin
yuuji@20:         Argument 2: 8mm
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@46: のように入力してください。最初の addtolength の部分と、第一引数である 
yuuji@46: \topmargin の入力は当然スペースによる補完入力が可能です。ユーザ辞書に登録
yuuji@46: される La@TeX{} コマンドには、この引数の数も学習されるので、最初の補完の時
yuuji@46: 引数の数を指定して起動しておけば、以後の補完時には、記憶された個数だけ引数
yuuji@46: を聞いて来るようになります。あとで引数の個数を変えたい時は、再び @kbd{C-u} 
yuuji@46: を用いて個数を指定し直すことで、自動的に辞書中の引数の個数の部分を更新しま
yuuji@46: す。
yuuji@20: @cindex 引数の個数を変える[ひきすうのこすうをかえる]
yuuji@20: 
yuuji@20: 
yuuji@49: @node Enclose region-type command, Recursive completion, 2個以上の引数をとる section型コマンド, section型補完
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @subsection 既に書いたテキストを括る
yuuji@20: @cindex 括る[くくる]
yuuji@20: 
yuuji@20:   また、起動コマンドの@kbd{s}を大文字に変えて起動すると、あらかじめ書
yuuji@20: いた文章を section 型コマンドの第一引数として括ります。
yuuji@20: 
yuuji@46: @node Recursive completion, view-sectioning, Enclose region-type command, section型補完
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @subsection 再帰補完
yuuji@20: @cindex 再帰補完[さいきほかん]
yuuji@20: 
yuuji@20:   高度な使い方になるかもしれませんが、section型補完の引数の入力時にさらに
yuuji@20: 補完入力を利用することができます(section/large/maketitle型に限る)。section
yuuji@20: 型コマンドの引数に更に La@TeX{} コマンドが来る場合にはミニバッファで野鳥の
yuuji@20: 補完キーを再帰的に入力することで引数の入力も効率的に行なえます。
yuuji@20: 
yuuji@46: @node view-sectioning,  , Recursive completion, section型補完
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @subsection セクション区切りのアウトライン表示
yuuji@20: @cindex アウトライン[あうとらいん]
yuuji@20: 
yuuji@20:   通常のsection型補完の時にミニバッファで@kbd{C-v}を押すと現在存在するセク
yuuji@20: ション区切りコマンド全てを一覧表示します(「<<--」のついている行がもっとも
yuuji@20: 近いセクション区切り)。この時ミニバッファで@kbd{C-p}, @kbd{C-n} を押すと
yuuji@20: @samp{part}, @samp{chapter}, ..., @samp{subparagraph} のコマンドが論理階層
yuuji@20: の高さにしたがって上下します。また、@kbd{C-v}, @kbd{M-v} を押すとセクショ
yuuji@20: ン区切り一覧バッファがスクロールし、数字の@kbd{0}～@kbd{7}を押すとある高さ
yuuji@20: 以上のセクション区切りだけを選んで表示します(実際にやって見れば分かります)。
yuuji@20: この一覧バッファにカーソルを移しスペースを押すと、該当するセクション区切り
yuuji@20: のある本文中の場所にジャンプします。
yuuji@20: @cindex 論理階層[ろんりかいそう]
yuuji@46: @cindex セクション区切り[せくしよんくきり]
yuuji@46: @cindex ジャンプ[しやんふ]
yuuji@20: 
yuuji@46: @node large型補完, maketitle型補完, section型補完, Completion
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section large型補完
yuuji@46: @cindex large型補完[largeかたほかん]
yuuji@20: @cindex prefix l
yuuji@20: 
yuuji@20:   @code{@{\large @}} のような形式の補完を large 型補完と呼ぶことにします。
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] l
yuuji@46:         @dots{} large 型補完開始
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: がlarge型補完の開始です。@kbd{[prefix] l} を押すと、ミニバッファに
yuuji@20: 
yuuji@20: @example
yuuji@49:         @{\??? @} (default large): 
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: と表示されるので、上記のものと同じ要領で補完入力して下さい。補完候補に用意
yuuji@20: されているのは、@samp{footnotesize} や @samp{huge} のような文字サイズ指定
yuuji@20: 子と、@samp{bf}や@samp{dg}のようなフォント指定子です。
yuuji@46: @cindex 文字サイズ指定子[もしさいすしていし]
yuuji@46: @cindex フォント指定子[ふおんとしていし]
yuuji@20: 
yuuji@20: @subsection 既に書いた文字を括る
yuuji@20: @cindex 括る[くくる]
yuuji@20: 
yuuji@20:   また、begin型補完の時と同様、先に書いてしまった一連の文章の文字のサイズ
yuuji@20: を変えたいと思う時がありますが、そのような時は、サイズや大きさを変えたい文
yuuji@20: 字の範囲をマークしてから、呼び出しキーを @kbd{[prefix] L} と、大文字の L 
yuuji@20: に変えて呼び出せば、そのリジョン全体が、ブレースで囲まれます。
yuuji@20: 
yuuji@46: @node maketitle型補完, Arbitrary completion, large型補完, Completion
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section maketitle型補完
yuuji@46: @cindex maketitle型補完[maketitleかたほかん]
yuuji@20: @cindex prefix m
yuuji@20: 
yuuji@20:   @code{\maketitle} の形式の補完を maketitle 型補完と呼ぶことにします。
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] m
yuuji@46:         @dots{} maketitle 型補完開始
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: で、maketitle 型補完を開始します。補完の要領は今までのものとまったく同じで
yuuji@20: す。La@TeX{} 用のコマンド名が補完候補として用意されています。
yuuji@20: 
yuuji@46: @node Arbitrary completion, end補完, maketitle型補完, Completion
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section 随時補完
yuuji@46: @cindex 随時補完[すいしほかん]
yuuji@20: @cindex prefix SPC
yuuji@20: 
yuuji@20:   さて、今まで述べた典型的な La@TeX{} コマンド形式の補完入力を用いずに、今
yuuji@20: 入力しようとしている La@TeX{} コマンドを文書中の任意の位置で随時補完するこ
yuuji@20: ともできます。La@TeX{} コマンド(先頭が\で始まる)を入力している途中で、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] SPC
yuuji@46:         @dots{} 随時補完
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: を入力すれば、全ての補完候補の中から一致するものが選ばれカーソル位置に挿入
yuuji@20: されます。
yuuji@20: 
yuuji@46: @node end補完, Accent mark completion, Arbitrary completion, Completion
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section end補完
yuuji@20: @cindex end補完[endほかん]
yuuji@20: @cindex prefix e
yuuji@20: 
yuuji@20:   現在開いたままの環境名を自動的に検出し、@code{\end@{環境名@}}を挿入しま
yuuji@20: す。begin 型補完を用いれば環境の閉じ忘れはないのですが、時にはついつい手で 
yuuji@20: @code{\begin@{環境名@}} を入れてしまい、悲しい思いをすることがあります。そ
yuuji@20: のような時には気にせず続けて文章を入力し、しかるのちに
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] e
yuuji@46:         @dots{} end 補完
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@52: とすることで、現在開いている環境名で \end{} が補われます。
yuuji@20: 
yuuji@46: @node Accent mark completion, Image completion, end補完, Completion
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section アクセント記号補完
yuuji@46: @cindex アクセント記号補完[あくせんときこうほかん]
yuuji@20: @cindex prefix a
yuuji@46: @cindex 欧文[おうふん]
yuuji@20: 
yuuji@20:   欧文のアクセント記号(@code{\`@{o@}}など)を入力する時は、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] a
yuuji@46:         @dots{} アクセント記号入力
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: を押すと、ミニバッファに
yuuji@20: 
yuuji@20: @example
yuuji@49:         1:` 2:' 3:^ 4:" 5:~ 6:= 7:. u v H t c d b
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: というメニューが出て来るので、数字、または対応する記号/英字を入力
yuuji@20: して下さい。すると編集バッファに、
yuuji@20: 
yuuji@20: @example
yuuji@49:         \`@{@}
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: があらわれ、カーソルが@{@}内に位置するので、さらに一文字入力する事で、
yuuji@20: 
yuuji@20: @example
yuuji@49:         \`@{o@}
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: が完成され、カーソルは@{@}の外に戻ります。
yuuji@20: 
yuuji@46: @node Image completion, Greek letter completion, Accent mark completion, Completion
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section 数式記号イメージ補完
yuuji@46: @cindex  数式記号イメージ補完[すうしききこういめえしほかん]
yuuji@46: @cindex イメージ補完[いめえしほかん]
yuuji@20: @cindex ;
yuuji@46: @cindex 数式モード[すうしきもおと]
yuuji@46: @cindex 矢印[やしるし]
yuuji@46: @cindex Σ[しくま]
yuuji@20: @cindex leftarrow
yuuji@46: @cindex ∞[むけんたい]
yuuji@20: 
yuuji@20:   主に数式モードで使用される、矢印やΣなどの記号を擬似的に表現するキー入力
yuuji@20: で、La@TeX{} コマンドを入力できます。これは野鳥自身の「数式モード」でのみ
yuuji@20: 動作します。野鳥はカーソルが@TeX{}の数式環境の中にある時に@kbd{;}や、
yuuji@52: @kbd{:}に特殊な機能を持たせます。
yuuji@20: 
yuuji@20:   さて、例えば、←(leftarrow)をASCII文字だけで表現する場合、一般的には「<-」
yuuji@20: のようにしますが、これを利用して、数式記号イメージ入力モードで 
yuuji@20: @code{\leftarrow}を入力するには、@kbd{;}(セミコロン)を打ってから@kbd{<-}と
yuuji@20: 入力します。同様に、長い矢印←-(long-leftarrow) をASCII文字だけで表現する
yuuji@20: 場合「<--」とするので、@code{\longleftarrow}を入力するためには、@kbd{;<--}
yuuji@20: と入力します。あるいは無限大記号をASCII文字だけで表現する時は「oo」のよう
yuuji@20: にすることから、@code{\infty} を入力する時は、@kbd{;oo}とキー入力します。
yuuji@20: 
yuuji@20:   これらの操作をまとめると次のようになります。
yuuji@20: 
yuuji@20: @example
yuuji@20: INPUT                   入力される La@TeX{} コマンド
yuuji@20: ; < -                   @code{\leftarrow}
yuuji@20: ; < - -                 @code{\longleftarrow}
yuuji@20: ; < - - >               @code{\longleftrightarrow}
yuuji@20: ; o                     @code{\circ}
yuuji@20: ; o o                   @code{\infty}
yuuji@20: @end example
yuuji@20: 
yuuji@20: 
yuuji@20: @noindent 
yuuji@20:   いずれの場合も、イメージ入力を行っている途中で望みのものがバッファ
yuuji@20: に表示されたなら、そこでイメージ入力を止めて次の編集動作に移っても
yuuji@20: 構いません。
yuuji@20: 
yuuji@49: @cindex ;自身[;ししん]
yuuji@49:   数式環境中で@samp{;}自身を入力するには@kbd{;;}のようにします。イメージ
yuuji@20: 入力の途中でTABを押すと、それまで入力した文字で始まるもの一覧が表示されま
yuuji@20: す。ここで目的の La@TeX{} コマンドまでカーソルを移動し再度TABを押すことで
yuuji@20: その La@TeX{} コマンドがバッファに挿入されます。
yuuji@20: 
yuuji@20:   どのキー入力にどの記号が対応しているか全て知りたい時は、@kbd{;}を押した
yuuji@49: 直後にTABを押してください。以下の例は、@kbd{;<}と押した後にTABを押したもの
yuuji@49: です。
yuuji@20: 
yuuji@20: @example
yuuji@20: KEY             LaTeX sequence          sign
yuuji@20: <               \leq                    ≦
yuuji@20: <<              \ll                     《
yuuji@20: <-              \leftarrow              ←
yuuji@20: <=              \Leftarrow              <=
yuuji@20: @end example
yuuji@20: 
yuuji@20: 左から[入力キー]、[対応する La@TeX{} コマンド]、[(擬似)記号図示]、と
yuuji@20: いう順でメニューが出て来るので、よく使うものを覚えておくと良いでしょ
yuuji@20: う。ものによってはASCII文字で表現することが困難なので、あまり覚え
yuuji@20: やすいキー並びではないものがあるでしょうから、そのような場合は 
yuuji@20: \maketitle 型補完で入力するか、以下に述べる対応表の設定を行って単
yuuji@20: 純なキー並びのものを設定すると良いでしょう。
yuuji@20: 
yuuji@20:   入力キーと    La@TeX{} コマンド、記号の対応表を個人的に設定したい場合は 
yuuji@20: Emacs-Lisp 変数 @code{YaTeX-math-sign-alist-private}  に定義してください。
yuuji@20: その内容とデフォルトのものを合わせたものが対応表として使用されます(private
yuuji@20: の方が優先される)。なお、この変数の構造については @file{yatexmth.el}  を参
yuuji@20: 照してください。
yuuji@20: @cindex YaTeX-math-sign-alist-private
yuuji@20: 
yuuji@46: @node Greek letter completion,  , Image completion, Completion
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section ギリシャ文字補完
yuuji@46: @cindex ギリシャ文字補完[きりしやもしほかん]
yuuji@52: @cindex :
yuuji@20: 
yuuji@52:   もう一つ、数式環境中で@kbd{:}を押すとギリシャ文字入力モードに入ります。
yuuji@52: @kbd{:}を押した直後に@kbd{a}を押すと@code{\alpha}が、@kbd{g} を押すと 
yuuji@20: @code{\gamma}が、などアルファベットに対応したギリシャ文字が挿入されます。
yuuji@52: 操作方法は;の数式記号補完とまったく同じです。まずは@kbd{:}の直後に
yuuji@49: TABを押してどのアルファベットにどのギリシャ文字が対応しているか調べてみて
yuuji@20: ください。
yuuji@20: 
yuuji@52:   @kbd{;}と@kbd{:}を数式環境中で押しているにもかかわらず、イメージ補完が働
yuuji@20: かない場合は、@kbd{C-u ;}のように universal-argument をつけてキーを押すこ
yuuji@20: とにより、強制的にイメージ補完に入ることができます。また、この時にどのよう
yuuji@20: な状態で数式環境内判定に失敗したかをご連絡下さい。
yuuji@20: 
yuuji@49: @node Local dictionary, Commenting out, Completion, Top
yuuji@49: @comment  node-name,  next,  previous,  up
yuuji@49: @chapter ローカル辞書
yuuji@49: @cindex ローカル辞書[ろおかるししよ]
yuuji@49: @cindex .yatexrc
yuuji@49: 
yuuji@49:   補完入力用の候補は三種類の辞書から構成されています。一つは
yuuji@49: @file{yatex.el}に組み込まれた「標準辞書」、もう一つはユーザが個人的に常用
yuuji@49: するコマンドを保存する「ユーザ辞書」、そしてもうひとつはあるディレクトリで
yuuji@49: のみ有効なコマンドを保存する「ローカル辞書」です。
yuuji@49: 
yuuji@49:   補完入力時に新しい単語を入れた場合に、その単語をどの辞書に入れるか聞いて
yuuji@49: 来ます。
yuuji@49: 
yuuji@49: @example
yuuji@51:   `foo' is not in table. Register into: U)serDic L)ocalDic N)one D)iscard
yuuji@49: @end example
yuuji@49: 
yuuji@49: @noindent 
yuuji@49: というプロンプトに対し、@kbd{u}と答えると「ユーザ辞書」を、@kbd{l}と答える
yuuji@51: とローカル辞書を更新し、@kbd{n}と答えると辞書ファイルは更新せず現在のEmacs
yuuji@51: セッションのみ有効な単語とし、@kbd{d}と答えると新たな単語を学習せずに捨て
yuuji@51: ることになります。
yuuji@49: 
yuuji@49:   もし、ローカル辞書の機能はいらず、全てユーザ辞書の更新のみでよいと言う場
yuuji@49: 合には@file{~/.emacs}などで、
yuuji@49: @cindex YaTeX-nervous
yuuji@49: 
yuuji@49: @lisp
yuuji@49:         (setq YaTeX-nervous nil)
yuuji@49: @end lisp
yuuji@49: 
yuuji@49: @noindent 
yuuji@49: として下さい。
yuuji@49: 
yuuji@49: @node Commenting out, Cursor jump, Local dictionary, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter コメントアウト
yuuji@20: @cindex コメントアウト[こめんとあうと]
yuuji@20: @cindex prefix <
yuuji@20: @cindex prefix >
yuuji@20: @cindex prefix .
yuuji@20: @cindex prefix ,
yuuji@20: 
yuuji@20: 
yuuji@20:   La@TeX{}の編集には試行錯誤がつきものです。ある部分を一括でコメントアウト
yuuji@20: したり、コメントを外したりしたいことがあります。
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] >
yuuji@46:         @dots{} リジョンを % でコメントアウト
yuuji@20: @item [prefix] <
yuuji@46:         @dots{} リジョンの % のコメントを外す
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: は、あらかじめ設定したリジョンに対しての操作、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] .
yuuji@46:         @dots{} 現在のパラグラフをコメントアウト
yuuji@20: @item [prefix] ,
yuuji@46:         @dots{} 現在のパラグラフのコメントを外す
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: は、カーソルの位置するパラグラフ全体に対しての操作です。なお、ここでいう
yuuji@20: 「パラグラフ」は (@code{mark-paragraph}) 関数によりマークされる範囲を指し
yuuji@20: ます(標準設定で@kbd{ESC h}にバインドされている)。なお、既に@code{%}でコメ
yuuji@20: ントアウトされているパラグラフに対して繰り返しパラグラフのコメントを使用し
yuuji@20: た場合の動作は保証しませんので御注意ください。
yuuji@20: 
yuuji@20:   さて、文章に対してだけでなく、時には@code{\begin}, @code{\end} 自体に対
yuuji@20: してもコメントアウトの操作をしたいときがあります。このようなときは、
yuuji@20: @code{\begin@{@}} あるいは @code{\end@{@}} の行にカーソルを合わせ、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] >
yuuji@46:         @dots{} @code{\begin@{@}}～@code{\end@{@}} 全てコメントアウト
yuuji@20: @item [prefix] <
yuuji@46:         @dots{} @code{\begin@{@}}～@code{\end@{@}} 全てコメントを外す
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: とすることで、@code{\begin～\end}で囲まれる環境全てに対してコメント操作し、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] .
yuuji@46:         @dots{} @code{\begin@{@}} と @code{\end@{@}} をコメントアウト
yuuji@20: @item [prefix] ,
yuuji@46:         @dots{} @code{\begin@{@}} と @code{\end@{@}} のコメントを外す
yuuji@20: @end table
yuuji@20: 
yuuji@20: は、対応する @code{\begin} と @code{\end} 2行だけを、コメント操作の対象と
yuuji@20: します。リジョンをコメントアウトしようとして、マークを設定したのちにカーソ
yuuji@20: ルを移動し@kbd{[preifx] >} を押してもカーソルが @code{\begin@{@}} の上にあ
yuuji@20: ると@code{\begin@{@}}～@code{\end@{@}}モードでコメント機能が働いてしまうの
yuuji@20: で注意して下さい。
yuuji@20: 
yuuji@46: @node Cursor jump, Modifying/Deleting, Commenting out, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter カーソルジャンプ
yuuji@46: @cindex カーソルジャンプ[かあそるしやんふ]
yuuji@20: @cindex prefix g
yuuji@20: 
yuuji@51: @section 対応オブジェクトへのジャンプ
yuuji@51: 
yuuji@48:   文書中のいろいろな場所で
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] g
yuuji@46:         @dots{} 対応するオブジェクトにジャンプ
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@48: を押すことにより、カーソル位置のLa@TeX{}コマンドに対応する場所にジャンプ
yuuji@48: します。対応関係が存在すると解釈されるコマンドには以下のものがあります。
yuuji@48: 
yuuji@49: @itemize @bullet
yuuji@48: @item @code{\begin@{@}}←→@code{\end@{@}}
yuuji@48: @item @code{%#BEGIN}←→@code{%#END}
yuuji@48: @item @code{\label@{@}}←→@code{\ref@{@}}
yuuji@48: @item @code{\include(\input)}→対応するファイル
yuuji@48: @item @code{\bibitem@{@}}←→@code{\cite@{@}}
yuuji@49: @end itemize
yuuji@48: 
yuuji@49:   @code{\begin@{@}} か @code{\end@{@}} の行で@kbd{[prefix] g}を押すことに
yuuji@49: より、対応する@code{end/begin}の行にジャンプします。もちろん対応するものが
yuuji@49: ない場合はエラーになります。またこれは、領域固定のための @code{%#BEGIN} と 
yuuji@49: @code{%#END} のペアに対しても同様に動作します。なお、@code{label/ref}や
yuuji@49: @code{cite/bibitem}対応するものが別ファイルにある時は、ジャンプ先となるファ
yuuji@51: イルがオープンされていなければなりません。@xref{%#記法}
yuuji@51: メインの .tex ファイルの @code{\include{chap1}} などにカーソルを合わせ、
yuuji@51: @kbd{[prefix] g} を押すと、@file{chap1.tex} にジャンプします。
yuuji@20: 
yuuji@51: また、
yuuji@51: 
yuuji@51: @table @kbd
yuuji@51: @item [prefix] 4 g
yuuji@51:         @dots{} 別ウィンドウで対応オブジェクトにジャンプ
yuuji@51: @end table
yuuji@51: 
yuuji@51: @noindent
yuuji@51: を押すと、対応するオブジェクトへのジャンプを別ウィンドウで行います。ただし、
yuuji@51: この機能は @code{begin/end}, @code{%#BEGIN/%#END} 間のジャンプに対しては
yuuji@51: (意味がないと思われるので)機能しないので注意してください。
yuuji@51: 
yuuji@51: @section メインファイルへのジャンプ
yuuji@51: 
yuuji@20: @file{chap1.tex}のようなサブファイルで、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] ^
yuuji@46:         @dots{} メインファイルにジャンプ
yuuji@20: @item [prefix] 4 ^
yuuji@46:         @dots{} 別ウィンドウでメインファイルにジャンプ
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: を押すと、メインファイルの編集バッファに切替えます。もし、メインファイルを
yuuji@20: オープンしていない場合は、カレントディレクトリから探して自動的にオープンし
yuuji@51: ます。
yuuji@51: 
yuuji@51: @section 環境を単位としたジャンプ
yuuji@51: 
yuuji@51: さらに現在の環境を単位として機能するコマンドに以下のものがあります。
yuuji@20: 
yuuji@49: @cindex 環境の先頭へ[かんきようのせんとうへ]
yuuji@49: @cindex 環境の末尾へ[かんきようのまつひへ]
yuuji@49: @cindex 環境をマーク[かんきようをまあく]
yuuji@49: @cindex M-C-a
yuuji@49: @cindex M-C-e
yuuji@49: @cindex M-C-@@
yuuji@20: @table @kbd
yuuji@20: @item M-C-a
yuuji@46:         @dots{} 環境の先頭(@code{\begin})へジャンプ
yuuji@20: @item M-C-e
yuuji@46:         @dots{} 環境の末尾(@code{\end})へジャンプ
yuuji@20: @item M-C-@@
yuuji@46:         @dots{} 環境全体をマーク
yuuji@20: @end table
yuuji@20: 
yuuji@20: 上記のコマンドは通常の@kbd{[prefix]}キーではなく@kbd{META}キーをプリフィク
yuuji@20: スとして機能するのでご注意下さい。
yuuji@20: 
yuuji@48:   
yuuji@48: 
yuuji@51: @node Modifying/Deleting, Filling, Cursor jump, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter 変更/削除
yuuji@46: @cindex 変更/削除[へんこう/さくしよ]
yuuji@20: @cindex prefix c
yuuji@20: @cindex prefix k
yuuji@20: 
yuuji@20:   既に入力されている La@TeX{} コマンドの変更/削除のために以下の機能が用意
yuuji@20: されています。
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] c
yuuji@46:         @dots{} カーソル位置の La@TeX{} コマンドの変更
yuuji@20: @item [prefix] k
yuuji@46:         @dots{} カーソル位置の La@TeX{} コマンドの削除
yuuji@20: @end table
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: これらのコマンドは、コマンドを起動する場所によって動作を決定するので注意し
yuuji@20: て下さい。
yuuji@20: 
yuuji@49: @menu
yuuji@49: * Changing LaTeX command::      La@TeX{} コマンドの変更
yuuji@49: * Killing LaTeX command::       La@TeX{} コマンドの削除
yuuji@49: @end menu
yuuji@49: 
yuuji@49: @node Changing LaTeX command, Killing LaTeX command, Modifying/Deleting, Modifying/Deleting
yuuji@49: @comment  node-name,  next,  previous,  up
yuuji@49: @section La@TeX{} コマンドの変更
yuuji@49: 
yuuji@49: 変更したい La@TeX{} コマンドにカーソルを合わせて @kbd{[prefix] c} 
yuuji@49: を押すとそのコマンドを補完入力などを用いて手軽に変えることができます。
yuuji@49: @kbd{[prefix] c} で変更できるコマンドには以下のものがあります。
yuuji@49: 
yuuji@49: @itemize
yuuji@49: @item @code{begin/end} の環境名
yuuji@49: @item section型コマンドのコマンド名
yuuji@49: @item section型コマンドの引数
yuuji@49: @item section型コマンドのオプションパラメータ([]で囲まれたもの)
yuuji@49: @item large型コマンド
yuuji@52: @item (イメージ補完で入力可能な)数式モード専用のmaketitle型コマンド
yuuji@49: @end itemize
yuuji@49: 
yuuji@49:   変えたいsection型コマンドの引数がさらに La@TeX{} コマンドを含む場合は、
yuuji@49: その引数を囲む中括弧の上で @kbd{[prefix] c} を押すことで中のコマンドを変更
yuuji@49: 対象判定から除外することができます。
yuuji@49: 
yuuji@49: @cindex 環境名の変更[かんきようめいのへんこう]
yuuji@49: 
yuuji@49: @node Killing LaTeX command,  , Changing LaTeX command, Modifying/Deleting
yuuji@49: @comment  node-name,  next,  previous,  up
yuuji@49: @section La@TeX{} コマンドの削除
yuuji@49: 
yuuji@49: @kbd{[prefix] k} は起動する位置により
yuuji@20: 次のような動作を行います。
yuuji@46: @cindex 環境の削除[かんきようのさくしよ]
yuuji@20: 
yuuji@20: 
yuuji@20: @example
yuuji@20: 起動位置                        動作
yuuji@49: \begin, \endの行                @code{\begin\end}ペアの削除
yuuji@49: %#BEGIN, %#END の行             %#BEGIN,%#ENDペアの削除
yuuji@20: section型コマンドの上(中)       section型コマンドの削除
yuuji@20: フォント指定括弧の上            フォント指定の削除
yuuji@20: 括弧の上                        対をなす括弧の削除
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@49: @code{\begin, \end} および @code{%#BEGIN, %#END} を削除する場合、
yuuji@49: @code{\begin, \end} や @code{%#BEGIN, %#END} の存在する行は
yuuji@49: まるごと削除されるので、それらの一行に @code{\begin} などを二つ以上連ねて
yuuji@49: 書かないように注意してください。
yuuji@20: 上記のものはすべて本文を囲う「容器」を削除するように働きますが、
yuuji@20: universal-argument (@kbd{C-u}) を打った後で@kbd{[prefix] k}をタイプすると、
yuuji@20: それぞれの「容器」に含まれる「中身」も一気に削除します。以下の例を参考にし
yuuji@20: て下さい。
yuuji@20: 
yuuji@20: @example
yuuji@46:         元のテキスト:                   [prefix] k      C-u [prefix] k
yuuji@46:         本文\footnote@{脚注@}です。     本文脚注です。  本文です。
yuuji@46:                 ↑(カーソル位置)
yuuji@20: @end example
yuuji@20: 
yuuji@51: @node Filling, Includeonly, Modifying/Deleting, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@51: @chapter 桁揃え
yuuji@51: @cindex 桁揃え[けたそろえ]
yuuji@51: 
yuuji@51: @section itemの桁揃え
yuuji@51: @cindex itemなどの桁揃え[itemなとのけたそろえ]
yuuji@20: @cindex prefix i
yuuji@20: 
yuuji@20:   itemize 環境中にある@code{\item}の項目(文章)が複数行に渡る場合に、項
yuuji@20: 目の先頭を桁揃えしたい場合には、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] i
yuuji@46:         @dots{} itemの桁揃え
yuuji@20: @end table
yuuji@20: 
yuuji@49: @cindex NTT-jTeX[えぬていいていいしえいてつく]
yuuji@20: @noindent 
yuuji@20: によって、その item のインデントの深さに応じて fill されます。なお、NTT
yuuji@20: jTeX を使用している場合には、Lisp 変数@code{NTT-jTeX}を@code{t}にセットし
yuuji@20: て下さい。
yuuji@20: 
yuuji@49: @cindex YaTeX-item-regexp
yuuji@20:   このとき、変数@code{YaTeX-item-regexp}の値(標準では @code{"\\\\item"})を
yuuji@20: 項目指定コマンドの正規表現として検索に使用します。itemize 環境で、独自のコ
yuuji@20: マンドを定義して項目を列挙している場合(例えば@code{\underlineitem})は、
yuuji@20: @file{~/.emacs} で次のように指定して下さい。
yuuji@20: 
yuuji@20: @lisp
yuuji@46:         (setq YaTeX-item-regexp
yuuji@46:               "\\(\\\\item\\)\\|\\(\\\\underlineitem\\)")
yuuji@20: @end lisp
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: この変数の指定の仕方がよく分からない場合は、独自の項目列挙コマンドの名前を
yuuji@20: @code{@code{"\item"}で始まるものにして下さい(例えば"\itembf"})。
yuuji@20: 
yuuji@51:   @kbd{[prefix] i} では@code{\item} を「ハングインデント」に整形します。も
yuuji@51: し@code{\item}とその説明用パラグラフを切り離す時は通常の
yuuji@51: @kbd{M-q}(他のモードではfill-paragraphが割り当てられている)を使ってくださ
yuuji@51: い。(つまり以下のような場合:)
yuuji@51: 
yuuji@51: @example
yuuji@51: ハングインデント:
yuuji@51:        >\item[ほげほげ] 英語では、特に意味のない単語を `foo' であらわしま
yuuji@51:        >                すが、これの日本語版ともいえる単語が「ほげほげ」
yuuji@51:        >                です。
yuuji@51: 通常インデント:
yuuji@51:        > \item へろへろ
yuuji@51:        >
yuuji@52:        >       「ほげほげ」をでたらめが単語として使った時に、第2のでたら
yuuji@52:        >       めな単語として「へろへろ」が使われることが多いようです。
yuuji@51: @end example
yuuji@51: 
yuuji@52:   上の通常インデントの場合、説明パラグラフのインデントは \item の見出しと
yuuji@52: 同じ深さとする必要があります。ただし、@kbd{M-q}を行の最初の非空白文字の位
yuuji@52: 置で押すことにより深さを変えることができます(後述)。
yuuji@51: 
yuuji@51: @section パラグラフの桁揃え
yuuji@51: @cindex パラグラフの桁揃え[はらくらふのけたそろえ]
yuuji@51: @cindex M-q
yuuji@51: 
yuuji@51:   パラグラフの桁揃え(fill)は、基本的に通常通り機能しますが、verbatim環境や、
yuuji@51: tabular環境など桁揃えをすると悲惨な状況になるような環境中では機能しません。
yuuji@51: また、\verb で括ってあるものは決して行分割されません(変数 
yuuji@51: @code{YaTeX-verb-regexp} で制御) )。さらに、一時的にインデントの深さを変え
yuuji@51: てある箇所では、そのインデントの先頭で@kbd{M-q}を押すことにより 
yuuji@51: fill-prefix をいちいち変更しなくて桁揃えができます。
yuuji@51: 
yuuji@51: 
yuuji@51: @node Includeonly, What column, Filling, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter 勝手にincludeonly
yuuji@46: @cindex 勝手にincludeonly[かつてにincludeonly]
yuuji@20: @cindex includeonly
yuuji@20: 
yuuji@20:   ファイルを分割して文章を入力している時には、メインファイル中に
yuuji@20: 
yuuji@20: @example
yuuji@46:         \includeonly@{現在編集中のファイル名@}
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: のように書いておくことで、タイプセットの時間を節約できますが、ちょっと他の
yuuji@20: ファイルを手直ししたい時には
yuuji@46: @cindex 他のファイルの手直し[ほかのふあいるのてなおし]
yuuji@20: 
yuuji@20: @example
yuuji@46:         \includeonly@{ちょっと手直ししたいファイル名@}
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@49: と書き直さなければならず手間がかかります。野鳥では現在編集しているファイル
yuuji@49: 名がメインファイルの@code{\includeonly}にない場合には自動的にこれを検出し、
yuuji@49: 次の指示を仰ぎます。
yuuji@20: 
yuuji@20: @example
yuuji@46:         A)dd R)eplace %)comment?
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: 現在編集中のファイルを @code{\includeonly} のリストに加えたい時には@kbd{a}
yuuji@20: を、現在編集中のファイルだけを @code{\includeonly} にしたい時は@kbd{R}を、
yuuji@20: @code{\includeonly} の行をコメントアウトして無効化したい時には、@kbd{%}を
yuuji@20: それぞれ押して下さい。
yuuji@20: 
yuuji@49: @node What column, Intelligent newline, Includeonly, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@49: @chapter ここはどこ?
yuuji@49: @cindex ここどこ?[ここはとこ]
yuuji@20: @cindex prefix &
yuuji@46: @cindex 複雑なtabular[ふくさつなtabular]
yuuji@20: 
yuuji@20:   項目数の多い tabular などをたくさん書いていると下の方の行で、いま書いて
yuuji@20: いる桁がどこに対応するのかわからなくなってしまうことがあります。例えば、以
yuuji@20: 下のような tabular において、
yuuji@20: 
yuuji@20: @example
yuuji@46:         \begin@{tabular@}{|c|c|c|c|c|c|c|c|}\hline
yuuji@46:          氏名&所属&〒&住所&電話&FAX&帰省先&帰省先電話\\ \hline
yuuji@46:          矢上二郎 & 6 & 223 & 横浜市港北区日吉 & xxx-yyy &
yuuji@46:                 zzz-www & トンガ & 9876-54321 \\
yuuji@46:          日吉小僧 & 2 & \multicolumn@{2@}@{c|@}@{教えない@}
yuuji@46:                 &&&(???)
yuuji@46:          \\ \hline
yuuji@46:         \end@{tabular@}
yuuji@20: @end example
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: (???)の部分がどの項目なのかすぐに判断するのは難しいでしょう。こんな時は、
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] &
yuuji@46:         @dots{} 現在のカラム表示
yuuji@20: @end table
yuuji@46: @cindex 現在のカラム表示[けんさいのからむひようし]
yuuji@20: 
yuuji@20: を押すとカーソル位置のカラムがどの項目に該当するかをミニバッファに表示しま
yuuji@20: す。tabular/array環境の第1行目を項目名の並びとみなして対応するものを探しま
yuuji@49: す。もし項目名として別のものを表示して欲しい場合は、行頭を@code{%}にしてダ
yuuji@49: ミーの項目並びを作っておくと良いでしょう。
yuuji@20: 
yuuji@52: @node Intelligent newline, Changing mode of YaTeX, What column, Top
yuuji@28: @comment  node-name,  next,  previous,  up
yuuji@28: @chapter おまかせ改行
yuuji@28: @cindex おまかせ改行[おまかせかいぎょう]
yuuji@28: @cindex &入力[&にゅうりょく]
yuuji@28: @cindex prefix &
yuuji@28: 
yuuji@28:   tabular[*], array, itemize, enumerate, tabbing 環境で
yuuji@28: 
yuuji@28: @table @kbd
yuuji@28: @item ESC RET
yuuji@46:         @dots{} おまかせ改行
yuuji@28: @end table
yuuji@28: 
yuuji@28: @noindent 
yuuji@28: を押すと、その環境に応じた行エントリを次の行に挿入します。例えば、tabular
yuuji@49: 環境では、その環境のカラム数に対応した個数の @code{&} に加え、行末の 
yuuji@28: @code{\\} を入れます。この時それ以前に @code{\hline} があればそれも付け加
yuuji@28: えます。環境とそれに応じて自動入力するものの対応は以下のようになります。
yuuji@28: 
yuuji@28: @itemize
yuuji@28: @item @code{tabular}, @code{tabular*}, @code{array}
yuuji@28: 
yuuji@46:         カラム数-1 だけの @code{&} と @code{\\}。必要に応じて @code{\hline}
yuuji@28: 
yuuji@28: @item @code{tabbing}
yuuji@28: 
yuuji@46:         一行目で定義している @code{\=} と同じ個数の @code{\>}。
yuuji@28: 
yuuji@28: @item @code{itemize}, @code{enumerate}, @code{description}, @code{list}
yuuji@28: 
yuuji@46:         @code{\item} または @code{item[]}
yuuji@28: @end itemize
yuuji@28: 
yuuji@28:   tabular 環境の例のように、本機能は各環境の一行目の内容を参考にして動作す
yuuji@28: るので、なるべく二行目以降で呼び出すようにしてください。
yuuji@28: 
yuuji@28:   もし、その他の環境、例えば @code{foo}、に対して@code{おまかせ改行}を動作
yuuji@28: させたい時は、@code{YaTeX-intelligent-newline-foo} という名前の関数を定義
yuuji@28: します。定義した関数は、現在の行に改行を挿入した直後の行頭の位置で呼ばれま
yuuji@28: す。関数 @code{YaTeX-indent-line} を呼ぶと現在の環境のネストに応じた深さに
yuuji@28: インデントされるので、これを呼んでから何かを挿入するようなコードを書くとよ
yuuji@28: いでしょう。関数 @code{YaTeX-intelligent-newline-itemize} の定義などを参考
yuuji@28: にしてください。
yuuji@28: 
yuuji@52: @node Changing mode of YaTeX, Online help, Intelligent newline, Top
yuuji@52: @comment  node-name,  next,  previous,  up
yuuji@52: @chapter 野鳥の動作モード切り替え
yuuji@52: @cindex モード切り替え[もーときりかえ]
yuuji@52: @cindex prefix w
yuuji@52: 
yuuji@52: @table @kbd
yuuji@52: @item [prefix] w
yuuji@52:         @dots{} 野鳥動作モード切り替えメニュー
yuuji@52: @end table
yuuji@52: 
yuuji@52: @noindent
yuuji@52: で野鳥自身の動作を決定する以下のモードを切り替えます。
yuuji@52: 
yuuji@52: @itemize @bullet
yuuji@52: @item 修正モード
yuuji@52: @item 野鳥数式モード
yuuji@52: @end itemize
yuuji@52: 
yuuji@52: 修正モードは、開き括弧入力時の処理をコントロールし、修正モードONの時は開き
yuuji@52: 括弧の入力は開き括弧のみの入力になり、修正モードOFFの時は開き括弧の入力だ
yuuji@52: けで閉じ括弧まで入力します。デフォルト(起動時)の設定は@emph{OFF}です。
yuuji@52: 
yuuji@52:   野鳥数式モードは、変数 @code{YaTeX-auto-math-mode} が @code{nil} の時の
yuuji@52: み有効で、このとき@kbd{;}や@kbd{:}を押した時(@ref{Image completion}参照)に、
yuuji@52: どのようなイメージ補完を機能させるか、通常のキーとして機能させるかを手動で
yuuji@52: 切り替えます。自動判定が遅いマシンでは@code{YaTeX-auto-math-mode}
yuuji@52: @code{nil}にセットし、野鳥数式モードを手動で切り替えると良いでしょう。
yuuji@52: 
yuuji@52: 
yuuji@52: @node Online help, Cooperation with other packages, Changing mode of YaTeX, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter オンラインヘルプ
yuuji@46: @cindex オンラインヘルプ[おんらいんへるふ]
yuuji@20: @cindex apropos
yuuji@46: @cindex キーワード検索[きいわあとけんさく]
yuuji@20: @cindex prefix ?
yuuji@20: @cindex prefix /
yuuji@20: 
yuuji@20:   使おうとする La@TeX{} コマンドの用法がよく分からない時は、オンラインヘル
yuuji@20: プをひきましょう。ヘルプに関するキーには以下のものがあります。
yuuji@20: 
yuuji@20: @table @kbd
yuuji@20: @item [prefix] ?
yuuji@46:         @dots{} オンラインヘルプ
yuuji@20: @item [prefix] /
yuuji@46:         @dots{} オンラインapropos
yuuji@20: @end table
yuuji@20: 
yuuji@20: @section オンラインヘルプ
yuuji@46: @cindex グローバルヘルプ[くろおはるへるふ]
yuuji@46: @cindex プライベートヘルプ[ふらいへえとへるふ]
yuuji@49: @cindex YaTeX-help-file
yuuji@49: @cindex YaTeX-help-file-private
yuuji@20: 
yuuji@20:   「オンラインヘルプ」は、一般的な La@TeX{} コマンド(デフォルトでカーソル
yuuji@20: 位置のコマンド)に対する説明を隣のバッファに表示します。この時参照されるヘ
yuuji@20: ルプ用ファイルには「グローバルヘルプ」と「プライベートヘルプ」の二種類があ
yuuji@20: り、前者は La@TeX{} の標準コマンドの主なものの説明を含むファイルで、変数
yuuji@20: @code{YaTeX-help-file}の値で指定されます。このファイルは通常公共の場所(デ
yuuji@20: フォルトで@code{$EMACSEXECPATH})に置かれ、誰もがその内容を更新できるように
yuuji@20: 全員に書き込み権が与えられるべきものです。後者は、非標準もしくは個人的なマ
yuuji@20: クロ定義に関する説明が書かれているファイルで、変数
yuuji@20: @code{YaTeX-help-file-private}の値で指定されます。こちらはユーザのホームディ
yuuji@20: レクトリの下などに置かれます。
yuuji@20: 
yuuji@20: @section オンラインapropos
yuuji@20: 
yuuji@20:   「オンラインapropos」は GNU Emacs の apropos と同様、ユーザが指定したキー
yuuji@20: ワードを説明文に含む項目すべてを隣のバッファに表示します。
yuuji@20: 
yuuji@20:   もし、調べようとしたLa@TeX{}コマンドに対する説明がヘルプファイル中に見つ
yuuji@20: からなかった場合は、説明文の入力を求めてくるので、可能であれば参考書などを
yuuji@20: 調べてそのコマンドの説明を入力してください。もし、なにか標準的なコマンドに
yuuji@20: 対する説明を書いたならばぜひ私までその説明をお送り下さい。次回の配布に含め
yuuji@20: たいと思います。
yuuji@20: 
yuuji@53: @node Inclusion hierarchy browser
yuuji@53: @comment  node-name,  next,  previous,  up
yuuji@53: @chapter インクルード構造ブラウザ
yuuji@53: @cindex インクルード構造[いんくるうとこうそう]
yuuji@53: @cindex prefix d
yuuji@53: 
yuuji@53: 複数のファイルに分割しているドキュメントを書いている場合、
yuuji@53: 
yuuji@53: @table @kbd
yuuji@53: @item [prefix] d
yuuji@53:         @dots{} インクルード構造ブラウズ
yuuji@53: @end table
yuuji@53: 
yuuji@53: @noindent
yuuji@53: を押すと、そのドキュメントの親ファイルを聞いて来ます。ここで全てのファイル
yuuji@53: の親となるファイル(デフォルトが示されているので大抵はRETのみ)を入力すると
yuuji@53: インクルードしている全てのファイルを解析し、インクルード状況を視覚的に表示
yuuji@53: します。このバッファでは以下のキー操作が有効です。
yuuji@53: 
yuuji@53: @table @kbd
yuuji@53: @item n
yuuji@53:         @dots{} 次の行に移動し対応するファイルを隣のバッファに表示
yuuji@53: @item p
yuuji@53:         @dots{} 上の行に移動し対応するファイルを隣のバッファに表示
yuuji@53: @item N
yuuji@53:         @dots{} 同じインクルードレベルの次のファイルに移動
yuuji@53: @item P
yuuji@53:         @dots{} 同じインクルードレベルの前のファイルに移動
yuuji@53: @item j
yuuji@53:         @dots{} 次の行に移動
yuuji@53: @item k
yuuji@53:         @dots{} 上の行に移動
yuuji@53: @item u
yuuji@53:         @dots{} 一代親にあたるファイルに移動
yuuji@53: @item .
yuuji@53:         @dots{} カーソル位置のファイルを隣のバッファに表示
yuuji@53: @item SPC
yuuji@53:         @dots{} 隣のバッファの対応ファイルをスクロールアップ
yuuji@53: @item DEL, b
yuuji@53:         @dots{} 隣のバッファの対応ファイルをスクロールダウン
yuuji@53: @item <
yuuji@53:         @dots{} 隣のバッファの対応ファイルの先頭を表示
yuuji@53: @item >
yuuji@53:         @dots{} 隣のバッファの対応ファイルの末尾を表示
yuuji@53: @item '
yuuji@53:         @dots{} (@kbd{<}や@kbd{>}の後で)元の表示位置に戻る
yuuji@53: @item RET, g
yuuji@53:         @dots{} カーソル位置のファイルを隣のバッファでオープン
yuuji@53: @item mouse-2
yuuji@53:         @dots{} RETと同じ(ウィンドウ使用時のみ)
yuuji@53: @item o
yuuji@53:         @dots{} 隣のウィンドウに移動
yuuji@53: @item 1
yuuji@53:         @dots{} 他のウィンドウを消す
yuuji@53: @item -
yuuji@53:         @dots{} ブラウズウィンドウを小さくする
yuuji@53: @item +
yuuji@53:         @dots{} ブラウズウィンドウを大きくする
yuuji@53: @item ?
yuuji@53:         @dots{} ヘルプ表示
yuuji@53: @item q
yuuji@53:         @dots{} 表示前の状態に戻る
yuuji@53: @end table
yuuji@53: 
yuuji@53:   ただし、隣のウィンドウのファイルの内容を表示する機能に関しては、対応する
yuuji@53: ファイルをクローズしてしまうとうまく働きませんのでご注意ください。
yuuji@53: 
yuuji@46: @node Cooperation with other packages, Customizations, Online help, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter 他パッケージとの連携
yuuji@46: @cindex  他パッケージとの連携[たはつけえしとのれんけい]
yuuji@20: 
yuuji@20: @section gmhist
yuuji@20: @cindex gmhist
yuuji@46: @cindex コマンドヒストリ[こまんとひすとり]
yuuji@20: @cindex ヒストリ[ひすとり]
yuuji@20: 
yuuji@20:   @file{gmhist.el}と@file{gmhist-mh.el} をロードしている場合、プレヴューコ
yuuji@20: マンドの入力(@kbd{[prefix] tp]})、印刷コマンドの入力(@kbd{[prefix] tl})の
yuuji@20: 時に独立したヒストリを利用できます。それぞれのプロンプトで、@kbd{M-p} を押
yuuji@20: すと直前に利用したコマンド文字列をくり返し呼び出すことができます。
yuuji@20: 
yuuji@20: @section min-out
yuuji@20: @cindex min-out
yuuji@20: 
yuuji@20:   @file{min-out.el} (@code{outline-minor-mode}) と野鳥を組み合わせて使うこ
yuuji@20: とももちろん可能です。設定の方法に関しては@file{yatexm-o.el}をご覧ください。
yuuji@20: 
yuuji@46: @node Customizations, Etc, Cooperation with other packages, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter カスタマイズ
yuuji@46: @cindex カスタマイズ[かすたまいす]
yuuji@46: @cindex キーアサイン[きいあさいん]
yuuji@20: 
yuuji@20:   野鳥の動作を制御する種々の変数を独自に設定することにより、補完入
yuuji@20: 力を起動するキーアサインを変えたり、環境名の補完候補をさらに充実さ
yuuji@20: せることなどができます。
yuuji@20: 
yuuji@20: @menu
yuuji@46: * Lisp variables::              lisp 変数
yuuji@46: * Add-in functions::            付加関数(アドイン関数)
yuuji@20: @end menu
yuuji@20: 
yuuji@46: @node Lisp variables, Add-in functions, Customizations, Customizations
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section lisp 変数
yuuji@46: @cindex prefixキー変更[prefixきいへんこう]
yuuji@20: 
yuuji@20:   例えば prefix キーを @kbd{C-c} 以外のキーにしたい場合は、
yuuji@46: @code{YaTeX-prefix}に prefix キーにしたいシンボルを定義してください。さら
yuuji@20: に、「@kbd{C-c 英字}」というキーバインドは独自の関数が割り当ててあるので使
yuuji@20: いたくない。このような時は、@code{YaTeX-inhibit-prefix-letter} を @code{t} 
yuuji@20: に設定することにより、@kbd{C-c 英字…}のバインドが全て、対応する@kbd{C-c
yuuji@20: C-英字…}に変わります(ただし、begin型 large型補完の大文字起動によるリジョ
yuuji@20: ン指定は可能なままです。これも無効にしたい場合は@code{t}ではなく 1 にセッ
yuuji@20: トして下さい。)。
yuuji@20: 
yuuji@20: @menu
yuuji@46: * All customizable variables::  カスタマイズ変数一覧
yuuji@46: * Sample definitions::          カスタマイズ変数設定例
yuuji@46: * Hook variables::              hook変数
yuuji@46: * Hook file::                   hook用ファイル
yuuji@20: @end menu
yuuji@20: 
yuuji@46: @node All customizable variables, Sample definitions, Lisp variables, Lisp variables
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @subsection カスタマイズ変数一覧
yuuji@46: @cindex カスタマイズ変数一覧[かすたまいすへんすういちらん]
yuuji@20: 
yuuji@20:   yatex-mode における次の変数がカスタマイズ可能です。@file{~/.emacs} で 
yuuji@20: @code{setq} しておけば、そちらの定義が優先されます。括弧の中はデフォルト値
yuuji@49: です。実際に変数の値を変更する場合は @kbd{M-x describe-variable} で
yuuji@49: 変数の詳細な説明を参照してください。
yuuji@20: 
yuuji@46: @defvar YaTeX-prefix
yuuji@46: yatex-mode 中のプリフィクスキー(@kbd{C-c})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-inhibit-prefix-letter
yuuji@20: prefix キーの直後のキーバインドで@kbd{英字}のものを@kbd{C-英字}に変更
yuuji@20: (@code{nil})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-fill-prefix
yuuji@46: 本文を書く時の行頭に挿入する接頭辞すなわち fill-prefix (@code{""(nil)})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-open-lines
yuuji@46: \begin{環境}と\end{環境}のあいだの空白行数 (0)
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-user-completion-table
yuuji@46: 学習したLa@TeX{}コマンド保存ファイル名(@code{"~/.yatexrc"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-kanji-code
yuuji@46: 文書を作成する時の漢字コード1=Shift JIS, 2=JIS, 3=EUC(2 (MS-DOSでは1))
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-item-regexp
yuuji@51: itemの桁揃えの時に用いる、itemの正規表現(@code{"\\\\(sub\\)*item"})
yuuji@51: @end defvar
yuuji@51: 
yuuji@51: @defvar YaTeX-verb-regexp
yuuji@51: verbコマンドの正規表現。先頭の\\\\はつけない(@code{"verb\\*?\\|path"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar tex-command
yuuji@46: La@TeX{}タイプセッタコマンド名 (@code{"jlatex"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar dvi2-command
yuuji@46: プレヴューアコマンド名(@code{"xdvi -geo +0+0 -s 4 -display (getenv"DISPLAY")"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar dviprint-command-format
yuuji@46: dviファイルの印刷に使われるコマンド式(@code{"dvi2ps %f %t %s | lpr"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar dviprint-from-format
yuuji@20: 上の@code{%f}に相当する開始ページ指定書式、@code{%b} が開始ページ番号に変
yuuji@20: わる(@code{"-f %b"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar dviprint-to-format
yuuji@20: @code{%t} に相当する終了ページ指定書式、@code{%e}が終了ページ番号に変わる
yuuji@20: (@code{"-t %e"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@52: @defvar makeindex-command
yuuji@52: makeindexコマンド(@code{"makeindex"} (MS-DOSでは@code{"makeind"}))
yuuji@52: @end defvar
yuuji@52: 
yuuji@46: @defvar section-name
yuuji@46: 最初のsection型補完の規定値(@code{"documentstyle"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar env-name
yuuji@46: 最初のbegin型補完の規定値(@code{"document"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar fontsize-name
yuuji@46: 最初のlarge型補完の規定値(@code{"large"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar single-command
yuuji@46: @end defvar
yuuji@46: 最初のmaketitle型補完の規定値(@code{"maketitle"})
yuuji@20: 
yuuji@46: @defvar YaTeX-need-nonstop
yuuji@46: @code{\nonstopmode@{@}}を自動的に付加するか(@code{nil})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar latex-warning-regexp
yuuji@46: latexコマンドの出力するウォーニング行の正規表現(@code{"line.* [0-9]*"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar latex-error-regexp
yuuji@46: 同じくエラー行の正規表現(@code{"l\\.[1-9][0-9]*"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar latex-dos-emergency-message
yuuji@20: MS-DOS上で動作する latex コマンドが、エラーにより停止するとき出力するメッ
yuuji@20: セージ (@code{"Emergency stop"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar latex-message-kanji-code
yuuji@20: jlatex コマンドの出力するメッセージの漢字コード.タイプセットバッファ
yuuji@20: の出力が化ける時は、これを設定する(2, Nemacsでのみ有効)
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar NTT-jTeX
yuuji@46: NTT-j@TeX{}使用時@code{t}にする(@code{nil})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-item-regexp
yuuji@46: item化コマンドの正規表現(@code{"\\\\(sub\\)*item"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-nervous
yuuji@46: ローカル辞書を用いる時 @code{t} (@code{t})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-sectioning-regexp
yuuji@20: セクション区切り設定コマンドの正規表現
yuuji@20: (@code{"part\\|chapter\\|\\(sub\\)*\\(section\\|paragraph\\)"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-fill-inhibit-environments
yuuji@46: fill を抑止する環境名のリスト(@code{'("verbatim" "tabular")})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-uncomment-once
yuuji@46: 領域uncommentで行頭の複数の@code{%}を全て削除するか(@code{nil})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-close-paren-always
yuuji@46: 開き括弧の入力で常に閉じ括弧を入力する(@code{t})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-auto-math-mode
yuuji@51: 数式モードの切り替えを自動的に行う。(@code{t})
yuuji@51: @end defvar
yuuji@51: 
yuuji@51: @defvar YaTeX-math-key-list-private
yuuji@51:         数式イメージ補完で用いる (プリフィクスキー . 対応補完テーブル) の
yuuji@51:         alist(@code{nil})。補完テーブルの書き方については
yuuji@51:         @file{yatexmth.el}を参照。
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-default-pop-window-height
yuuji@20: 1画面の時にタイプセットバッファを初めて作成する時の高さ。数値で行数、数字
yuuji@20: 文字列でEmacsウィンドウに対する百分率(10)。
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-help-file
yuuji@46: 共用ヘルプファイル(@file{$EMACS/etc/YATEXHLP.jp})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-help-file-private
yuuji@46: 個人用ヘルプファイル(@file{"~/YATEXHLP.jp"})
yuuji@46: @end defvar
yuuji@20: 
yuuji@46: @defvar YaTeX-no-begend-shortcut
yuuji@20: @kbd{[prefix] b ??} のショートカットを使わず、@kbd{[prefix] b} だけで補完
yuuji@20: 入力に入る(@kbd{nil})
yuuji@46: @end defvar
yuuji@20: 
yuuji@49: @defvar YaTeX-hilit-pattern-adjustment-private
yuuji@49: 正規表現とそれにマッチするものの論理的意味をシンボルであらわしたものの
yuuji@49: リスト…のリスト。hilit19 を組み込んでいる時のみ有効。
yuuji@49: 詳しくは @code{(assq 'yatex-mode hilit-patterns-alist)} 
yuuji@49: した結果と、変数 @code{YaTeX-hilit-pattern-adjustment-default} の値(と場合
yuuji@49: によっては hilit19 のドキュメント)を参照せよ。
yuuji@49: @end defvar
yuuji@49: 
yuuji@53: @defvar YaTeX-sectioning-level
yuuji@53: LaTeXのセクション単位宣言コマンドとその論理的高さのalist。
yuuji@53: @end defvar
yuuji@53: 
yuuji@53: @defvar YaTeX-hierarchy-ignore-heading-regexp
yuuji@53: Hierarchy バッファは通常ファイルヘッダとして、LaTeXのセクション宣言コマン
yuuji@53: ドの引数を検索し、それがなければコメント行を探すが、その際にヘッダとしては
yuuji@53: 意味を持たないパターンをこの変数に設定する。デフォルトでは RCS ヘッダとモー
yuuji@53: ド指定行(-*- xxx -*-)が設定されている。
yuuji@53: @end defvar
yuuji@53: 
yuuji@54: @defvar YaTeX-skip-default-reader
yuuji@54: Non-nil に設定するとsection型コマンドの引数入力時、アドイン関数がなければ
yuuji@54: ミニバッファでの読み込みをせずに入力を完了させる。
yuuji@54: @end defvar
yuuji@54: 
yuuji@56: @defvar YaTeX-create-file-prefix-g
yuuji@56: @code{\include}などで @kbd{prefix g}した時に、ジャンプ先が存在しないファイ
yuuji@56: ルであってもオープンする(@code{nil})。
yuuji@56: @end defvar
yuuji@56: 
yuuji@56: @defvar YaTeX-simple-messages
yuuji@56: 各種補完時のメッセージ出力を簡素化する(@code{nil})。
yuuji@56: @end defvar
yuuji@56: 
yuuji@57: @defvar YaTeX-hilit-sectioning-face
yuuji@57: 色付けが有効な時の @code{\part} の色
yuuji@57: (@code{'(yellow/dodgerblue yellow/slateblue)})。
yuuji@57: リストの第一要素は @code{hilit-background-mode} が @code{'light} の時の、
yuuji@57: 第二要素は @code{'dark} の時の @code{\chapter} の色で、文字色/背景色 のよ
yuuji@57: うに指定する。
yuuji@57: @end defvar
yuuji@57: 
yuuji@57: @defvar YaTeX-hilit-sectioning-attenuation-rate
yuuji@57: 色付けが有効な時の、@code{\subparagraph} の色を @code{\chapter} の濃度の何
yuuji@57: %薄くしたものにするか(@code{'(15 40)}。@code{YaTeX-hilit-sectioning-face}
yuuji@57: の項参照。
yuuji@57: @end defvar
yuuji@57: 
yuuji@46: @node Sample definitions, Hook variables, All customizable variables, Lisp variables
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @subsection カスタマイズ変数設定例
yuuji@46: @cindex 設定例[せつていれい]
yuuji@20: 
yuuji@20:   たとえば、prefix キーとして@kbd{ESC}を使用し、新たな補完候補を格納するファ
yuuji@20: イルを、@file{~/src/emacs/yatexrc} にし、行頭の prefix をタブ文字一つに変
yuuji@20: えたいときは、
yuuji@20: 
yuuji@20: @lisp
yuuji@46:         (setq YaTeX-prefix "\e"
yuuji@46:               YaTeX-user-completion-table "~/src/emacs/yatexrc"
yuuji@46:               YaTeX-fill-prefix "       ")
yuuji@20: @end lisp
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: を @file{~/.emacs} に加えます。
yuuji@20: 
yuuji@46: @node Hook variables, Hook file, Sample definitions, Lisp variables
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @subsection hook変数
yuuji@46: @cindex hook変数[hookへんすう]
yuuji@20: @cindex yatex-mode-hook
yuuji@20: @cindex yatex-mode-load-hook
yuuji@20: 
yuuji@20:   また、hook 変数 @code{yatex-mode-hook}, @code{yatex-mode-load-hook} を用
yuuji@20: 意しています。すべての yatex-mode のバッファで作用させたいものは、
yuuji@20: @code{yatex-mode-hook} に記述し、@file{yatex.el} をロードする時だけ作用さ
yuuji@20: せたいものは@code{yatex-mode-load-hook} に記述します。例えば、
yuuji@20: @code{outline-minor-mode} を利用する場合、それぞれのバッファで 
yuuji@20: @code{outline-minor-mode} を有効にしたいので、@code{yatex-mode-hook} を次
yuuji@20: のように設定します。
yuuji@20: 
yuuji@20: @lisp
yuuji@46:         (setq yatex-mode-hook
yuuji@46:               '(lambda () (outline-minor-mode t)))
yuuji@20: @end lisp
yuuji@20: 
yuuji@20: @noindent 
yuuji@20: 逆に、独自のキー定義を行いたい時などは、@code{yatex-mode-load-hook} を利用
yuuji@20: します。例えば、begin 型補完において、 document や、enumerate 以外の環境名
yuuji@20: もショートカットキーで入れたいなどという時は、次のようにします。以下の例は、
yuuji@20: @kbd{[prefix] ba} で @code{\begin@{abstract@}}, @code{\end@{abstract@}} を
yuuji@20: 挿入します。
yuuji@20: 
yuuji@20: @lisp
yuuji@46:         (setq yatex-mode-load-hook
yuuji@46:               '(lambda() (YaTeX-define-begend-key "ba" "abstract")))
yuuji@20: @end lisp
yuuji@20: 
yuuji@20: なお、新たなキーの定義には、関数 @code{YaTeX-define-key}
yuuji@20: @code{YaTeX-define-begend-key}を利用するようにしてください。
yuuji@20: 
yuuji@46: @node Hook file,  , Hook variables, Lisp variables
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @subsection hook用ファイル
yuuji@20: 
yuuji@20:   変数 @code{yatex-mode-load-hook} で定義する内容が多い時は、
yuuji@20: @file{yatexhks.el}というファイルを作り、その中に野鳥関連の設定を書く事で、
yuuji@20: 初期化の時に自動的にロードします。
yuuji@20: 
yuuji@20: 
yuuji@46: @node Add-in functions,  , Lisp variables, Customizations
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @section 付加関数(アドイン関数)
yuuji@20: 
yuuji@20:   各種補完時に、環境名やコマンド名に応じたきめ細やかな補完入力機能を実現す
yuuji@20: るための関数を作成することができます。この関数の作成方法や、組み込み方法に
yuuji@20: 関しては、@code{yatexadd.doc} をご覧ください。
yuuji@20: 
yuuji@46: @node Etc, Copying, Customizations, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter その他
yuuji@20: 
yuuji@20:   野鳥の標準の La@TeX{} コマンドの辞書には、作者が頻繁に使うものしか登録さ
yuuji@20: れていません。これは、補完候補に使いそうもないコマンドが存在して、補完した
yuuji@20: いコマンドを出すまでのストローク数を増やしてしまう事を防止するためです。標
yuuji@20: 準辞書にないコマンドも、できるだけ補完入力方式を利用し、ユーザ辞書を充実さ
yuuji@20: せることで、あなたの La@TeX{} スタイルにあった野鳥へと育っていくことでしょ
yuuji@20: う。
yuuji@20: 
yuuji@46: @node Copying, Concept Index, Etc, Top
yuuji@20: @comment  node-name,  next,  previous,  up
yuuji@20: @chapter 取り扱い
yuuji@20: 
yuuji@20:   本プログラムはフリーソフトウェアです。本プログラムを使用して生じたいかな
yuuji@20: る結果に対しても作者は責任を負わないこととします。転載等に関しては制限いた
yuuji@20: しません。常識的に扱ってください。また、使用している旨をメイルでお知らせい
yuuji@51: ただくと、作者は喜んでサポートに励むことでしょう。
yuuji@20: 
yuuji@49:   苦情、希望、バグ報告、感想等は歓迎いたします。
yuuji@51: 連絡は yuuji@@ae.keio.ac.jp または、
yuuji@51: pcs39334@@asciinet.or.jp まで(1995年3月現在)。
yuuji@52: 継続的に使用してくださる方はメイリングリスト「fj野鳥の会」に
yuuji@52: 是非加入してください。加入方法については本パッケージの @file{docs/qanda}
yuuji@52: ファイルの「その他」の章を御覧ください。
yuuji@20: 
yuuji@20: 仕様は、予告なく確実に(気分次第で)変更されます:-p。
yuuji@20: 
yuuji@20: @flushright
yuuji@20: 広瀬雄二
yuuji@20: @end flushright
yuuji@20: 
yuuji@46: @node    Concept Index,  , Copying, Top
yuuji@46: @comment node-name, next, previous, up
yuuji@46: @unnumbered 索引
yuuji@46: @printindex cp
yuuji@46: 
yuuji@46: @c カスタマイズ変数索引を索引と分離する場合にはコメントアウトを外す!!!
yuuji@46: @c @node    Variable Index
yuuji@46: @c @comment node-name, next, previous, up
yuuji@46: @c @unnumbered カスタマイズ変数索引
yuuji@46: @c @printindex vr
yuuji@46: 
yuuji@46: @contents
yuuji@46: 
yuuji@20: @bye
yuuji@20: 
yuuji@20: @c Local Variables:
yuuji@20: @c fill-column: 74
yuuji@20: @c fill-prefix: nil
yuuji@20: @c End:
yuuji@20: 
yuuji@20: Tag table:
yuuji@20: 
yuuji@20: End tag table




