[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [表紙] [目次] [索引] [検索] [上端 / 下端] [?]

6. %#記法

URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=%25%23notation"
"yatex/%#記法"へのコメント(無し)

本文中に%#ではじまるキーワードを埋め込むことでタイプセッタ起動等 の制御をすることができます。



[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [表紙] [目次] [索引] [検索] [上端 / 下端] [?]

6.1 タイプセット用コマンド変更

URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=Changing+typesetter"
"yatex/タイプセット用コマンド変更"へのコメント(無し)

起動するコマンドを変えたい時は本文中に次のような行を書きます。

 
        %#!jlatex-ntt

NTT jTeX と、ASCII jTeX を使い分けたいような場合に便利でしょう。



[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [表紙] [目次] [索引] [検索] [上端 / 下端] [?]

6.2 入力ファイル分割

URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=Splitting+input+files"
"yatex/入力ファイル分割"へのコメント(無し)

また、章毎に別ファイルの .tex を作成している場合で、`main.tex'から `sub.tex'を \includeしているような時は、`sub.tex'の任意の 位置に次のような行を埋め込みます。

 
        %#!platex main.tex

上の例のようにコマンド名だけでなく引数も書いた場合には、全てをそのまま shell に渡すので次のように書けば、ghostview などをプレヴューアに使う時に便 利です。

 
        %#!platex main ; dvi2ps main.dvi > main

なお、この行の最後の単語のピリオド以前を「メインファイル」のベース ネームであると仮定します(上の2つの場合どちらも`main')。 この行に記述した、%fはメインファイル名に、 %r はメインファイルの拡張子を取り除いた部分に置換されます。 ただし、%f,%rを利用した場合、初回タイプセット時に必ずメインファイル 名の入力を促されます。

[prefix] g (10. カーソルジャンプ参照) での ファイル間ジャンプを有効に機能させるため、入力ファイル分割時には次のことに 注意して下さい。

  1. サブディレクトリを作って、その中にサブファイルを置くことはできるが サブディレクトリのサブディレクトリには置けない。
  2. メインファイルからサブディレクトリ内のファイルを include する時には、相対パス指定を用いて、 \include{chap1/sub}のように記述。
  3. メインファイルが一つ上のディレクトリにある場合も、サブファイルには %#!platex main.tex のように記述する(../mainではない)。



[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [表紙] [目次] [索引] [検索] [上端 / 下端] [?]

6.3 領域の固定

URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=Fix+region+for+typesetting"
"yatex/領域の固定"へのコメント(無し)

[prefix] tr の領域指定のタイプセットでは、とくに指定のないかぎり、 C-SPCでマークした位置と、ポイント(カーソル位置)の間を領域とみなしま すが、必ず決まった領域をタイプセットしたい場合は、その領域を

 
        %#BEGIN
        <渡したい領域>
        %#END

のように%#BEGIN%#ENDで囲み、カーソルを「%#BEGIN以降」 に置いてください。この時の領域決定規則をまとめると次のようになります。

  1. カーソル位置よりバッファの先頭方向に%#BEGINというキーワードが ある場合

    1. %#BEGINよりバッファの末尾方向に%#ENDというキーワードが見つかっ た場合。 =>%#BEGIN から、その %#END のある位置まで。
    2. %#END が見つからなかった場合。 =>バッファの最後尾まで。

  2. カーソル位置よりバッファの先頭方向に %#BEGIN というキーワードが 見つからなかった場合。 =>マーク(C-SPC位置)とポイント(カーソル位置)の間の領域。

tabular 環境を何度も試行錯誤しているような場合は、\beginの前の行 に %#BEGIN と書き、\end の次の行に %#END と書いておく と簡単に作表結果をテストすることができます。また、長い .tex ファイルの後半 に %#BEGIN を書いておけば、前半の部分は無視できます。このBEGINとEND の消し忘れには十分ご注意下さい。



[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [表紙] [目次] [索引] [検索] [上端 / 下端] [?]

6.4 lprフォーマット

URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=lpr+format"
"yatex/lprフォーマット"へのコメント(無し)

まず、プリントアウト用コマンド列のフォーマットについて説明します。 コマンド列フォーマットは、3つの Lisp 変数によって表現されます。デ フォルトの dvi2ps 用のフォーマットを例に説明します。

(1)dviprint-command-format
"dvi2ps %f %t %s | lpr"

(2)dviprint-from-format
"-f %b"

(3)dviprint-to-format
"-t %e"

実際にプリントアウトする時は、(1)中の %s がファイル名に置き換えられ、%f が (2)の内容、%t が(3)の内容に置き換えられます。その際に(2)の文字列中の %b は 「出力開始ページ」、(3)の文字列中の %e は「出力終了ページ」に置き換えられ ます。もし、ページを指定しない時には、%f, %t 両方とも無視されます。

この、dviprint-command-format を臨時に変えたい時は、LaTeX の ソーステキスト中の任意の場所に、

 
        %#LPR dvi2ps %f %t %s | 4up -page 4 | texfix | lpr -Plp2

のように書いて下さい。プリントアウトするページ範囲をいちいち聞かせないよう にする時に

 
        %#LPR dvi2ps %s | lpr

などとするのも便利かもしれません。



[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [表紙] [目次] [索引] [検索] [上端 / 下端] [?]

6.5 %#記法自体の編集

URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=yatex&node=Editing+%25%23+notation"
"yatex/%#記法自体の編集"へのコメント(無し)

以上のような%#で始まる各種制御記法を編集するためには

[prefix] %
... %#記法編集メニュー

を押します。

 
        !)Edit-%#! B)EGIN-END-region L)Edit-%#LPR

というメニューが出て来るので、%#!に続くコマンドを変更したい時には !を、%#LPRで lpr フォーマットを変えたい時はlを、あらか じめ設定したリジョンを %#BEGIN%#END で括りたい時は、 bを押します。bを選んだ時には、それまでバッファ中に置かれていた %#BEGIN, %#END が自動的に消去されます。


[ << ] [ >> ]           [表紙] [目次] [索引] [検索] [上端 / 下端] [?]