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

2021年11月21日更新
[ English ] [ Obsolete Versions ]

概要

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

土村さんの ptetex3, UTF-8対応(3), UTF-8対応(4), UTF-8対応(5) をベースに開発を進め、TeX Live svn をベースに作成しました。 素晴らしい環境のご提供、ありがとうございます。

主な特徴

配布物

uptex-1.27-20201031a.tar.xz: 本体 [md5sum], 説明, 変更履歴 (2020.10.31)
convbkmk Ver.0.30 @ GitHub (2018.11.25)
CMap UTF8-UTF16 (Ver.1.007) [md5sum] (2020.02.28)
japanese-otf-uptex v0.26 @ GitHub (2020.11.08)
upmendex Ver.1.00 @ GitHub (2021.11.20)
upTeXはTeX Live 2012 以降に含まれています。たくさんの方にお世話になりました。ありがとうございます。
Windows用のupTeXは最新のW32TeX (dead link)に含まれています。角藤さん、ありがとうございます。

GitHubリポジトリー

convbkmk
japanese-otf-uptex
upmendex
dvi2tty

サンプル

(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 のメモリー節約。
2008年08月03日 Ver.0.22 DVIOUTとの組合せ時の問題回避のためフォントを修正。
2008年09月04日 Ver.0.23 dvi2ttyのupTeX対応版: updvi2ttyを追加。
2008年10月17日 Ver.0.24 otfパッケージの本文用vfを追加。
2008年12月13日 Ver.0.25 otfパッケージの本文用vfを更新。
2009年02月21日 Ver.0.26 e-pTeX, e-upTeXの自動インストール。jsclasses upLaTeX版を同梱。
2009年03月12日 Ver.0.27 e-pTeX, e-upTeX FAM256パッチつきの自動インストール。
2009年08月23日 Ver.0.28 dvipsでのしおり作成用convbkmk.rbを新規に追加。
2010年01月31日 Ver.0.29 Unicodeのブロックを更新。
2010年04月10日 Ver.0.30 中国語繁体字フォントにCJK統合漢字Extension Cを追加。
2011年05月02日 [convbkmk.rb] Ver.0.01 BOMが正しくないバグを修正。
2011年05月07日 [uptex-texmf-20110507a.tar.xz] patch形式の代わりにtexmfツリーをパッケージ化。
2011年11月20日 [dvi2tty_uptex20111120.patch.xz] TeXLive svnに含まれるdvi2tty-5.3.4をupTeX対応させるパッチを公開。
2011年12月17日 [omegaware_uptex20111217.patch.xz] TeXLive svnに含まれるovp2ovf, ovf2ovp (WEB版) をupTeX対応させるパッチを公開。
2012年01月02日 [otfbeta-uptex-0.07.tar.xz] otfbeta v1.7b3のupLaTeX拡張を公開。
2012年01月15日 upTeX Ver.1.00: TeXLive svnベース。日本語フォントにCJK統合漢字Extension C,Dを追加。
2012年01月22日 [otfbeta-uptex-0.08.tar.xz] otfbeta v1.7b3のupLaTeX拡張のバグを修正。半角片仮名を改善。
2012年02月18日 [otfbeta-uptex-0.09.tar.xz] otfbeta v1.7b4のupLaTeX拡張。追加面の文字を本文用フォントと\UTF{}, \UTFT{}, \UTFC{}, \UTFM{}に追加。
2012年04月21日 [otfbeta-uptex-0.10.tar.xz] otfbeta v1.7b5のupLaTeX拡張。upLaTeXでのぶら下げ組対応。
2012年04月29日 upTeX Ver.1.10: Unicode 6.1.0対応。
2012年05月08日 [convbkmk.rb] Ver.0.02 dvips -zとRuby1.8の組合せでのバグを修正。/Creator, /Producer の変換を追加。
2012年05月12日 [convbkmk.rb] Ver.0.03 Ruby1.8での半角片仮名から全角片仮名への変換とMIMEデコードを抑制。
2012年05月19日 [CMap UTF8-UTF16] Ver.1.000 新規。dvipdfmxでのしおり作成で補助面の文字に対応。
2012年06月01日 [convbkmk.rb] Ver.0.04 \ddd, \0xUUUU などのエスケープシーケンスに対応。
2012年07月09日 [otfbeta-uptex-0.11.tar.xz] otfbeta v1.7b5のupLaTeX拡張。\UTF{}等をhyperrefとともに使った場合、補助面の文字に対応。
2012年07月26日 [convbkmk.rb] Ver.0.05 dvipdfmxの*.outファイルの変換に対応。
2012年08月07日 [convbkmk.rb] Ver.0.06 Ver.0.05からRuby1.9で動かなくなっていたバグを修正。
2012年09月17日 [convbkmk.rb] Ver.0.07 -gオプションで無限ループになる場合があるバグを修正。
2012年09月21日 upTeX Ver.1.11: dvi2tty-5.4.0でT1,TS1,OT2,T2A,T2B,T2C,X2エンコーディングに対応。
2013年05月11日 [convbkmk.rb] Ver.0.08 出力を上書きする-Oオプションを追加。
2013年06月02日 [otfbeta-uptex-0.12.tar.xz] otfbeta v1.7b5のupLaTeX拡張。極太ゴシック,jis2004オプションに対応。
2013年11月23日 [otfbeta-uptex-0.13.tar.xz] otfbeta v1.7b6のupLaTeX拡張。scaleオプションに対応。
2014年03月02日 [convbkmk.rb] Ver.0.09 変換が一部行われないことがあるバグを修正。
2014年03月08日 [convbkmk.rb] Ver.0.10 Windowsでfilter動作の際バイナリーデータが壊れることがあるバグを修正。
2014年03月22日 [otfbeta-uptex-0.14.tar.xz] otfbeta v1.7b6のupLaTeX拡張。プロポーショナル仮名に対応。
2014年03月28日 [otfbeta-uptex-0.15.tar.xz] otfbeta v1.7b6のupLaTeX拡張。Ver.0.13でv1.7b5更新箇所が戻ってしまっていたのを再適用。
2014年05月10日 [mendexk-utf8-patch-20140510a.tar.xz] mendexkへの新パッチ: 内部バッファをEUCまたはUTF-8に切替え可能に。
2014年07月27日 [otfbeta-uptex-0.16.tar.xz] otfbeta v1.7b6のupLaTeX拡張。Extraboldが出なかったバグを修正。
2014年10月03日 [CMap UTF8-UTF16] Ver.1.001 Unicode-7.0.0の定義文字に対応。
2014年12月29日 upTeX Ver.1.20: Unicode 7.0.0対応。
2014年12月29日 [convbkmk.rb] Ver.0.10a 著者連絡先、公開サイト更新
2015年01月24日 [upmendex] upmendex Ver.0.01 mendexのUnicode版。新規。
2015年04月10日 [otfbeta-uptex-0.17.tar.xz] otfbeta v1.7b6のupLaTeX拡張。ruby関連バグを修正。
2015年05月17日 [upmendex] Ver.0.02 韓国語(ハングル)に対応。
2015年08月08日 [upmendex] Ver.0.03 ダイアクリティカルマーク(ラテン、ギリシャ、キリル文字)に対応。
2015年08月23日 [upmendex] Ver.0.04 ダイグラフ、トライグラフ (ラテン文字)に対応。
2015年09月27日 [upmendex] Ver.0.05 日中韓の漢字に対応。
2015年10月10日 [upmendex] Ver.0.06 トルコ語のdotted/dotless I/iに対応。
2016年01月31日 [upmendex] Ver.0.50 beta版。スタイルオプション(icu_rules, icu_attributes)を追加。
2016年02月13日 [CMap UTF8-UTF16] Ver.1.002 Unicode-8.0.0の定義文字に対応。
2016年02月20日 upTeX Ver.1.21: Unicode-8.0.0の定義文字に対応。中国語繁体字フォントにCJK統合漢字Extension Eを追加。
2016年06月19日 [upmendex] Ver.0.51 スタイルオプション(hanzi_head)のバグを修正。
2016年12月28日 [CMap UTF8-UTF16] Ver.1.003 Unicode-9.0.0の定義文字に対応。
2017年01月15日 upTeX Ver.1.22: Unicode-9.0.0の定義文字に対応。upbibtexの"substring$"のバグを修正。
2017年03月04日 [otfbeta-uptex-0.18.tar.xz] otfbeta v1.7b6のupLaTeX拡張。プロポーショナル仮名を拡張。
2017年07月21日 [CMap UTF8-UTF16] Ver.1.004 Unicode-10.0.0の定義文字に対応。
2018年02月11日 [otfbeta-uptex-0.19.tar.xz] otfbeta v1.7b7のupLaTeX拡張。Unicode-10.0.0の定義文字に対応。日本語・中国語繁体字フォントにCJK統合漢字Extension Fを追加。
2018年02月24日 upTeX Ver.1.23: Unicode-10.0.0の定義文字に対応。ラテン文字のkcatcodeのデフォルト値をnot_cjkに変更。
2018年04月07日 [otfbeta-uptex-0.20.tar.xz] otfbeta v1.7b7のupLaTeX拡張。ギュメなどの括弧類を追加。
2018年05月13日 [otfbeta-uptex-0.21.tar.xz] otfbeta v1.7b7のupLaTeX拡張。二重感嘆符などを追加。
2018年11月11日 [convbkmk] Ver.0.20 Ruby1.8対応を削除。GitHubにレポジトリを作成。
2018年11月15日 [convbkmk] Ver.0.30 pLaTeX出力のdvi specialの画像ファイル名を文字コード変換する-dオプションを追加。
2018年12月08日 [japanese-otf-uptex v0.22] U+3090..3093のバグ修正。GitHubにレポジトリを作成。
2019年02月09日 [CMap UTF8-UTF16] Ver.1.006 Unicode-12.0.0の定義文字に対応。
2019年02月23日 upTeX Ver.1.24: Unicode-12.0.0の定義文字に対応。一部のラテン文字ブロックのkcatcodeのデフォルト値をnot_cjkに変更。
2019年03月17日 [upmendex] Ver.0.52 英語マニュアルを追加。GitHubにレポジトリを作成。
2019年04月01日 [japanese-otf-uptex v0.23] プロポーショナル仮名に「ヿ」「ゟ」を追加。
2019年05月12日 upTeX Ver.1.25: 全角英数,半角片仮名のkcatcodeのバグを修正。
2019年09月07日 [japanese-otf-uptex v0.24] 一部のフォントでU+00B7を半角に変更。
2020年02月22日 [upmendex] Ver.0.54 Unicode 12.0の"Small Kana Extension"に対応。
2020年02月22日 upTeX Ver.1.26: Unicode-13.0.0の定義文字に対応。
2020年02月28日 [CMap UTF8-UTF16] Ver.1.007 Unicode-13.0.0の定義文字に対応。
2020年02月28日 [japanese-otf-uptex v0.25] Adobe-Japan1-7 (07/30/2019)を参照。
2020年10月31日 upTeX Ver.1.27: upbibtexの"is.kanji.str$"を更新。
2020年11月08日 [japanese-otf-uptex v0.26] \UTF{}, \UTFC{}, \UTFT{}, \UTFK{}をUnicode化、多書体化。一部の本文用vfを軽量化。
2021年03月21日 [upmendex] Ver.0.55 スタイルの"page_precedence"に関するバグ修正。
2021年05月19日 [upmendex] Ver.0.56 スタイルの"setpage_prefix", "setpage_suffix"に関するバグ修正。
2021年06月06日 [upmendex] Ver.0.57 複数のスタイルファイルの読み込みを可能に。スタイルにキーワード"kana_head"を追加。"Circled Katakana"を仮名に追加。
2021年08月08日 [upmendex] Ver.0.58 デーヴァナーガリー、タイ文字に実験的に対応。ICU attributesにオプション"numeric_ordering"を追加。スタイルにキーワード"hangul_head"を追加。
2021年09月04日 [upmendex] Ver.0.59 スタイルで"icu_local"と"icu_rules"の組み合わせに対応、"symbol_flag=2"を追加。
2021年10月24日 [upmendex] Ver.0.60 文字クラスの分類手法を改良。
2021年11月21日 [upmendex] Ver.1.00 アラビア文字、ヘブライ文字に実験的に対応。スタイルにキーワード"script_preamble","script_postamble"を追加。

旧版

旧版はこちら

関連文書

JIS-Unicode conversion table for pTeX/upTeX (2013/02/24)
"upTeX—Unicode version of pTeX with CJK extensions" TUGboat 34:3 2013

関連リンク (本サイト外)

サイト運営者に感謝します。
TeX Live TeX Live home, TeX Live and Subversion TeX Live 開発版。
ptetex3 土村さん。
電脳世界の奥底にて ZRさん。解説や各種パッケージ。 upLaTeXを使おう, [改訂新版] upLaTeXを使おう など。
e-pTeXについてのwiki 北川さん。pTeX, upTeX の e-TeX 拡張。
upTeX on Debian 香田さん。
JIS X 0212 Characters for pTeX 小川さん。Mac版。

$Lastupdate: Sun Nov 21 12:15:14 2021 $
Tanaka