yatex

annotate docs/yatexj @ 566:2ef9f21dd13b

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