upTeX, upLaTeX − 内部Unicode版 pTeX, pLaTeX の実装実験

2008年03月13日更新
[ English ]

概要

ASCII pTeXの内部コードをUnicodeにする実験をしています。 pTeX, pLaTeXのUnicode版: `upTeX', `upLaTeX' と名付けました。
入出力のエンコーディングをUTF-8とし、U+FFFFまでの範囲は漢字/仮名/和文記号/ハングルとして、さらに、Unicodeの最大値U+10FFFFまでの範囲は漢字として扱うことが出来ます。
また\kcatcodeの設定切替えで欧文LaTeXの\inputenc{utf8}やBabelが障害なく利用でき、和文や中韓の言語と共存もできます。
ASCII pTeXのほぼ上位互換となっており、従来のEUCやSJISの動作に切替えることも可能です。

土村さんの ptetex3 ならびに UTF-8対応(3) , UTF-8対応(4) をベースに作成しました。 素晴らしいパッケージのご提供、ありがとうございます。

主な特徴

配布物

uptex-0.21.tar.gz:patch本体, 同readme (2008.03.13)
uptex_font-0.19.tar.gz:フォントのバイナリー (2007.12.26)
Windows用のupTeXは最新のW32TeXに含まれています。角藤さん、ありがとうございます。

サンプル

(1) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX, 日本語縦組)
(2) upTeX入力 dvipdfmx出力(pdf) (plain upTeX, 中国語)
(3) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX, 中国語縦組)
(4a) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX+hyperref, いろいろなテスト)
(4b) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX+hyperref, BMP超, set3のテスト)
(5a) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX, babel+CJK)
(5b) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX, babel(greek)+Japanese)
(6a) upTeX入力 dvipdfmx出力(pdf) (upTeX, Adobe-Japan1-6)
(6b) upTeX入力 dvipdfmx出力(pdf) (upTeX, Adobe-GB1-5)
(6c) upTeX入力 dvipdfmx出力(pdf) (upTeX, Adobe-CNS1-5)
(6d) upTeX入力 dvipdfmx出力(pdf) (upTeX, Adobe-Korea1-2)
(6e) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX+otfパッケージ, Adobe-Japan1-5)
(6f) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX+otfパッケージ, Adobe-GB1-5)
(6g) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX+otfパッケージ, Adobe-CNS1-5)
(6h) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX+otfパッケージ, Adobe-Korea1-2)
(7) jmpost入力 dvipdfmx出力(pdf) (jmpost+upLaTeX)
(8a) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX+utfパッケージ)
(8b) upLaTeX入力 dvipdfmx出力(pdf) (upLaTeX+otfパッケージ)
※pdfに和文・漢字・CJKフォントは埋め込んでいません。Adobe-Japan1-6, Adobe-GB1-5, Adobe-CNS1-5, Adobe-Korea1-2に対応したpdf閲覧ソフトが必要です。

既知の問題点・懸念事項

課題山積。 とりあえず動くα版で、細部の品質はまだまだ。 横組での破綻はほとんどなくなったと思うが、未整備な部分も多い。 大きなバグは見つかりにくくなってきたが、 今後も仕様変更が続くので安定性が落ちる可能性もある。

主な更新箇所

2007年03月08日 Ver.0.02 初公開版
2007年03月18日 Ver.0.03 自動インストールスクリプトを追加。jmpostが動作するようになった。
2007年03月25日 Ver.0.04 ptexenc とのすり合わせ
2007年04月08日 Ver.0.05 log等での改行の問題を改善。jsclassesへの簡易対応。
2007年04月15日 Ver.0.06 プリミティヴ\enablecjktoken, \disablecjktoken を追加。
2007年05月13日 Ver.0.07 内部トークンをkcatcode+文字コードに変更。
2007年05月28日 Ver.0.08 utf/otfパッケージに簡易対応。cm-superの自動インストール。\char, \chardef の改善
2007年06月16日 Ver.0.09 cbfonts, unicodeパッケージの自動インストール。
2007年07月28日 Ver.0.10 \char, \chardef の動作変更。和文用\kchar, \kchardef を追加。jbibtexの更新。
2007年08月07日 Ver.0.11 jcharwidowpenalty関連のバグ修正, 付属vfの軽量化。
2007年08月25日 Ver.0.12 可変バイトの処理関係のバグ修正、 JIS→Unicode変換の固定化、ハングルの改良。
2007年09月15日 Ver.0.13 標準フォントをmin10.tfm系からjis.tfm系に変更、{uj,ut}{book,report}.cls 追加。
2007年09月25日 Ver.0.14 英語版readme追加。
2007年10月18日 Ver.0.15 upLaTeXを最新版pLaTeXベースに更新。otfパッケージで\CIDC, \UTFT などが動作するようになった。
2007年11月10日 Ver.0.16 標準フォントを縦横比1:1の新フォントに変更、中韓のフォントにSans Serif用を追加。
2007年11月17日 Ver.0.17 標準フォントの公称10ptを9.62216ptから10ptに変更。
2007年12月08日 Ver.0.18 標準フォントで横組時に半角片仮名に対応。
2007年12月26日 Ver.0.19 半角片仮名の改善。プリミティヴ\forcecjktoken を追加。
2008年01月12日 Ver.0.20 upjbibtex, upjmpostなど、一部のパッチ適用コマンド名に"up"の接頭辞を付加した。
2008年03月13日 Ver.0.21 \uppercase, \lowercase のバグ修正。xdvi, dvips, dvipdfmx のメモリー節約。

旧版

uptex-0.14.tar.gz:patch本体, uptex_font-0.13.tar.gz:フォントのバイナリー
uptex-0.15.tar.gz:patch本体, uptex_font-0.13.tar.gz:フォントのバイナリー
uptex-0.16.tar.gz:patch本体, uptex_font-0.16.tar.gz:フォントのバイナリー
uptex-0.17.tar.gz:patch本体, uptex_font-0.17.tar.gz:フォントのバイナリー
uptex-0.18.tar.gz:patch本体, uptex_font-0.18.tar.gz:フォントのバイナリー
uptex-0.19.tar.gz:patch本体, uptex_font-0.19.tar.gz:フォントのバイナリー
uptex-0.20.tar.gz:patch本体, uptex_font-0.19.tar.gz:フォントのバイナリー

$Lastupdate: Thu Mar 13 01:29:18 2008 $
Tanaka