yatex

annotate docs/yatexj.tex @ 79:0734be649cb8

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