最終更新:2017-04-12 (水) 21:48:00 (189d)

FrontPage

TeX > Trends

TeX の最近の動向

TeX Live

TeX Live は日本語に対応した便利な TeX ディストリビューションです.
Windows, macOS, Linux などで使用できます.

TeX --> e-TeX --> pdfTeX

TeX の世界も熱狂的な信者の方が各々の改良や研究をされているので, 日々進歩しています.
それらの研究動向を見逃していると, せっかく便利なプログラムやパッケージが公開されていながら 使われないというもったいない事になります.
ですから,このページでは主に最近の TeX 周辺で便利なツールや パッケージを紹介しようと思います.

TeX というのは Donald Ervin Knuth なる天才的な計算機科学者が 何十年も前に開発したプログラムですので,幾分時代にそぐわない 部分があります(レジスタが 256 個までとか,いつの時代だ…).
そこで TeX を改良して e-TeX なるものが開発されています.
TeX のレジスタ数を増やして,新しいプリミティブを追加したもので非常に便利です.

さらに TeX ファイルから直接 PDF ファイルを作成したいという願望が あるのですが,実際に pdfTeX というプログラムが存在します.
これはフォントメトリクスと実フォント(または仮想フォント) の両方にアクセスする事で一気に PDF を作成すると言う強者です.
pdfTeX には e-TeX 拡張の機能も追加されています.

pdfTeX --> LuaTeX

pdfTeX の後継の LuaTeX がリリースされており LuaTeX-ja, BXjscls, jlreq などを使用すれば日本語の組版も可能です.

pTeX --> e-pTeX

pTeX に e-TeX 機能を盛り込ませた e-pTeX が TeX Live に収録されています.

pTeX --> upTeX --> e-upTeX

pTeX を内部 Unicode 化した upTeX があります.
upTeX にも e-TeX 拡張の機能が追加され e-upTeX として TeX Live で使用できます.

XeTeX

XeTeX のページを参照してください.

その他

ConTeXt, ec-fonts, Latin Modern, NFSS, OTF, XyMTeX などのページを参照して下さい.

日本語マニュアル

これまで LaTeX を使おうと思えば,誰かが出版社から出している書籍 を買うのが妥当な選択肢でしたが,私が気合いを入れて大学 2 年の頃に 執筆しました『LaTeXによる論文作成の手引き』を改変しました 『好き好きLaTeX2e/初級編』などが現在ありますので,ウェブ上で LaTeX のマニュアルを手に入れる事が可能です.

日本語クラスファイル

日本語クラスファイルには ZR 氏の管理されて いる BXjscls があります.
BXjscls には bxjsarticle, bxjsreport, bxjsbook などのクラスが同封されています.
もはや何も考えずに BXjscls を 使いましょう.

bxjsarticle
jsarticle の代用となるもの.english オプションを付ける 事で,欧文組の時の行送りになる.その他お得な改良点があるので, 奥村氏の著書『[改訂第7版]LaTeX2e 美文書作成入門』を読むか,私の 書いた『好き好きLaTeX2e/初級編』をご覧になってください.
bxjsreport
レポートや論文作成用のクラスで \chapter 命令を使う事が出来るなどの点で jsbook と report オプションの代用となる.
bxjsbook
jsbook の代わりとなる物で,書籍や論文作成用のクラス.

画像やグラフィックス周辺

今では PDF を直接扱う事が出来る dvipdfmx があります.
今は何も考えずに uplatex + dvipdfmx を使いましょう.

file.tex --(uplatex)--> file.dvi --(dvipdfmx)--> file.pdf

昔は EPS 画像のみしか受け付けないようなデバイスドライバ,例えば dvips のようなデバイスドライバを使用していたので platex で file.tex を file.dvi に変換し, dvips で file.dvi から file.ps を作成し,さらに Ghostscript の pdfwrite を使っていました.

file.tex --(platex)--> file.dvi --(dvips)--> file.ps --(ps2pdf)-->file.pdf

dvipdfmx は TikZ を使用すれば図形が描画できますし, PDF, PNG, JPEG などの画像 にも対応しています.

dvipdfmx を用いる場合は dvips の場合と若干異なる部分がありますが, ある程度気をつけていれば特に問題は発生しないでしょう.

画像を読み込みたい場合は graphicx パッケージを用います.
dvipdfmx を使用する場合は \documentclass[autodetect-engine,dvi=dvipdfmx,ja=standard,jafont=ipaex]{bxjsarticle} または \usepackage[dvipdfmx]{graphicx} のようにオプションに dvipdfmx を指定する必要があります.

\documentclass[autodetect-engine,dvi=dvipdfmx,ja=standard,jafont=ipaex]{bxjsarticle}
\usepackage{graphicx,color}

もっと詳しい用法は dvipdfmx のページを参考にしてください.

その他便利なマクロなど

図形を描画するには TikZ パッケージを使うと何でも出来ます.
dvipdfmx にも対応しています.

ptex2pdf -u -l file.tex

等とすれば,適切な PDF を最終的に作成する事が出来ると思われます.

初等数学の図や数式を記述するのに TikZ を使うこともできます.

漢文とかアクセント記号とかその他の事については 私のサイトを検索するか TeX 国内リンク 等を参考にしてください.

TeX から HTML ファイルに変換するには伝統的には LaTeX2HTML を使うところなのでしょうが, lwarp, plasTeX などを使う事でも TeX から HTML に変換できます. 変換の精度はかなり高いと言って良いでしょう.

また,Java, C++, Prolog, Ada など別に何でも良いのですが,プログラムの ソースコードを line-up するのに単純に verbatim 環境を使ったり,手動で tabbing 環境で調整するよりは minted パッケージを使うのがおすすめで す.これに関しては minted のページで解説しています.

その他,プレゼンの資料を作ると言えば Beamer なのですが,Beamer 以外にも様々なクラスファイルとデバイスドライバの 組み合わせで多種多様なプレゼンスライドの作成が出来ます.

周辺ツールの変遷

現在は種々の執筆支援環境が存在します.

  • LyX: Windows/macOS/Linux 用の執筆支援環境
  • TeXstudio: Windows/macOS/Linux 用の執筆支援環境
  • TeXworks: Windows/macOS/Linux 用の執筆支援環境

以下のプログラムを用いる事もあるかもしれません.

  • Emacs または Vim または Atom: テキストエディッタ
  • Inkscape: お絵描き(ベクトル画像編集ソフト)
  • gnuplot: グラフ・データプロット
  • Python/Ruby: テキスト整形

文字コード問題

ttk 氏や様々な方のお陰で,日本語 TeX においても UTF-8 の テキストを受け付けるような環境が構築できるようになっています.

LaTeX2e News によれば inputenc が utf-8 に対応したのは 200x 年 xx 月という事で,云々.

あるディレクトリ以下の全ての .tex ファイルの文字コードを UTF-8 に変更したいと思ったとき,zsh なら次のように 1 行で 終わりでしょうか.

for f in **/*.tex; {mv $f $f.bak; nkf -w8 -O $f.bak $f}

もうちょっと簡単に出来そうですけど.他にも .bib とか .ist とか