[[TeX]] *パッケージファイル [#qb777e99] **パッケージファイルの紹介 [#g93099b9] 最近よく用いられるTeXLiveを用いると多くのパッケージが標準でインストールされます.パッケージファイルのファイル名がわかっていれば,インストールされているかどうかは,たとえば次のように調べることができます. $ kpsewhich teubner.sty /usr/local/texlive/2012/texmf-dist/tex/latex/teubner/teubner.sty #ls2(TeX/PackageFile/) -tram(網掛け) **パッケージファイルとは [#hd8b1a4a] パッケージファイルとは、[[クラスファイル>TeX/ClassFile]] を補う形で読み込ませる、様々なマクロ(命令)を収めたものです。校訂本を作るための大規模なパッケージファイルもあれば、自分で作った便利なマクロを集めただけの小さなパッケージファイルもあります。マクロは文書ファイル(.tex)に記述しておくこともできますが、同じマクロを他の文書ファイルでも使うためには、パッケージファイルの形でまとめておくとよいでしょう。 パッケージファイルは文書ファイルと同じディレクトリに置いておくか、TeX が見つけてこられるディレクトリに置いておきます(下の「インストール」の項目を参照してください)。 既にインストールされているパッケージファイルを用いるときは、文書ファイルのプリアンブル(\begin{document}の前)にそのパッケージファイルの名前を書いておきます。例えば \usepackage{hoge} と書いておけば hoge.sty が読み込まれます。拡張子が .sty となっていますが、これは昔のシステムでは [[クラスファイル>TeX/ClassFile]] やパッケージファイルなどをまとめて「スタイルファイル」と呼んでいたためです。現在(LaTeX2e)では「パッケージファイル」と呼ぶことが推奨されています。 **配布方法 [#t618bb7a] 以下では hoge.sty という実在しないパッケージファイルを例に説明します。(p)latex や (p)tex という表記が出てきたら、日本語を含む場合は platex, ptex を、そうでない場合は latex, tex を使ってください。 ***最小構成 [#ob787525] 次の2つのファイルがあれば、必要なファイルはすべて生成できます。 +hoge.ins +hoge.dtx((dtx とは「文書化された .tex ファイル」という意味です。)) ***現在よくある構成 [#td2871f7] 現在は、.sty ファイルやドキュメントも同梱して配布することが多いようです。 +hoge.ins +hoge.dtx +hoge.sty +hoge.pdf +README この場合、実用上必要なのは +hoge.sty +hoge.pdf だけです。 **インストール [#d3c0b064] *** .sty の生成 [#c9d3b97c] .sty が配布されていない場合(前述の「最小構成」に準じる場合)は、次のようにします(前の項と同じように hoge.sty を例にします)。 hoge.ins, hoge.dtx の2つのファイルを入手したら、 $ (p)latex hoge.ins を実行します(拡張子 .ins は省略できません)。すると .sty などの必要なファイルが生成されます。場合によっては -overwrite -checksum に関するエラーや警告が出ることがあります。overwrite の場合はそのまま y で答えて構いません((実際には別のディレクトリにあって上書きされないのが普通です。))。checksum のエラーの場合は +作者の checksum の値が間違っている +ダウンロードしたファイルが壊れている の2つの原因が考えられます。ファイルをもう一度ダウンロードしてみて同じ作業を繰り返し、同じ現象になるならばそのまま次に進んでしまってよいでしょう。 ***ドキュメントの作成 [#j9d4d721] hoge.sty の使い方などをまとめたドキュメントは以下のように作成します(拡張子は省略できません)。 $ (p)latex hoge.dtx $ (p)latex hoge.dtx (p)latex を2度実行するのは参照番号などを正しく処理するためです(通常の .tex ファイルの処理と同じです)。パッケージによっては索引などを生成する必要があるかもしれません。その場合は README などの解説文書が同梱されているはずですのでそれを参照してください。 以上の処理を施すと hoge.dvi ができているはずです。PDF に変換しておきましょう。 $ dvipdfmx hoge.dvi ***ファイルのコピーと ls-R の更新 [#xab39dd3] .sty と PDF ファイルができたら、しかるべき場所にコピーして ls-R を更新します。 # mktexlsr **パッケージファイルの作成 [#d047bc97] ***漢字コード [#y2be6581] pTeX の入力用文字コードは UNIX なら EUC-JP が、Windows なら SJIS が標準です。JIS(iso-2022-jp)ならどちらの文字コードとも併用できますので、どの環境でも使えるようにするには、パッケージファイルは JIS(iso-2022-jp)で作成するのがよいでしょう。