[改訂第6版]LaTeX2e 美文書作成入門
奥村晴彦・黒木裕介『[改訂第6版]LaTeX2e(ラテック・ツー・イー)美文書作成入門』(技術評論社,,ISBN978-4-7741-6045-0,2色刷,DVD-ROM付,3200円+税)のサポートページです。
技術評論社の紹介ページ / Amazon.co.jpのページ
安全のため,TeXシステムの設定変更をお願いします
[追記1] 以下の設定変更を自動化するためのプログラムを阿部さんに作っていただきました。fix_texmfcnf.exe をダウンロードして実行してください(念のためソース fix_texmfcnf.cpp)。実行すると警告(Windowsのバージョンによりますが例えば「WindowsによってPCが保護されました」)が出ます。この場合,「詳細情報」をクリックして「実行」を押します。また,ダウンロード時に「このプログラムはダウンロードしたユーザー数が少なく、コンピューターに問題を起こす可能性があります」と出ることがありますが,無視してください。「このプログラムを実行しない」「プログラムの削除」しか選択肢がない警告画面では,「その他のオプション」をクリックすると「実行」が現れますので,それをクリックしてください。
[追記2] 寺田さんのご協力でMac版も用意できました:fix_texmfcnf.zip をダウンロードし,ダブルクリック(展開)すると fix_texmfcnf という実行ファイルと fix_texmfcnf.sh というシェルスクリプトが現れます(後者の中身は sudo ./fix_texmfcnf
だけです)ので,右クリックして「開く」で,管理者権限でインストールされている場合(通常はこちら)には fix_texmfcnf.sh を,そうでない場合は fix_texmfcnf を実行してください。
2010年ごろから最新のものまで,ほぼすべてのTeXシステムで,攻撃者が送ってきたTeXファイルを不用意にタイプセットすると,任意のコマンドが実行される可能性があります。これを防ぐため,以下のようにして,texmf.cnf の shell_escape_commands リストから mpost 関係コマンドを削除することをお勧めします。
具体的には,まずパソコンの中で texmf.cnf というファイルを検索して探します。コマンドで探すためには,ターミナル(コマンドプロンプト)に kpsewhich texmf.cnf
と打ち込みます。
texmf.cnf が見つかったら,その中の shell_escape_commands =
で始まる箇所を探します。例:
shell_escape_commands = \ bibtex,pbibtex,jbibtex,repstopdf,epspdf,extractbb,\ makeindex,mendex,mpost,pmpost,upmpost,kpsewhich
または
shell_escape_commands = \ bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\ kpsewhich,\ makeindex,mendex,texindy,\ mpost,pmpost,upmpost,\ repstopdf,epspdf,extractbb
この中の mpost を含む文字列(mpost,jmpost,pmpost,upmpost)を(直後のコンマも含め)すべて削除します。削除によって空行が生じたら,その空行も削除します。例えば上の2番目の例であれば,次のようになります:
shell_escape_commands = \ bibtex,bibtex8,bibtexu,pbibtex,upbibtex,biber,\ kpsewhich,\ makeindex,mendex,texindy,\ repstopdf,epspdf,extractbb
こうすることによって,TeXからMETAPOSTを自動実行することが禁止されます(METAPOSTを単独実行することは今まで通り可能です)。
攻撃者から受け取ったTeXファイルを「開く」(テキストエディタやTeXworks,TeXShopなどで)だけなら問題ありません。危険なのは「タイプセット」することです。ただ,一般論として,素性の知れないファイルを開く際には注意が必要です。
Mac: OS X El Capitanに更新する際のご注意
El Capitanではヒラギノフォントのファイル名・形式が変わっていますので,そのままでは埋め込みに失敗するはずです。対応策を検討中ですが,とりあえずは和文フォントをヒラギノ以外(IPAexフォントなど)に設定すれば問題なく使えるはずです(p.337参照)。
TeX Live 2015がリビジョン38527でEl Capitanのヒラギノフォントに対応しました。単にターミナルに sudo tlmgr update --self --all
と打ち込むだけでTeX Live 2015に更新されるようです(これはtlmgrの仕様からすれば変なので,保証の限りではありません)。いったんTeX Live 2015に更新されれば,あとはOS X El Capitan での TeX Live のセットアップに従って設定します。
TeXShopはtlmgrでは更新できません。TeXShopのサイトからEl Capitan対応の最新版をインストールしてください。
上記は美文書DVDを先にインストールして,後でEl Capitanに更新した場合です。El Capitanに美文書DVDからインストールする場合は,第6版第3刷のDVDであれば可能です。なお,本家TeX Live 2015をネットインストールする方法はInstalling TeX Live over the Internetに書かれています。詳しくはTeX Wikiの記事をご覧ください。
Mac:OS X Yosemiteでインストールする際に必ずお読みください
Yosemite以前でインストールしたものは,Yosemiteに更新しても正常に動きます(ただし /usr/local にインストールしたMacをYosemiteにする際に /usr/local を別の場所に退避しておくとインストール時間が大幅に短縮されます)。以下は,Yosemiteに本書DVDからインストールする場合の問題点と対策です。
問題点:第1刷DVDからは正常にインストールできません。第2刷DVDからは正常にインストールされますが,TeX2imgの初回起動時にダブルクリックでは起動しません。右クリックから「開く」で起動すれば,次回以降は普通に起動できます。
対策:Yosemite対応版のTeXインストーラを用意しました:
https://dl.dropboxusercontent.com/u/5807100/Bibun6instYosemite.dmg
このdmgをマウントすると,図のようなディレクトリ構成のイメージがマウントされます。
このYosemite版インストーラは,次のような特徴を持ちます。
- 第1刷→第2刷で更新のあった insttlja と mactexaddons は,dmg内に収録した第2刷と同じ新バージョンを利用します。
- 第2刷以降で更新のあった TeXShop と TeX2img についても,dmg内に収録した最新バージョンをインストールします。(TeX2imgの最新版は新しいデジタル署名がなされているため,通常のダブルクリックで起動できます。)
- それ以外(TeX Live本体,MacTeX additions,TeXworks)については,美文書付属DVD内のものをインストールします。
- 手持ちのDVDが第1刷,第2刷のどちらであっても機能します。
- DVD,isoイメージ,zipアーカイブのどれを入手していても機能します。
【使用法】
- まず,既に中途半端にインストールされてしまっていれば,インストール失敗の残骸を消去します。デフォルト設定でインストールしている場合には,/Applications/TeXLive を丸ごと削除すれば大丈夫です。
- DVDまたはisoイメージをマウントします。またはzipアーカイブを展開します。
- Yosemite版インストーラのdmg内の「美文書TeXインストーラ」を起動します。すると,図のような画面が表示されます。
- 美文書付属のTeXインストーラと同様の画面ですが,冒頭部にDVDのパスを指定する欄があります。DVDまたはisoイメージの場合は,デフォルトの /Volumes/LaTeX2e美文書作成入門第6版 で問題ないでしょう。zipアーカイブを利用している場合は,それを展開したディレクトリを「参照...」で指定します。
- 「インストール開始」ボタンを押すと,更新のあったものはdmg内の Applications, Library ディレクトリ内のものを参照しながら,それ以外はDVD内のものを参照しながらインストールを行います(もし「"cc"コマンドを実行するには…ツールをインストールしますか」と言ってくる場合は「今はしない」でスキップして大丈夫です)。
- これにより,手持ちのDVDが第1刷であっても第2刷であっても,Yosemite上で正しく TeX Live 2013,MacTeX additions,TeXShop 3.43,TeXworks,TeX2img 1.8.3 をインストールすることができます。
緊急のご注意(第1刷)
Windows:古いTeXをインストールした跡が見つかると,インストーラは環境変数PATHを簡単に編集できる画面に移りますが,古いTeX・Ghostscriptに関係する部分だけ削除してください。TeXに関係のないPATH(例えば %SystemRoot% など)まで削除すると,問題が生じます(「インストーラーの初期化に失敗しました」で止まる理由の一つはこれのようです)。もし問題が生じた場合は,C:\texlive\abtlinst_log.txt に削除したPATHが書き込まれていますので,本書331-332ページにしたがって環境変数を再設定してください。
Mac:本書第1刷に収録されているMac用のTeXShop 3.23は,Mavericksで ~
で始まる名前のファイルを保存するとフォルダごと削除されるというバグが発見されました。TeXShopの公式ページから最新版(3.26以降のもの)をダウンロードしてアップデートしてください。
いずれも第2刷で修正されています。
FAQ
- 第5版との違いは?
- 現時点でのベストプラクティスをご紹介しています。
- デザインが大幅に変わった?
- 編集部と共著者にご協力いただき,フラットデザイン()にしました。
- 電子版は出るの?
- PDF版が出ました。
- Windows 8.1に対応している?
- 本書下版後に出たWindows 8.1ですが,問題ないことが確認されています。
- OS X Mavericksに対応している?
- 本書下版後に出たMavericksですが,無印Mavericks(10.9.1になる前の10.9)でインストーラを実行するとOS判定を誤るというバグがありますので,修復ツールを用意しました。詳しくは下のほうをご覧ください。Mavericks以外でインストールした場合は,Mavericksにアップグレードしても問題ありません。
- 質問したいのだが?
- ご質問は TeX Forum にお願いします(うまく書き込めない方のために古い掲示板 TeX Q&A もまだ残してあります)。メール・封書・電話でのご質問はご勘弁ください。落丁・乱丁・DVDの不良などについては出版社におたずねください。
インストールの注意点
Windows
インストールの途中で .NET Framework のインストールが始まることがありますが,その終了時に再起動を促されても,インストーラが終了するまで再起動しないでください。もし途中で再起動してしまったら,DVDの Windows/utilities
にある abtlinst_patch.exe
をダブルクリックして,インストールを続行してください。
一部のマシンでインストーラがエラーを起こしているようです。対策として
- ウイルス対策ソフトを切ってみる(例)
- 再起動して他のソフトを起動しない状態でインストーラを実行する
- DVDの中身を全部HDDにコピーしてからインストーラを実行する
- Windows 8の場合はWindows 8.1にアップグレードしてからインストーラを実行する(私のWindows 8は大丈夫なので,関係ないかもしれません)
- 途中でエラーになるなら,もう一度最初からやってみる
- [追加] 全角ユーザ名を使っている場合は半角英数ユーザでインストールしてみる
- [追加] ユーザに管理権限がない場合は,インストールの間だけでも管理権限を付けてみる
のどれか(または複数)をやってみてください。特にDVDがリードエラーになるようならHDDへのコピーが有効です。その際,Windowsフォルダだけでなくtexlive-bibun6フォルダも必要です。コピー中にリードエラーになるようでしたらDVDドライブのクリーニングをしてみてください。毎回同じところでリードエラーになるなら,DVDの傷の可能性もありますので,出版社にお問い合わせください。
WindowsでTeX Liveのインストーラがしばしば失敗する原因の一つはタイミングの問題だったようです。パッチも提供されました。
デフォルトではImageMagick(画像処理ソフト)もインストールされます。ImageMagickのインストーラに「Associate supported file extensions with ImageMagick」(拡張子をImageMagickに関連づける)のチェックボックスがありますが,通常はここには触れないでください。ここにチェックを付けると,例えばPDFファイルをダブルクリックしたときに(Adobe Readerでなく)ImageMagickが立ち上がってしまいます。もし意図せずチェックを付けてインストールした場合は,いったんImageMagickだけアンインストールするのが早いと思います。
ちなみに,ImageMagickのconvertコマンドの使い方を本文でも説明していますが,実はWindowsには C:\Windows\System32\convert.exe というもの(FATボリュームをNTFSに変換するコマンド)もあるので,インストーラではImageMagickのconvertが先に見つかるようにパスを設定しています。Windowsのconvertをお使いになる際にはフルパスで実行してください。
Mac
本書完成後に出たMacのOS X Mavericks「10.9」をお使いのかたは,「10.9.1」にアップグレードしてからインストールしてください。下の修復ツールは不要です。
[以下は古い情報です]本書完成後に出たMacのOS X Mavericks「10.9」でOSの判定ミスが起きています。「10.9.1」になれば問題なくなるのだと思いますが,とりあえず修復ツールを用意していただきました:
ダウンロードし,ダブルクリックして現れる「美文書TeX修復ツール」を右クリック(あるいはcontrol+クリック)して「開く」を選んで,メッセージに従ってください。
念のため,上記修復ツールを用いず手で修復する方法も書いておきます:
まず,/etc/paths.d/TeXLive
というファイルが
/Applications/TeXLive/Library/texlive/2013/bin/universal-darwin /Applications/TeXLive/Library/mactexaddons/bin
になっていたら
/Applications/TeXLive/Library/texlive/2013/bin/x86_64-darwin /Applications/TeXLive/Library/mactexaddons/bin
に直してください。
また,古い TeXShop 2.47 のほうがインストールされてしまったら,DVD の Mac/Applications
にある TeXShop3.23.zip
をダブルクリックして,現れた TeXShop.app をアプリケーションの TeXLive フォルダにドラッグ&ドロップして,古いものに置き換えてください。TeXShop を起動し,環境設定の「内部設定」で最初のパス設定が
/Applications/TeXLive/Library/texlive/2013/bin/universal-darwin
になっていたら,
/Applications/TeXLive/Library/texlive/2013/bin/x86_64-darwin
に直してください。
TeX2img の環境設定の「変換ツール」の項目で,
platex: /Applications/TeXLive/Library/texlive/2013/bin/universal-darwin/platex dvipdfmx: /Applications/TeXLive/Library/texlive/2013/bin/universal-darwin/dvipdfmx
となっていれば,
platex: /Applications/TeXLive/Library/texlive/2013/bin/x86_64-darwin/platex dvipdfmx: /Applications/TeXLive/Library/texlive/2013/bin/x86_64-darwin/dvipdfmx
に直してください。
TeXworksをお使いになる場合は,無印Mavericksでやはりパスが誤設定されていると思います。環境設定の「タイプセット」の上で[+]を押して /Applications/TeXLive/Library/texlive/2013/bin/x86_64-darwin
をマウスでたどりながら入力し,[↑]で一番上に持って行き,古い universal-darwin
のパスを消します。ただ,最近のTeXworksはMac環境ではいろいろトラブルが生じやすいので,なるべくTeXShopのほうをお使いください。
Mavericks で luaotfload が /Library/Fonts/Skia.ttf ロード中に落ちるため LuaTeX が止まってしまう事例が報告されています。texmf-dist/tex/luatex/luaotfload/luaotfload-blacklist.cnf に Skia.ttf を追記すると回避できるようです。
共通
TeX Live のアップデートコマンド tlmgr update --self --all
を実行すると,美文書で追加した hiraprop パッケージが消えてしまうようです。初回のアップデート時に tlmgr update --no-auto-remove collection-langcjk
とすれば,次回からは tlmgr update --self --all
でも大丈夫のようです。
本文のバグ
- p.254「𠮷野屋」は「𠮷野家」のタイポです。たいへん失礼しました。
- p.285「長さの短縮名」で,スタイルファイルのフォントサイズ指定でよく
\@xpt
が10ptの意味で使われるという説明までは正しいのですが,\@xpt
そのものの定義は「10pt」ではなく「10」という数ですので,\setlength{\@tempdima}{\@xpt}
はまずい例でした(Thanks: トノさん)。 - p.355 dvipsの-SJISオプションは現在では不要です(Thanks: ttkさん [qa:57243])
- バグではありませんがp.368のtikzDeviceのインストールのしかたはもう古く,今は単に
install.packages("tikzDevice") だけで大丈夫です。
おまけ
Windows 8.1の游明朝・游ゴシックを使うmapファイル
次のような otf-yu-pr6n.map
を作って,dvipdfmx -f otf-yu-pr6n.map
とすれば使えると思います(ここ参照)。
% TEXT, 90JIS hminl-h H yuminl.ttf hminl-v V yuminl.ttf hminr-h H yumin.ttf hminr-v V yumin.ttf hminb-h H yumindb.ttf hminb-v V yumindb.ttf hgothr-h H yugothic.ttf hgothr-v V yugothic.ttf hgothb-h H yugothib.ttf hgothb-v V yugothib.ttf % TEXT, JIS04 hminln-h H yuminl.ttf hminln-v V yuminl.ttf hminrn-h H yumin.ttf hminrn-v V yumin.ttf hminbn-h H yumindb.ttf hminbn-v V yumindb.ttf hgothrn-h H yugothic.ttf hgothrn-v V yugothic.ttf hgothbn-h H yugothib.ttf hgothbn-v V yugothib.ttf % CID otf-cjml-h Identity-H yuminl.ttf/AJ16 otf-cjml-v Identity-V yuminl.ttf/AJ16 otf-cjmr-h Identity-H yumin.ttf/AJ16 otf-cjmr-v Identity-V yumin.ttf/AJ16 otf-cjmb-h Identity-H yumindb.ttf/AJ16 otf-cjmb-v Identity-V yumindb.ttf/AJ16 otf-cjgr-h Identity-H yugothic.ttf/AJ16 otf-cjgr-v Identity-V yugothic.ttf/AJ16 otf-cjgb-h Identity-H yugothib.ttf/AJ16 otf-cjgb-v Identity-V yugothib.ttf/AJ16 % Unicode 90JIS otf-ujml-h UniJIS-UTF16-H yuminl.ttf otf-ujml-v UniJIS-UTF16-V yuminl.ttf otf-ujmr-h UniJIS-UTF16-H yumin.ttf otf-ujmr-v UniJIS-UTF16-V yumin.ttf otf-ujmb-h UniJIS-UTF16-H yumindb.ttf otf-ujmb-v UniJIS-UTF16-V yumindb.ttf otf-ujgr-h UniJIS-UTF16-H yugothic.ttf otf-ujgr-v UniJIS-UTF16-V yugothic.ttf otf-ujgb-h UniJIS-UTF16-H yugothib.ttf otf-ujgb-v UniJIS-UTF16-V yugothib.ttf % Unicode JIS04 otf-ujmln-h UniJIS2004-UTF16-H yuminl.ttf otf-ujmln-v UniJIS2004-UTF16-V yuminl.ttf otf-ujmrn-h UniJIS2004-UTF16-H yumin.ttf otf-ujmrn-v UniJIS2004-UTF16-V yumin.ttf otf-ujmbn-h UniJIS2004-UTF16-H yumindb.ttf otf-ujmbn-v UniJIS2004-UTF16-V yumindb.ttf otf-ujgrn-h UniJIS2004-UTF16-H yugothic.ttf otf-ujgrn-v UniJIS2004-UTF16-V yugothic.ttf otf-ujgbn-h UniJIS2004-UTF16-H yugothib.ttf otf-ujgbn-v UniJIS2004-UTF16-V yugothib.ttf
[追記] ここにいろいろなmapファイルを置いてくださっています。yu-winがWindows 8.1用,yu-win10がWindows 10用です。
pdftotextと本書PDF版の相性問題
オープンソースのxpdf付属のpdftotextで本書PDF版をテキスト化すると,かな部分が抜け落ちます。これは,本書組版時にotfパッケージにオプションexpertを与えたため,かな部分に横組専用グリフが使われ,これをpdftotextが変換できないためです。この問題を解決するための /usr/(local/)share/xpdf/japanese/Adobe-Japan1.cidToUnicode の修正版を編集部に作っていただきましたので,とりあえずここに置いておきます。まだ抜けがあると思いますので,改良していただければ幸いです。なお,Adobe ReaderやPreview.appからのコピペではこの問題は生じないようです。
TeX Live 2014
本書に収録したのは TeX Live
2013 に基づくものですが,2014年6月に TeX Live 2014 が出ました。特にアップデートする必要はありませんが,とりあえず本書が TeX Live 2014 でコンパイルできるか試してみました。Mac上で ./install-tl
で標準インストールすると日本語関係がいくつか不足していたので追加インストールしました:
tlmgr install ptex uptex jsclasses jfontmaps japanese-otf-uptex ptex2pdf
[追記] 日本語関係が自動で入らなかったのは,同じマシンにTeX Live 2013が入っていたこととOSがMacだったことをトリガーとするバグだったようです。Thanks >黒木さん
さらに,TikZ が 3.0 になっていたのでエラーで止まるようになりましたが,これは実害がないようなので,次のようにして無視するようにしました。
\makeatletter \global\let\tikz@ensure@dollar@catcode=\relax \makeatother
以上,ご参考まで。
TeX Live 2015
2015年6月に TeX Live 2015 が出ました。これも特にアップデートする必要はありませんが,若干の新しい機能が実装されましたので,新しいものが好きなかたは試してみてください。