From c7ecdfe2e07e2e010de5e2a8d94c001c5dc9fc27 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 1 Aug 2022 03:04:31 +0000 Subject: CTAN sync 202208010304 --- language/japanese/pxjahyper/LICENSE | 21 - language/japanese/pxjahyper/README-ja.md | 192 --- language/japanese/pxjahyper/README.md | 86 -- language/japanese/pxjahyper/pxjahyper-ajm.def | 807 ----------- language/japanese/pxjahyper/pxjahyper-enc.sty | 146 -- language/japanese/pxjahyper/pxjahyper-uni.def | 104 -- language/japanese/pxjahyper/pxjahyper.pdf | Bin 155851 -> 0 bytes language/japanese/pxjahyper/pxjahyper.sty | 1871 ------------------------- language/japanese/pxjahyper/pxjahyper.tex | 428 ------ 9 files changed, 3655 deletions(-) delete mode 100644 language/japanese/pxjahyper/LICENSE delete mode 100644 language/japanese/pxjahyper/README-ja.md delete mode 100644 language/japanese/pxjahyper/README.md delete mode 100644 language/japanese/pxjahyper/pxjahyper-ajm.def delete mode 100644 language/japanese/pxjahyper/pxjahyper-enc.sty delete mode 100644 language/japanese/pxjahyper/pxjahyper-uni.def delete mode 100644 language/japanese/pxjahyper/pxjahyper.pdf delete mode 100644 language/japanese/pxjahyper/pxjahyper.sty delete mode 100644 language/japanese/pxjahyper/pxjahyper.tex (limited to 'language/japanese/pxjahyper') diff --git a/language/japanese/pxjahyper/LICENSE b/language/japanese/pxjahyper/LICENSE deleted file mode 100644 index 06bc0c12ee..0000000000 --- a/language/japanese/pxjahyper/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License - -Copyright (c) 2012-2022 Takayuki YATO (aka. "ZR") - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/language/japanese/pxjahyper/README-ja.md b/language/japanese/pxjahyper/README-ja.md deleted file mode 100644 index 529403a007..0000000000 --- a/language/japanese/pxjahyper/README-ja.md +++ /dev/null @@ -1,192 +0,0 @@ -PXjahyper パッケージバンドル -============================ - -LaTeX: pLaTeX 上での hyperref のサポート - -(u)pLaTeX 上で hyperref を用いて日本語の文書情報を含む PDF 文書を作成する -場合に必要となる以下の機能を提供する。 - - * PDF 文字列内の和文文字のサポート - * mag 指定に対するサポート - -### 前提環境 - - * フォーマット: LaTeX - * エンジン: - - pTeX 3.0版以降 - - upTeX 0.10版以降 - - pTeX-ng (試験的) - ※一部の機能では e-TeX 拡張が必要。 - * DVIウェア: dvipdfmx - * 依存パッケージ: - - atbegshi - - hyperref - * 一部の機能で必要なパッケージ: - - japanese-otf - - etoolbox - - bxjatoucs - -### インストール - - - `*.sty`, `*.def` → $TEXMF/tex/platex/PXjahyper - -### ライセンス - -本パッケージは MIT ライセンスの下で配布される。 - - -pxjahyper パッケージ ー 本体 ----------------------------- - -詳細についてはマニュアル `pxjahyper.pdf` を参照されたい。 - - -pxjahyper-enc パッケージ ー 文字コード設定 ------------------------------------------- - -他のパッケージの内部で読み込むために pxjahyper から機能を抜粋して作った -パッケージであり、DVI ファイル中の PDF 文字列の漢字コードを指定するため -の「tounicode special」を出力する機能のみをもつ。 - -※文書作成者は pxjahyper を読み込むことが推奨される。 - -### パッケージオプション - -※オプション無しでの読込が望ましいが、一応グローバルのドライバオプション -に反応するようにしている。 - - * ドライバオプション:`dvipdfmx`/`dvips`/`nodvidriver` があり、 - `dvipdfmx` 以外を指定した場合はパッケージの機能を無効化する。 - -### 機能 - -パッケージを読み込むと、既定動作として、エンジンの内部漢字コードに基づき -適切な「tounicode special」を出力する。 - - * `\suppressbigcode`:内部漢字コードが Unicode のときに、`UTF8-UTF16` - ではなく `UTF8-UCS2` の CMap を指定する。 - * `\suppressdefaulttounicode`:既定動作を無効にする。 - * `\pxjahyperToUnicodeSpecial{<名前>}`:引数の CMap 名を指定して - 「tounicode special」を出力する。 - - -更新履歴 --------- - - * Version 1.2 〈2022/05/27〉 - - LaTeX カーネル 2022/06/01 版への対応。 - - `\pxjahypersetup` を追加。 - - 設定キー `fallback` を追加。 - - `\pxDeclarePdfTextCommand/Composite` の不具合を修正。 - - (試験的) 設定キー `extjis` を追加。 - - (試験的) 設定キー `ajhankaku-chars` を追加。 - - * Version 1.1 〈2022/05/10〉 - - オプション `fallback-geta`/`fallback-delete` を追加。 - - `\Uchar` を利用したUnicode文字出力をサポート。 - - オプション `(no)charcmds` を追加。 - - hyperref のドライバ指定が非サポートの場合に警告する。 - - `otfmacros` オプション指定の条件を撤廃する。 - - `autodvidriver` を `resetdvidriver` に変える。 - - * Version 1.0a 〈2022/04/15〉 - - バグ修正。 - - * Version 1.0 〈2022/04/01〉 - - オプション `auto` を `autodvidriver` に改名(旧名は非推奨)。 - - オプション `nodvidriver` の非推奨の旧名 `none`を廃止した。 - - `disablecmds` の対象に jsclasses 独自の命令を追加した。 - - (試験的)“pTeX + hyperref unicode モード”に対するサポート。 - - * Version 0.9d 〈2022/03/15〉 - - LaTeX カーネル 2021/11/15 版への対応。(thanks: @wtsnjp さん) - - * Version 0.9c 〈2021/06/06〉 - - pxjahyper-uni モジュールを実際に使用する。 - - * Version 0.9b 〈2021/05/29〉 - - PDF 文字列中で pxbabel の `\UTFJ` をサポート。 - - モジュール pxjahyper-uni.def を追加。 - - * Version 0.9a 〈2021/05/11〉 - - バグ修正。 - - * Version 0.9 〈2021/05/10〉 - - パッケージオプションの整理:`(no)papersize`、`convbkmk`、 - `(no)otfutf` を追加。 - - out2uni のエスケープ出力で UTF-16 を正しく扱う。 - - pLaTeX で tounicode 前提の動作をするときに、`\Ux` 等の Unicode - 符号入力についてフォールバック(ゲタ文字出力)を行う。 - - * Version 0.8 〈2021/05/05〉 - - japanese-otf パッケージに対する実行のタイミングをパッケージ読込 - の直後に変更した。 - - (試験的) `(no)papersize` オプション。 - - * Version 0.7b 〈2021/02/26〉 - - バグ修正。 - - * Version 0.7a 〈2021/02/23〉 - - バグ修正。 - - * Version 0.7 〈2021/02/13〉 - - 「upLaTeX での hyperref の `unicode` 指定への対応」を正式サポート - の扱いとする。一部の正常動作しなかった機能についても対応させる。 - - * Version 0.6a 〈2020/10/10〉 - - pxjahyper-enc:`dvips` 指定時はエラーでなく警告を出す。 - - * Version 0.6 〈2020/10/05〉 - - pxjahyper-enc パッケージを追加した。 - - `otfmacros` オプションを既定で有効にする。 - - * Version 0.5b 〈2020/10/04〉 - - バグ修正。 - - * Version 0.5a 〈2020/09/27〉 - - LaTeX カーネル 2020/10/01 版への対応。 - - * Version 0.5 〈2020/06/13〉 - - `otfmacros` オプションを正式にサポート。 - - `disablecmds` オプションを追加。 - - `none`(`nodvidriver` の別名)を非推奨とする。 - - * Version 0.4b 〈2020/04/24〉 - - `\copyright` の再定義をやめる。 - - * Version 0.4a 〈2019/11/23〉 - - (試験的) PDF 文字列中で japanese-otf の文字入力マクロをサポート - (`otfmacros` オプション) - - * Version 0.4 〈2019/10/25〉 - - PDF 文字列中で `\CID` をサポート(`otfcid` オプション) - - * Version 0.3e 〈2019/06/20〉 - - hyperref の `unicode` 指定が後から変更された場合はエラーを出す。 - - * Version 0.3d 〈2018/07/15〉 - - バグ修正。 - - * Version 0.3c 〈2018/01/25〉 - - バグ修正。 - - * Version 0.3b 〈2018/01/13〉 - - パッケージ定義の PDF 文字列の文字定義を拡充した。 - - (試験的) 自動判別の誤判定を防ぐため、アウトラインファイルに - 日本語文字のコメントを含ませておく。 - - (試験的) `(no)jacommentline` オプション。 - - * Version 0.3a 〈2017/10/17〉 - - `bigcode` を既定に変更。 - - (試験的) upLaTeX で hyperref の `unicode` 指定を可能にする。 - - * Version 0.3 〈2012/05/28〉 - - papersize special の調整機能を追加。 - - `\Ux` を追加。 - - * Version 0.2 〈2012/05/27〉 - - 最初の公開版。 - --------------------- -Takayuki YATO (aka. "ZR") -https://github.com/zr-tex8r diff --git a/language/japanese/pxjahyper/README.md b/language/japanese/pxjahyper/README.md deleted file mode 100644 index 747584df8f..0000000000 --- a/language/japanese/pxjahyper/README.md +++ /dev/null @@ -1,86 +0,0 @@ -PXjahyper Package -================= - -LaTeX: Hyperref support for pLaTeX - -This package adjusts the behavior of hyperref on (u)pLaTeX so that authors -can properly create PDF documents that contain document information in -Japanese. - - * Support for PDF strings containing Japanese characters. - * Support for magnification settings. - -### System Requirements - - * TeX format: LaTeX. - * TeX engine: pTeX, upTeX, pTeX-ng. - Some features require the e-TeX extension. - * DVI-ware: dvipdfmx. - * Dependent packages: - - atbegshi - - hyperref - * Packages required by some features: - - japanese-otf - - etoolbox - - bxjatoucs - -### Installation - - - `*.sty`, `*.def` → $TEXMF/tex/platex/PXjahyper - -### License - -This package is distributed under the MIT License. - - -The pxjahyper Package ー main ------------------------------ - -Please refer to the manual `pxjahyper.pdf` (in Japanese) for detail. - - -The pxjahyper-enc Package ー Encoding setting ---------------------------------------------- - -This is a single-feature package excerpted from the pxjahyper package, -and is provided for internal use from other packages. - -It only issues a "tounicode special” for specifying the encoding of -the PDF strings in the output DVI file. - - -Revision History ----------------- - - * Version 1.2 〈2022/05/27〉 - * Version 1.1 〈2022/05/10〉 - * Version 1.0a 〈2022/04/15〉 - * Version 1.0 〈2022/04/01〉 - * Version 0.9d 〈2022/03/15〉 - * Version 0.9c 〈2021/06/06〉 - * Version 0.9b 〈2021/05/29〉 - * Version 0.9a 〈2021/05/11〉 - * Version 0.9 〈2021/05/10〉 - * Version 0.8 〈2021/05/05〉 - * Version 0.7b 〈2021/02/26〉 - * Version 0.7a 〈2021/02/23〉 - * Version 0.7 〈2021/02/13〉 - * Version 0.6a 〈2020/10/10〉 - * Version 0.6 〈2020/10/05〉 - * Version 0.5b 〈2020/10/04〉 - * Version 0.5a 〈2020/09/27〉 - * Version 0.5 〈2020/06/13〉 - * Version 0.4b 〈2020/04/24〉 - * Version 0.4a 〈2019/11/23〉 - * Version 0.4 〈2019/10/25〉 - * Version 0.3e 〈2019/06/20〉 - * Version 0.3d 〈2018/07/15〉 - * Version 0.3c 〈2018/01/25〉 - * Version 0.3b 〈2018/01/13〉 - * Version 0.3a 〈2017/10/17〉 - * Version 0.3 〈2012/05/28〉 - * Version 0.2 〈2012/05/27〉 - --------------------- -Takayuki YATO (aka. "ZR") -https://github.com/zr-tex8r diff --git a/language/japanese/pxjahyper/pxjahyper-ajm.def b/language/japanese/pxjahyper/pxjahyper-ajm.def deleted file mode 100644 index d362b1df8f..0000000000 --- a/language/japanese/pxjahyper/pxjahyper-ajm.def +++ /dev/null @@ -1,807 +0,0 @@ -%% -%% This is file 'pxjahyper-ajm.def'. -%% -%% Copyright (c) 2012-2022 Takayuki YATO (aka. "ZR") -%% GitHub: https://github.com/zr-tex8r -%% Twitter: @zr_tex8r -%% -%% This package is distributed under the MIT License. -%% -%% このファイルは日本語文字を含みます. - -%% package declaration -\NeedsTeXFormat{pLaTeX2e} -\ProvidesFile{pxjahyper-ajm.def}[2022/05/27 v1.2] - -%% avoid multiple loading -\csname pxjahyperajmLoaded\endcsname -\def\pxjahyperajmLoaded{\endinput} -%% force UTF-8 -\ifx\epTeXinputencoding\@undefined\else - \epTeXinputencoding utf8 -\fi - -%--------------------------------------- general - -% Note: Here 'etoolbox' is already loaded. - -%% check engine -\ifx\numexpr\@undefined \endinput \fi - -%% \pxhy@macro@name@list -% The \do-list of the name of macros to be redefined. -\let\pxhy@macro@name@list\@empty - -%% \pxhy@ : the prefix -\def\pxhy@{pxhy@aj@@} - -%% \pxhy@cond@both\ifXXX...\fi\ifYYY...\fi{}{} -% Checks whether \ifXXX and \ifYYY both hold. -\@gobbletwo\if\if\@gobbletwo\if\if \def\pxhy@cond@both#1\fi#2\fi{% - \pxhy@cond{\if #1#2T\else F\fi\else F\fi T}\fi -} - -%% \pxhy@if@plus{}{} -% Expands to if followed by +, otherwise to . -\def\pxhy@if@plus#1#2#3{% #3=next-arg - \expandafter\pxhy@if@plus@a\detokenize{#3}@{#1}+@{#2{#3}}\pxhy@mk -} -\def\pxhy@if@plus@a#1+@#2#3\pxhy@mk{#2} - -%% \pxhy@shift{}{} -% Expands to \pxhy@fast@CID with the value of x+y. -\def\pxhy@shift#1#2{% - \expandafter\pxhy@shift@a\the\numexpr(#1)+(#2)\pxhy@mk -} -\def\pxhy@shift@a#1\pxhy@mk{% - \pxhy@fast@CID{#1}% -} - -%% \pxhy@numeral{} -% Expands to the Western numeral. -\def\pxhy@numeral#1{% - \expandafter\pxhy@numeral@a\number#1\pxhy@mk -}% \pxhy@mk ensures termination -\def\pxhy@numeral@a#1\pxhy@mk{#1} - -%% \pxhy@two@digits{} -% Expands to the Western numeral. -\def\pxhy@two@digits#1{% - \expandafter\pxhy@two@digits@a\number#1\pxhy@mk -}% \pxhy@mk ensures termination -\def\pxhy@two@digits@a#1\pxhy@mk{% - \ifnum#1<10 0\fi #1% -} - -%--------------------------------------- kanji numerals - -%% \pxhy@kdigit{} -\def\pxhy@kdigit#1{% - \ifcase#1〇\or 一\or 二\or 三\or 四\or 五\or 六\or 七\or 八\or 九\fi -} - -%% \pxhy@each@digit{}\CScont -% Expands to \CScont{}{}. -\def\pxhy@each@digit#1#2{% - \ifnum#1>\m@ne \ifnum#1<100 - \expandafter\pxhy@each@digit@a\number#1..\pxhy@mk{#2}% - \fi\fi -} -\def\pxhy@each@digit@a#1#2#3\pxhy@mk#4{% - \if.#2#40#1\else#4#1#2\fi -} - -%% \pxhy@knumeral{} -% Expands to the kanji numeral according to Japanese reading. -\def\pxhy@knumeral#1{% - \pxhy@each@digit{#1}\pxhy@knumeral@a -} -\def\pxhy@knumeral@a#1#2{% - \ifnum#1#2=\z@ \pxhy@kdigit0% - \else - \ifcase#1 \or 十\else \pxhy@kdigit#1十\fi - \ifcase#2 \else \pxhy@kdigit#2\fi - \fi -} - -%--------------------------------------- \pdfstringdef hook - -\pdfstringdefDisableCommands{% - % invoke the redefinitions - \def\do#1{\expandafter\let\csname aj#1\expandafter\endcsname - \csname \pxhy@#1\endcsname}% - \pxhy@macro@name@list -} - -%======================================= -% Macro Definitions -\begingroup % entering a big group -%--------------------------------------- helpers - -%% prepare -\pxhy@forcecjktoken{0} - -%% shorthands -\catcode`\`=\active \let`\noexpand -\def\@{\unexpanded} -\def\@@{\expandonce} -\def\CID{\pxhy@CID} - -%% \#{} -% Expands to the value of the expression. -\def\##1{\the\numexpr#1\relax\space} - -%% \pxhy@def{}... -\def\pxhy@def#1{\csxdef{\pxhy@#1}} - -%% \pxhy@DeclareMacro{}...{} -% Declares (with \xdef) the pdfstring version of the aj-macro -% \[aj]. -\def\pxhy@DeclareMacro#1{% - \xappto\pxhy@macro@name@list{`\do{#1}}% - \pxhy@def{#1}% -} - -%% \pxhy@DeclareMacroVar{}...{}{} -% Variant of \pxhy@DeclareMacro, where the *-variant of the macro -% is declared. The parameter '...' will be shared with both forms. -\def\pxhy@DeclareMacroVar#1{% - \xappto\pxhy@macro@name@list{`\do{#1}}% - \edef\pxhy@next{{\@nameuse{\pxhy@#1}}% - {\@nameuse{\pxhy@#1@N}}{\@nameuse{\pxhy@#1@V}}}% - \expandafter\pxhy@decl@macro@var@a\pxhy@next -} -\def\pxhy@decl@macro@var@a#1#2#3#4#{% - \gdef#1{\pxhy@if@star#3#2}% - \toks@{\xdef#3#4}\def\pxhy@next{\the\toks@}% - \afterassignment\pxhy@next \xdef#2#4% -} - -%% \pxhy@DeclareAlias{}{} -% Defines an alies. -\def\pxhy@DeclareAlias#1#2{% - \xappto\pxhy@macro@name@list{`\do{#1}}% - \global\csletcs{\pxhy@#1}{\pxhy@#2}% -} - -%% \pxhy@range{}{/,...} -% Expands to the code of a range switch. -\def\pxhy@range#1#2{% - \pxhy@range@a{#1}#2/#1,*/*,\pxhy@mk -} -\def\pxhy@range@a#1#2/#3,#4\pxhy@mk{% - \ifstrempty{#4}{#1}{%else - `\ifnum##1<\#{#2}#1% - `\else\pxhy@range@a{#3}#4\pxhy@mk`\fi}% -} - -%% \pxhy@rshift{/,...} -% \pxhy@shift with a range switch. -\def\pxhy@rshift#1{% - \pxhy@shift{##1}{\pxhy@range{-1000}{#1}}% -} - -%% \pxhy@twirange{}{} -% Special kind of range switch, used in \ajKaku etc. -\def\pxhy@twirange#1#2{% - `\ifnum##1<\#{0}`\else`\ifnum##1<\#{10}\pxhy@shift{##1*2}{#1}% - `\else`\ifnum##1<\#{101}\pxhy@shift{##1}{#2}% - `\fi`\fi`\fi -} - -%% \pxhy@fallback{}{}{}{}{} -\def\pxhy@fallback#1#2#3#4#5{% - `\ifnum##1<\#{#1}`\else`\ifnum##1>\#{#3}`\else - \ifnum\#{#1}=\#{#2}#5% - \else `\ifnum##1<\#{#2}#4`\else#5`\fi - \fi - `\fi`\fi -} - -%% freeze 'em -\let\UTF\relax -\let\pxhy@CID\relax -\let\pxhy@fast@CID\relax -\let\pxhy@if@star\relax -\let\pxhy@if@plus\relax -\let\pxhy@shift\relax -\let\pxhy@numeral\relax -\let\pxhy@two@digits\relax -\let\pxhy@knumeral\relax - -%--------------------------------------- the redefinitions - -% A text command invoked in PDF-sttings must be "string-OK". -% Here a text command is "string-OK" if both: -% - fully expandable, and -% - comprised only of "Unicode-OK" glyphs. -% Here a glyph is "unicode-OK" if either: -% - representable as a single Unicode character, or -% - well-substituted with a single Unicode character. -% When the original definition of an aj-macro command is not string-OK -% (marked as ), then the command must be redefeind. - -%% \ajTsumesuji{} -%% \ajTsumesuji*{} -% Simply expands to the string. -\pxhy@DeclareMacroVar{Tsumesuji}#1#2{#2}{} -% \ajTsumesuji* takes only one argument. -\pxhy@def{Tsumesuji@V}#1{#1} - -%----------------------- -% Enclosed letters - -% None of the aj-macros for enclosed letters are fully expandable, -% so they all must be redefined. -% The glyphs for enclosed alphabet and kana letters are Unicode-OK -% (\ajMaruKata{1} is U+32d0(㋐), and \ajMaruHira{1} fallbacks to plain -% あ letter), but some of those for enclosed numbers are not Unicode-OK -% (\ajMaru{51} does not have a good fallback), and thus should give an -% alternative fallback string (\ajMaru{51}→“51”). -% Note: for some enclosed numbers, glyphs with different enclosure are -% used as fallback (e.g. \ajKuroMaru{21}→“㉑)”. - -%% \ajMaru[*]{} -\pxhy@DeclareMacroVar{Maru}#1{%N - \pxhy@fallback{0}{51}{100}{% - \pxhy@rshift{0/8224,1/7554,21/8070,22/8080,32/10212,101}% - }{\pxhy@numeral{#1}}% -}{%V - \pxhy@fallback{0}{0}{100}{% - \pxhy@rshift{0/10234,10/7554,21/8070,22/8080,32/10212,101}% - }{`\ajMaru{#1}}% -} -%% \ajKuroMaru[*]{} -\pxhy@DeclareMacroVar{KuroMaru}#1{%N - \pxhy@fallback{0}{21}{100}{% - \pxhy@rshift{0/10503,1/8285,10/10504,101}% - }{`\ajMaru{#1}}% -}{%V - \pxhy@fallback{0}{0}{100}{% - \pxhy@rshift{0/10504,101}% - }{`\ajKuroMaru{#1}}% -} -%% \ajKaku[*]{} -\pxhy@DeclareMacroVar{Kaku}#1{%N - \pxhy@fallback{0}{0}{100}{% - \pxhy@twirange{10764}{10774}% - }{`\ajMaru{#1}}% -}{%V - \pxhy@fallback{0}{0}{100}{% - \pxhy@twirange{10765}{10774}% - }{`\ajMaru{#1}}% -} -%% \ajKuroKaku[*]{} -\pxhy@DeclareMacroVar{KuroKaku}#1{%N - \pxhy@fallback{0}{0}{100}{% - \pxhy@twirange{11037}{11047}% - }{`\ajMaru{#1}}% -}{%V - \pxhy@fallback{0}{0}{100}{% - \pxhy@twirange{11038}{11047}% - }{`\ajMaru{#1}}% -} -%% \ajMaruKaku[*]{} -\pxhy@DeclareMacroVar{MaruKaku}#1{%N - \pxhy@fallback{0}{0}{100}{% - \pxhy@twirange{11307}{11317}% - }{`\ajMaru{#1}}% -}{%V - \pxhy@fallback{0}{0}{100}{% - `\ajMaru{#1}%fallback - \pxhy@twirange{11308}{11317}% - }{`\ajMaru{#1}}% -} -%% \ajKuroMaruKaku[*]{} -\pxhy@DeclareMacroVar{KuroMaruKaku}#1{%N - \pxhy@fallback{0}{0}{100}{% - \pxhy@twirange{11576}{11586}% - }{`\ajMaru{#1}}% -}{%V - \pxhy@fallback{0}{0}{100}{% - \pxhy@twirange{11577}{11586}% - }{`\ajMaru{#1}}% -} -%% \ajKakko[*]{} -\pxhy@DeclareMacroVar{Kakko}#1{%N - \pxhy@fallback{0}{21}{100}{% - \pxhy@rshift{0/8227,1/8070,21/9873,101}% - }{(\pxhy@numeral{#1})}% -}{%V - \pxhy@fallback{0}{0}{100}{% - \pxhy@rshift{0/9884,10/8070,21/9873,101}% - }{`\ajKakko{#1}}% -} -%% \ajRoman[*]{} -\pxhy@DeclareMacroVar{Roman}#1{%N - \pxhy@fallback{1}{13}{15}{% - \pxhy@rshift{1/7574,11/8214,13/8282,16}% - }{`\@Roman{#1}}% -}{%V - \pxhy@fallback{1}{1}{15}{% - \pxhy@rshift{1/7574,4/9879,5/7574,11/8214,13/8282,16}% - }{`\ifnum#1=\#{4}IIII`\else`\ajRoman{#1}`\fi}% -} -%% \ajroman{} -\pxhy@DeclareMacro{roman}#1{% - \pxhy@fallback{1}{13}{15}{% - \pxhy@rshift{1/8091,11/8287,16}% - }{`\@roman{#1}}% -} -%% \ajPeriod{} -\pxhy@DeclareMacro{Period}#1{% - \pxhy@fallback{0}{1}{11}{% - 0.% - }{\pxhy@rshift{0/8061,10/20577,12}}% -} -%% \ajKakkoYobi{} -\pxhy@DeclareMacro{KakkoYobi}#1{\pxhy@rshift{1/8196,10}} -%% \ajKakkoroman{} -\pxhy@DeclareMacro{Kakkoroman}#1{% - \pxhy@fallback{1}{1}{15}{% - \pxhy@rshift{1/9973,16}% - }{(`\ajroman{#1})}% -} -%% \ajKakkoRoman{} -\pxhy@DeclareMacro{KakkoRoman}#1{% - \pxhy@fallback{1}{1}{15}{% - \pxhy@rshift{1/9988,16}% - }{(`\ajRoman{#1})}% -} -%% \ajKakkoalph{} -\pxhy@DeclareMacro{Kakkoalph}#1{\pxhy@rshift{1/8111,27}} -%% \ajKakkoAlph{} -\pxhy@DeclareMacro{KakkoAlph}#1{\pxhy@rshift{1/10003,27}} -%% \ajKakkoHira{} -\pxhy@DeclareMacro{KakkoHira}#1{% - \pxhy@fallback{1}{1}{48}{% - \pxhy@rshift{1/10029,49}% - }{(\pxhy@rshift{1/10029,49})}% with parens -} -%% \ajKakkoKata{} -\pxhy@DeclareMacro{KakkoKata}#1{% - \pxhy@fallback{1}{1}{48}{% - \pxhy@rshift{1/10077,49}% - }{(\pxhy@rshift{1/10077,49})}% with parens -} -%% \ajKakkoKansuji{} -\pxhy@DeclareMacro{KakkoKansuji}#1{% - \pxhy@fallback{1}{11}{20}{% - \pxhy@rshift{1/10125,21}% - }{(\pxhy@knumeral{#1})}% -} -%% \ajMaruKansuji{} -\pxhy@DeclareMacro{MaruKansuji}#1{\pxhy@rshift{1/10460,11}} -%% \ajMarualph{} -\pxhy@DeclareMacro{Marualph}#1{\pxhy@rshift{1/10312,27}} -%% \ajMaruAlph{} -\pxhy@DeclareMacro{MaruAlph}#1{\pxhy@rshift{1/10338,27}} -%% \ajMaruHira{} -\pxhy@DeclareMacro{MaruHira}#1{\pxhy@rshift{1/10364,49}} -%% \ajMaruKata{} -\pxhy@DeclareMacro{MaruKata}#1{\pxhy@rshift{1/10412,49}} -%% \ajMaruYobi{} -\pxhy@DeclareMacro{MaruYobi}#1{% - \pxhy@rshift{1/10470,8/10484,9/10478,10}% -} -%% \ajKuroMarualph{} : Fallback. -\pxhy@DeclareMacro{KuroMarualph}#1{`\ajMarualph{#1}} -%% \ajKuroMaruAlph{} -\pxhy@DeclareMacro{KuroMaruAlph}#1{\pxhy@rshift{1/10630,27}} -%% \ajKuroMaruHira{} : Fallback. -\pxhy@DeclareMacro{KuroMaruHira}#1{`\ajMaruHira{#1}} -%% \ajKuroMaruKata{} : Fallback. -\pxhy@DeclareMacro{KuroMaruKata}#1{`\ajMaruKata{#1}} -%% \ajKuroMaruYobi{} : Fallback. -% fallback to \ajKakuYobi, which is simpler. -\pxhy@DeclareMacro{KuroMaruYobi}#1{`\ajKakuYobi{#1}} -%% \ajKakualph{} : Fallback. -\pxhy@DeclareMacro{Kakualph}#1{`\ajMarualph{#1}} -%% \ajKakuAlph{} -\pxhy@DeclareMacro{KakuAlph}#1{\pxhy@rshift{1/10900,27}} -%% \ajKakuHira{} : Fallback. -\pxhy@DeclareMacro{KakuHira}#1{`\ajMaruHira{#1}} -%% \ajKakuKata{} : Fallback. -\pxhy@DeclareMacro{KakuKata}#1{`\ajMaruKata{#1}} -%% \ajKakuYobi{} -\pxhy@DeclareMacro{KakuYobi}#1{\pxhy@rshift{1/11022,8}} -%% \ajKuroKakualph{} : Fallback. -\pxhy@DeclareMacro{KuroKakualph}#1{`\ajMarualph{#1}} -%% \ajKuroKakuAlph{} -\pxhy@DeclareMacro{KuroKakuAlph}#1{\pxhy@rshift{1/11173,27}} -%% \ajKuroKakuHira{} : Fallback. -\pxhy@DeclareMacro{KuroKakuHira}#1{`\ajMaruHira{#1}} -%% \ajKuroKakuKata{} : Fallback. -\pxhy@DeclareMacro{KuroKakuKata}#1{`\ajMaruKata{#1}} -%% \ajKuroKakuYobi{} : Fallback. -\pxhy@DeclareMacro{KuroKakuYobi}#1{`\ajKakuYobi{#1}} -%% \ajMaruKakualph{} : Fallback. -\pxhy@DeclareMacro{MaruKakualph}#1{`\ajMarualph{#1}} -%% \ajMaruKakuAlph{} -\pxhy@DeclareMacro{MaruKakuAlph}#1{\pxhy@rshift{1/11443,27}} -%% \ajMaruKakuHira{} : Fallback. -\pxhy@DeclareMacro{MaruKakuHira}#1{`\ajMaruHira{#1}} -%% \ajMaruKakuKata{} : Fallback. -\pxhy@DeclareMacro{MaruKakuKata}#1{`\ajMaruKata{#1}} -%% \ajMaruKakuYobi{} : Fallback. -\pxhy@DeclareMacro{MaruKakuYobi}#1{`\ajKakuYobi{#1}} -%% \ajKuroMaruKakualph{} : Fallback. -\pxhy@DeclareMacro{KuroMaruKakualph}#1{`\ajMarualph{#1}} -%% \ajKuroMaruKakuAlph{} -\pxhy@DeclareMacro{KuroMaruKakuAlph}#1{\pxhy@rshift{1/11712,27}} -%% \ajKuroMaruKakuHira{} : Fallback. -\pxhy@DeclareMacro{KuroMaruKakuHira}#1{`\ajMaruHira{#1}} -%% \ajKuroMaruKakuKata{} : Fallback. -\pxhy@DeclareMacro{KuroMaruKakuKata}#1{`\ajMaruKata{#1}} -%% \ajKuroMaruKakuYobi{} : Fallback. -\pxhy@DeclareMacro{KuroMaruKakuYobi}#1{`\ajKakuYobi{#1}} -%% \ajNijuMaru{} -\pxhy@DeclareMacro{NijuMaru}#1{\pxhy@rshift{1/16222,11}} -%% \ajRecycle{} -\pxhy@DeclareMacro{Recycle}#1{\pxhy@rshift{0/16314,12}} -%% \ajHasenKakuAlph{} -\pxhy@DeclareMacro{HasenKakuAlph}#1{\pxhy@rshift{1/20496,7}} -%% \ajCross{} -\pxhy@DeclareMacro{Cross}#1{% - \pxhy@fallback{0}{0}{9}{% - \pxhy@rshift{0/20523,10}% - }{\pxhy@numeral{#1}\UTF{00D7}}% -} -%% \ajSlanted[*]{} -\pxhy@DeclareMacroVar{Slanted}#1{%N - \pxhy@fallback{0}{0}{59}{% - \pxhy@rshift{0/9460,10/20589,60}% - }{\pxhy@numeral{#1}}% -}{%V - \pxhy@fallback{0}{0}{59}{% - \pxhy@rshift{0/20589,60}% - }{\pxhy@two@digits{#1}}% -} -%% \ajApostrophe{} -%% \ajYear{} (alias) -\pxhy@DeclareMacro{Apostrophe}#1{% - \pxhy@fallback{0}{0}{99}{% - \pxhy@rshift{0/20649,100}% - }{\UTF{2019}\pxhy@two@digits{#1}}% -} -\pxhy@DeclareAlias{Year}{Apostrophe} -%% \ajSquareMark[*]{} -% Note: +-variant is unsupported. -\pxhy@DeclareMacroVar{SquareMark}#1{%N - \pxhy@rshift{1/12229,13}% -}{%V - \pxhy@rshift{1/12241,10}% -} -%% \ajHishi{} -\pxhy@DeclareMacro{Hishi}#1{\pxhy@rshift{1/12256,5}} - -%----------------------- - -% The choice of numerals (Western or kanji) depends on the rendering -% of the original definition in yoko direction. - -%% \ajTsumekakko{} -%% \ajTumekakko{} (alias) -% Expands to "(number)". -\pxhy@DeclareMacro{Tsumekakko}#1{% - (\pxhy@numeral{#1})% -} -\pxhy@DeclareAlias{Tumekakko}{Tsumekakko} - -%% \ajNenrei{} -\pxhy@DeclareMacro{Nenrei}#1{% - `\csname pxhy@ajNenrei/`\number#1`\endcsname -} -\csgdef{pxhy@ajNenrei/1}#1{% - (\pxhy@numeral{#1}\ifnum#1<10 つ\fi)% -} -\csgdef{pxhy@ajNenrei/2}#1{% - (\pxhy@numeral{#1}才)% -} -\csgdef{pxhy@ajNenrei/3}#1{% FIXME: the original is right? - (\pxhy@each@digit{#1}{\pxhy@knumeral@varA つ})% -} -\csgdef{pxhy@ajNenrei/4}#1{% - (\pxhy@knumeral{#1}才)% -} - -%% \ajnenrei{} -\pxhy@DeclareMacro{nenrei}#1{% - `\csname pxhy@ajnenrei/`\number#1`\endcsname -} -\csgdef{pxhy@ajnenrei/1}#1{% - (\pxhy@each@digit{#1}{\pxhy@knumeral@varA つ})% -} -\csgdef{pxhy@ajnenrei/2}#1{% - (\pxhy@each@digit{#1}{\pxhy@knumeral@varB 才})% -} -\csgdef{pxhy@ajnenrei/3}#1{% FIXME: the original is right? - (\pxhy@each@digit{#1}{\pxhy@knumeral@varA ツ})% -} -\csgdef{pxhy@ajnenrei/4}#1{% - (\pxhy@each@digit{#1}{\pxhy@knumeral@varB コ})% -} - -%% \ajKosu{} -\pxhy@DeclareMacro{Kosu}#1{% - `\ajnenrei4{#1}% -} - -%% some special kanji numeral forms -\gdef\pxhy@knumeral@varA#1#2#3{% - % 8→八つ, 10→一〇, 16→一六, 20→二〇, 32→三二 - \if0#2\pxhy@kdigit#3#1\else\pxhy@kdigit#2\pxhy@kdigit#3\fi -} -\gdef\pxhy@knumeral@varB#1#2#3{% - % 8→八才, 10→十才, 16→十六, 20→二十, 32→三二 - \ifcase#2 #2#1% - \or 十\ifcase#3 #1\else \pxhy@kdigit#3\fi - \else \pxhy@kdigit#2\ifcase#3 十\else \pxhy@kdigit#3\fi - \fi -} - -%% \ajFrac[*]{}{} -\pxhy@DeclareMacroVar{Frac}#1#2{%N - `\pxhy@ajFrac{\pxhy@numeral{#1}}{\pxhy@numeral{#2}}% -}{%V - `\pxhy@ajFrac{\pxhy@numeral{#1}}{\pxhy@numeral{#2}}% -} -\gdef\pxhy@ajFrac#1#2{% - \ifcsdef{pxhy@ucs@frac/#1/#2}{% - \csuse{pxhy@ucs@frac/#1/#2}% - }{#1/#2}% -} -%% \[pxhy@ucs@frac//] -% Alternative definitions for fractions. -\def\do#1#2{\csgdef{pxhy@ucs@frac/#1}{\UTF{#2}}} -\do{1/4}{00BC} -\do{1/2}{00BD} -\do{3/4}{00BE} -\do{1/7}{2150} -\do{1/9}{2151} -\do{1/10}{2152} -\do{1/3}{2153} -\do{2/3}{2154} -\do{1/5}{2155} -\do{2/5}{2156} -\do{3/5}{2157} -\do{4/5}{2158} -\do{1/6}{2159} -\do{5/6}{215A} -\do{1/8}{215B} -\do{3/8}{215C} -\do{5/8}{215D} -\do{7/8}{215E} -\do{0/3}{2189} - -%% \aj半角{} -% Simply expands to the string. -\pxhy@DeclareMacro{半角}#1{% - `\ifpxhy@ajhankaku@chars - `\pxhy@ajHankaku{#1}% - `\else #1% - `\fi -} -\gdef\pxhy@ajHankaku#1{% - \pxhy@ajHankaku@a#1\pxhy@end -} -\gdef\pxhy@ajHankaku@a#1{% - \pxhy@cond\ifx#1\pxhy@end\fi{}{%else - \ifcsdef{pxhy@ucs@hw/#1}{\csuse{pxhy@ucs@hw/#1}}{#1}% - \pxhy@ajHankaku@a}% -} -\def\pxhy@next#1{% - \pxhy@cond\ifx#1\pxhy@end\fi{}{%else - \csxdef{pxhy@ucs@hw/#1}{\UTF{\expandafter\pxhy@FFhex\meaning\x;}}% - \chardef\y=\numexpr\x+1\relax \let\x\y - \pxhy@next}% -} -\def\pxhy@FFhex#1"#2;{FF#2} -\chardef\x="61 -\pxhy@next - 。「」、・ヲァィゥェォャュョッーアイウエオカキクケ% - コサシスセソタチツテトナニヌネノハヒフヘホマミムメ% - モヤユヨラリルレロワン゛゜\pxhy@end -\csgdef{pxhy@ucs@hw/ }{\space} - -%% \○ / \● / \□ / \■ / \◇ / \◆ -% Expands to \ajLig{} or \@ajNumber. -% \@ajNumber{CMD}{} seems to expand to \ajCMD{}. - -%% \△ / \▽ / \゛ / \゜ / \! -% Expands to \ajLig{}. - -%% \ajPICT{} -% Expands to \CID{}. - -%% \ajArrow{} -% Expands to \CID{}. - -%% \ajKunten{} -% \ajKunten{?} (for single letters) expands to \CID{} and is string-OK. -% \ajKunten{?|}, \ajKunten{|?}a and \ajKunten{?レ} need to be -% redefined. -\@tfor\x:={一}{上}{甲}{天}\do{% ?レ - \pxhy@DeclareMacro{訓点\x レ}{`\ajKunten{\x}`\ajKunten{レ}}% -} -\@tfor\x:={二}{三}{四}{中}{下}{乙}{丙}{丁}{地}{人}\do{% ?| |? - \pxhy@DeclareMacro{訓点\x |}{`\ajKunten{\x}\UTF{2013}}% - \pxhy@DeclareMacro{訓点|\x }{`\ajKunten{\x}\UTF{2013}}% -} -\pxhy@DeclareMacro{訓点 |}{\UTF{2013}}% -\pxhy@DeclareMacro{訓点| }{\UTF{2013}}% - -%% \ajVar{} -% Expands to \CID{} or \UTF{}. - -%% \ajLeader -% Redefined to expand to two instances of the leader character. -\pxhy@DeclareMacro{Leader}{% - `\pxhy@ajLeader -} -\gdef\pxhy@ajLeader#1{% - \pxhy@cond\ifx[#1\fi{\pxhy@ajLeader@a}{\pxhy@ajLeader@a]{#1}}% -} -\gdef\pxhy@ajLeader@a#1]#2{% - \pxhy@shift{12214}{#2*2}\pxhy@shift{12214}{#2*2}% -} - -%% \ajQuote -% Redefined to be fully-expandable. -\pxhy@DeclareMacro{Quote}{% - `\pxhy@ajQuote -} -\gdef\pxhy@ajQuote#1#2{% - \CID{\ifcase#1\or670\or672\or674\or676\or678\or680\or682\or - 684\or686\or688\or690\or7608\or12125\or12127\or12129\or - 12131\or12171\or16197\fi}% - #2% - \CID{\ifcase#1\or671\or673\or675\or677\or679\or681\or683\or - 685\or687\or689\or691\or7609\or12126\or12128\or12130\or - 12132\or12172\or16198\fi}% -} - -%% Miscenallneous \ajXxx symbols -% Most of them are string-OK; The exceptions are below. - -%% ad-hoc redefinitions -\pxhy@DeclareMacro{DKunoji}{\UTF{3032}} -\pxhy@DeclareMacro{DKunojiwithBou}{\UTF{3032}} -\pxhy@DeclareMacro{Kunoji}{\UTF{3031}} -\pxhy@DeclareMacro{KunojiwithBou}{\UTF{3031}} -\pxhy@DeclareMacro{Yusuriten}{\CID{16193}} -\pxhy@DeclareMacro{varNinoji}{\CID{12107}} - -%---------------------- -% The \ajLig command - -%% \[pxhy@uok/] -% If defined, then \ajLig{} is Unicode-OK. -% Note: Baware of unification. For example, \ajLig{No.} and \ajLig{No} -% can both be kind of U+2116(№), but probably \ajLig{AM} cannot be -% kind of U+33C2(㏂). -\@tfor\x:=% - {!!}{!!*}{!*}{!?}{!?*}{'S}{?!}{??}{F}{FAX}{GB}{HP}{Hz}{JIS}{K.K.}{KB}% - {MB}{No.}{No}{PR}{TEL}{Tel}{a.m.}{a/c}{c/o}{cal}{cc}{cm}{cm2}{cm3}{dB}% - {dl}{dl*}{euro}{g}{hPa}{in}{kcal}{kg}{kl}{kl*}{km}{km2}{km3}{l}{l*}{m}% - {m2}{m3}{mb}{mg}{mho}{microg}{microm}{micros}{ml}{ml*}{mm}{mm2}{mm3}{ms}% - {ns}{p.m.}{pH}{ppm}{ps}{tel}{tm}{◇HV}{◇MV}{◇News}{◇SS}{より}% - {アパート}{アルファ}{アンペア}{アール*}{アール}{イニング}{インチ}% - {インチ*}{ウォン}{エスクード}{エーカー}{オンス}{オーム}{カイリ}% - {カラット}{カロリー}{ガロン}{ガンマ}{キュリー}{キロ}{キログラム}% - {キロメートル}{キロワット}{ギガ}{ギニー}{ギルダー}{クルゼイロ}{クローネ}% - {グラム}{グラム*}{グラムトン}{ケース}{コト}{コルナ}{コーポ}{コーポ*}% - {サイクル}{サンチーム}{シリング}{センチ}{センチ*}{セント}{セント*}% - {ダース}{デシ}{トン}{ドル}{ナノ}{ノット}{ハイツ}{ハイツ*}{バーレル}% - {パーセント}{ビル}{ピアストル}{ピクル}{ピコ}{ファラッド}{フィート}% - {フラン}{ブッシェル}{ヘクタール}{ヘルツ}{ヘルツ*}{ベータ}{ペソ}{ペニヒ}% - {ペンス}{ページ}{ページ*}{ホン}{ホール}{ホーン}{ホーン*}{ボルト}% - {ポイント}{ポンド}{マイクロ}{マイル}{マッハ}{マルク}{マンション}% - {ミクロン}{ミリ}{ミリバール}{メガ}{メガトン}{メートル}{ヤード}{ヤード*}% - {ヤール}{ユアン}{リットル}{リラ}{ルピー}{ルーブル}{レム}{レントゲン}% - {ワット}{ワット*}{令和}{升}{大正}{平成}{明治}{昭和}{株式会社}% -\do{\global\cslet{pxhy@uok/\x}{t}} - -% Note: Ligatures no*, euro*, mho*, ohm* are bad (proportional). - -%% \[pxhy@uokh/] -% If defined, then \ajLig{?} is Unicode-OK, where '?' is -% an arbitrary single character. -\@tfor\x:=% - {■}{□}{△}{▽}{◆}{◇}{○}{●} -\do{\global\cslet{pxhy@uokh/\x}{t}} - -%% ad-hoc redefinitions -\def\do#1#2{\pxhy@DeclareMacro{Lig#1}{#2}% - \global\cslet{pxhy@uok/#1}{t}} -\do{う゛}{\UTF{3094}} -\do{か゜}{か\UTF{309A}} -\do{き゜}{き\UTF{309A}} -\do{く゜}{く\UTF{309A}} -\do{け゜}{け\UTF{309A}} -\do{こ゜}{こ\UTF{309A}} -\do{カ゜}{カ\UTF{309A}} -\do{キ゜}{キ\UTF{309A}} -\do{ク゜}{ク\UTF{309A}} -\do{ケ゜}{ケ\UTF{309A}} -\do{コ゜}{コ\UTF{309A}} -\do{セ゜}{セ\UTF{309A}} -\do{ツ゜}{ツ\UTF{309A}} -\do{ト゜}{ト\UTF{309A}} -\do{ワ゛}{\UTF{30F7}} -\do{ヰ゛}{\UTF{30F8}} -\do{ヱ゛}{\UTF{30F9}} -\do{ヲ゛}{\UTF{30FA}} -\do{小か}{\UTF{3095}} -\do{小け}{\UTF{3096}} -\do{小こ}{こ}% fallback -\do{小ク}{\UTF{31F0}} -\do{小コ}{コ}% fallback -\do{小シ}{\UTF{31F1}} -\do{小ス}{\UTF{31F2}} -\do{小ト}{\UTF{31F3}} -\do{小ヌ}{\UTF{31F4}} -\do{小ハ}{\UTF{31F5}} -\do{小ヒ}{\UTF{31F6}} -\do{小フ}{\UTF{31F7}} -\do{小プ}{\UTF{31F7}\UTF{309A}} -\do{小ヘ}{\UTF{31F8}} -\do{小ホ}{\UTF{31F9}} -\do{小ム}{\UTF{31FA}} -\do{小ラ}{\UTF{31FB}} -\do{小リ}{\UTF{31FC}} -\do{小ル}{\UTF{31FD}} -\do{小レ}{\UTF{31FE}} -\do{小ロ}{\UTF{31FF}} - -%% redefine \ajLig -\pxhy@DeclareMacro{Lig}#1{% - % use \csname, to full-expand the argument - \@{\expandafter\pxhy@uok@ajlig\csname}ajLig#1\@{\endcsname}% -} -\gdef\pxhy@uok@ajlig#1{% - \expandafter\pxhy@uok@ajlig@a\string#1\pxhy@mk#1% -} -\begingroup\catcode96=12 \lccode`\?=`\g \lowercase{\endgroup - \gdef\pxhy@uok@ajlig@a#1?#2\pxhy@mk}{% - \pxhy@uok@ajlig@b{#2}% -} -\gdef\pxhy@uok@ajlig@b#1#2{%{NAME}\ajNAME - % undefined name comes empty - \ifundef{#2}{}{%else - % if Unicode-OK then do it - \ifcsdef{pxhy@uok/#1}{#2}{%else - \pxhy@if@uok@head{#1}{#2}{%else - \pxhy@drop@trail@star{#1}% - }% - }% - }% -} - -%% \pxhy@if@uok@head{}{}{} -\gdef\pxhy@if@uok@head#1{% - \pxhy@if@uok@head@a#1@...\pxhy@mk -} -\gdef\pxhy@if@uok@head@a#1#2#3#4#5\pxhy@mk{% - \pxhy@cond\ifx#3@\fi{% two-letter - \ifcsdef{pxhy@uokh/#1}% - }{\pxhy@cond\ifx#4@\fi{% three-letter - \pxhy@cond@both\ifx#1(\fi\ifx#3)\fi{\@firstoftwo}{%else - \pxhy@cond@both\ifx#1□\fi\ifx#2:\fi - }% - }{\@secondoftwo}}% -} - -%% \pxhy@drop@trail@star{} -\gdef\pxhy@drop@trail@star#1{% - \pxhy@drop@trail@star@a#1\pxhy@mk*\pxhy@mk\pxhy@end{#1}% -} -\gdef\pxhy@drop@trail@star@a#1*\pxhy@mk#2\pxhy@end#3{% - \ifstrempty{#2}{#3}{#1}% -} - -%--------------------------------------- done -\endgroup -%======================================= -\endinput -%% EOF diff --git a/language/japanese/pxjahyper/pxjahyper-enc.sty b/language/japanese/pxjahyper/pxjahyper-enc.sty deleted file mode 100644 index 719f51c4e8..0000000000 --- a/language/japanese/pxjahyper/pxjahyper-enc.sty +++ /dev/null @@ -1,146 +0,0 @@ -%% -%% This is file 'pxjahyper-enc.sty'. -%% -%% Copyright (c) 2012-2022 Takayuki YATO (aka. "ZR") -%% GitHub: https://github.com/zr-tex8r -%% Twitter: @zr_tex8r -%% -%% This package is distributed under the MIT License. -%% - -%% package declaration -\NeedsTeXFormat{pLaTeX2e} -\ProvidesPackage{pxjahyper-enc}[2022/05/27 v1.2] -\def\pxhe@pkgname{pxjahyper-enc} -\providecommand{\bxDebug}[1]{} - -%--------------------------------------- package options - -%% variables -\let\pxhe@driver=d - -% driver options -\DeclareOption{dvipdfmx}{% - \let\pxhe@driver=d\relax -} -\DeclareOption{dvips}{% - \let\pxhe@driver=s\relax -} -\DeclareOption{nodvidriver}{% - \let\pxhe@driver=0\relax -} -% dispatch -\ProcessOptions* - -%--------------------------------------- user interface - -%% variables -\let\pxhe@bigcode=t -\let\pxhe@default@tounicode=t - -%%<*> \suppressbigcode -\@onlypreamble\suppressbigcode -\newcommand*\suppressbigcode{% - \global\let\pxhe@bigcode=f\relax -} - -%%<*> \suppressdefaulttounicode -\@onlypreamble\suppressdefaulttounicode -\newcommand*\suppressdefaulttounicode{% - \global\let\pxhe@default@tounicode=f\relax -} - -%%<+> \pxjahyperToUnicodeSpecial{} -\newcommand*\pxjahyperToUnicodeSpecial[1]{% - \edef\pxhe@tmpa{% - \noexpand\pxhe@begin@dvi@hook{\special{pdf:tounicode #1}}% - }\pxhe@tmpa -} - -%--------------------------------------- environment - -%% check -\ifx d\pxhe@driver\else - \ifx s\pxhe@driver - \PackageWarningNoLine\pxhe@pkgname - {Unsupported driver (dvips)} - \fi - \let\pxhe@begin@dvi@hook\@gobble -\expandafter\endinput\fi\relax - -%% switch 'pxhe@new@hook@system' -\newif\ifpxhe@new@hook@system -\@ifl@t@r\fmtversion{2020/10/01}{\pxhe@new@hook@systemtrue}{} - -%% \pxhe@jcode -\ifnum \jis"2121="8140 - \let\pxhe@jcode=s\relax -\else\ifnum\jis"2121="A1A1 - \let\pxhe@jcode=e\relax -\else\ifnum\jis"2121="3000 - \let\pxhe@jcode=u\relax -\fi\fi\fi -\ifx\pxhe@jcode\@undefined - \PackageError\pxhe@pkgname - {Unknown internal kanji code} - {Package loading is aborted right now.} - \expandafter\endinput -\fi - -%--------------------------------------- begin-dvi hook (new) -\ifpxhe@new@hook@system - -%% \pxhe@hook@label -\def\pxhe@hook@label{pxjahyper/enc} - -%% \pxhe@begin@dvi@hook{} -\def\pxhe@begin@dvi@hook#1{% - \AddToHook{shipout/firstpage}[\pxhe@hook@label]{#1}% -} - -%% declare necessary rules -\DeclareHookRule{shipout/firstpage}{\pxhe@hook@label}{<}{hyperref} - -\fi -%--------------------------------------- begin-dvi hook (old) -\ifpxhe@new@hook@system\else - -%% packages -\RequirePackage{atbegshi}[2011/10/05]% v1.16 - -%% \pxhe@begin@dvi@hook{} -\def\pxhe@begin@dvi@hook#1{% - \begingroup - \toks\z@{#1}% - \toks\tw@\expandafter{\AtBegShi@HookFirst}% - \xdef\AtBegShi@HookFirst{\the\toks@\the\toks\tw@}% - \endgroup -} - -\fi -%--------------------------------------- default tounicode special - -%% \pxhe@cmap@name -\def\pxhe@cmap@name{% - \if e\pxhe@jcode % euc - EUC-UCS2% - \else\if s\pxhe@jcode % sjis - 90ms-RKSJ-UCS2% - \else\if t\pxhe@bigcode % ucs, bigcode - UTF8-UTF16% - \else % ucs, no bigcode - UTF8-UCS2% - \fi\fi\fi -} - -%% \pxhe@do@default@tounicode -\def\pxhe@do@default@tounicode{% - \if t\pxhe@default@tounicode - \special{pdf:tounicode \pxhe@cmap@name}% - \fi -} -\pxhe@begin@dvi@hook{\pxhe@do@default@tounicode} - -%--------------------------------------- done -\endinput -%% EOF diff --git a/language/japanese/pxjahyper/pxjahyper-uni.def b/language/japanese/pxjahyper/pxjahyper-uni.def deleted file mode 100644 index 53e30988d9..0000000000 --- a/language/japanese/pxjahyper/pxjahyper-uni.def +++ /dev/null @@ -1,104 +0,0 @@ -%% -%% This is file 'pxjahyper-uni.def'. -%% -%% Copyright (c) 2012-2022 Takayuki YATO (aka. "ZR") -%% GitHub: https://github.com/zr-tex8r -%% Twitter: @zr_tex8r -%% -%% This package is distributed under the MIT License. -%% - -%% package declaration -\NeedsTeXFormat{pLaTeX2e} -\ProvidesFile{pxjahyper-uni.def}[2022/05/27 v1.2] -\providecommand{\bxDebug}[1]{} - -%--------------------------------------- environment check - -\@ifpackageloaded{hyperref}{}{%else - \bxDebug{pxjahyper-uni: hyperref not yet loaded}% - \endinput} - -%% if already redefined, then okay -\def\pxhy@tmpa#1{\@backslashchar 000#1} -\ifx\HyPsd@Char\pxhy@tmpa\else - \bxDebug{pxjahyper-uni: already redefined} - \let\jsCheckHyperrefUnicode\@empty -\expandafter\endinput\fi\relax - -%% if this is pTeX and pxjatoucs is not loaded, then quit -\if \ifnum\jis"2121="3000 F% - \else\ifx\bxjaSjisToUcs\@undefined T\else F% - \fi\fi T% - \bxDebug{pxjahyper-uni: bxjatoucs not yet loaded} -\expandafter\endinput\fi\relax - -%--------------------------------------- the patch - -%% The following code is taken from hyperref.sty. -%%%%BEGIN - \def\HyPsd@Char#1{% - \ifnum`#1<128 % - \@backslashchar 000#1% - \else - \ifnum`#1<65536 % - \expandafter\HyPsd@CharTwoByte\number`#1!% - \else - \expandafter\expandafter\expandafter\HyPsd@CharSurrogate - \intcalcSub{`#1}{65536}!% - \fi - \fi - }% - \def\HyPsd@CharTwoByte#1!{% - \expandafter\expandafter\expandafter\HyPsd@CharOctByte - \IntCalcDiv#1!256!!% - \expandafter\expandafter\expandafter\HyPsd@CharOctByte - \IntCalcMod#1!256!!% - }% - \def\HyPsd@CharOctByte#1!{% - \@backslashchar - \IntCalcDiv#1!64!% - \intcalcDiv{\IntCalcMod#1!64!}{8}% - \IntCalcMod#1!8!% - }% - \def\HyPsd@CharSurrogate#1!{% - \@backslashchar 33% - \IntCalcDiv#1!262144!% - \expandafter\expandafter\expandafter\HyPsd@CharOctByte - \intcalcDiv{\IntCalcMod#1!262144!}{1024}!% - \@backslashchar 33% - \expandafter\expandafter\expandafter\IntCalcAdd - \intcalcDiv{\IntCalcMod#1!1024!}{256}!4!% - \expandafter\expandafter\expandafter\HyPsd@CharOctByte - \IntCalcMod#1!256!!% - }% -%%%%END - -\ifnum\jis"2121="3000 \else %<*pTeX> - \def\HyPsd@Char#1{% - \ifnum`#1<128 % - \@backslashchar 000#1% - \else\ifnum`#1<256 % - \expandafter\HyPsd@CharTwoByte\number`#1!% - \else - \expandafter\HyPsd@CharTwoByte\number\pxhy@to@ucs{`#1}!% - \fi\fi - }% - \def\pxhy@to@ucs#1{"FFFD} - \ifnum\jis"2121="8140 % sjis - \let\pxhy@to@ucs\bxjaSjisToUcs - \else\ifnum\jis"2121="A1A1 % euc - \let\pxhy@to@ucs\bxjaEucToUcs - \fi\fi -\fi % - -%% set flag -\let\pxHyperrefUnicodePatched=t -\bxDebug{pxjahyper-uni: patched} - -%% disable the verification of bxjscls -\let\jsCheckHyperrefUnicode\@empty - -%--------------------------------------- done -\endinput -%% EOF diff --git a/language/japanese/pxjahyper/pxjahyper.pdf b/language/japanese/pxjahyper/pxjahyper.pdf deleted file mode 100644 index 8b8b713c73..0000000000 Binary files a/language/japanese/pxjahyper/pxjahyper.pdf and /dev/null differ diff --git a/language/japanese/pxjahyper/pxjahyper.sty b/language/japanese/pxjahyper/pxjahyper.sty deleted file mode 100644 index f2ebcd4571..0000000000 --- a/language/japanese/pxjahyper/pxjahyper.sty +++ /dev/null @@ -1,1871 +0,0 @@ -%% -%% This is file 'pxjahyper.sty'. -%% -%% Copyright (c) 2012-2022 Takayuki YATO (aka. "ZR") -%% GitHub: https://github.com/zr-tex8r -%% Twitter: @zr_tex8r -%% -%% This package is distributed under the MIT License. -%% - -%% package declaration -\NeedsTeXFormat{pLaTeX2e} -\ProvidesPackage{pxjahyper}[2022/05/27 v1.2] -\def\pxhy@pkgname{pxjahyper} -\providecommand{\bxDebug}[1]{} - -%--------------------------------------- Preparations - -%% error messages -\def\pxhy@error{\PackageError\pxhy@pkgname} -\@onlypreamble\pxhy@eh@fatal -\def\pxhy@eh@fatal{% - Package loading is aborted right now.\MessageBreak\@ehc -} - -%% packages -\RequirePackage{keyval}\relax -\RequirePackage{ltxcmds}[2011/08/22]% v1.21 - -%% variables -\newif\ifpxhy@ptex -\newif\ifpxhy@uptex -\newif\ifpxhy@etex -\newif\ifpxhy@etoolbox -\chardef\pxhy@hook@system=0 -\newif\ifpxhy@tounicode -\newif\ifpxhy@uniescape -\newif\ifpxhy@bigcode -\let\pxhy@bigcode@given\relax -\newif\ifpxhy@papersize -\newif\ifpxhy@charcmds -\chardef\pxhy@driver@none=0 -\chardef\pxhy@driver@dvipdfmx=1 -\chardef\pxhy@driver@dvips=2 -\let\pxhy@driver\@undefined -\newif\ifpxhy@hy@unicode -\newif\ifpxhy@jacommentline -\newif\ifpxhy@disablecmds -\newif\ifpxhy@otfutf -\newif\ifpxhy@otfcid -\newif\ifpxhy@otfmacros -\newif\ifpxhy@Uchar@avail -\newif\ifpxhy@ucs@avail -\let\pxhy@jsclasses@name\relax -\newif\ifpxhy@jlreq@cls -\newif\ifpxhy@fallback@geta -\newif\ifpxhy@extjis@map -\newif\ifpxhy@extjis@use -\newif\ifpxhy@ajhankaku@chars - -%%<*> \pxjahypersetup{=,...} -\newcommand*\pxjahypersetup{% - \setkeys{\pxhy@pkgname}% -} -%% \pxhy@handle@key{}{}{} -\def\pxhy@handle@key#1#2#3{% - \expandafter\let\expandafter\pxhy@tmpa\csname pxhy@#3\endcsname - \ifx\pxhy@tmpa\relax - \PackageError\pxhy@pkgname - {Invalid value for key '#1':\MessageBreak\@spaces#2}% - {\@eha}% - \else \pxhy@tmpa - \fi -} - -%--------------------------------------- Package options - -%% DVI drivers -\DeclareOption{dvipdfmx}{% - \let\pxhy@driver\pxhy@driver@dvipdfmx -} -\DeclareOption{dvipdfm}{% - \let\pxhy@driver\pxhy@driver@dvipdfmx -} -\DeclareOption{dvips}{% - \let\pxhy@driver\pxhy@driver@dvips -} -\DeclareOption{nodvidriver}{% - \let\pxhy@driver\pxhy@driver@none -} -\DeclareOption{resetdvidriver}{% - \let\pxhy@driver\@undefined -} -\DeclareOption{autodvidriver}{% - \let\pxhy@driver\@undefined -} -\DeclareOption{auto}{% DEPRECATED - \let\pxhy@driver\@undefined -} -%% operation modes -\DeclareOption{tounicode}{% - \pxhy@tounicodetrue -} -\DeclareOption{notounicode}{% - \pxhy@tounicodefalse -} -\DeclareOption{out2uni}{% - \pxhy@uniescapetrue -} -\DeclareOption{noout2uni}{% - \pxhy@uniescapefalse - \let\pxhy@nouniescape@given=t -} -\DeclareOption{convbkmk}{% - \pxhy@uniescapetrue -} -\DeclareOption{noconvbkmk}{% - \pxhy@uniescapefalse - \let\pxhy@nouniescape@given=t -} -%% others -\DeclareOption{papersize}{% - \pxhy@papersizetrue -} -\DeclareOption{nopapersize}{% - \pxhy@papersizefalse -} -\DeclareOption{charcmds}{% - \pxhy@charcmdstrue -} -\DeclareOption{nocharcmds}{% - \pxhy@charcmdsfalse -} -\pxhy@bigcodetrue -\DeclareOption{bigcode}{% - \pxhy@bigcodetrue - \let\pxhy@bigcode@given=t -} -\DeclareOption{nobigcode}{% - \pxhy@bigcodefalse -} -\DeclareOption{jacommentline}{% - \pxhy@jacommentlinetrue -} -\DeclareOption{nojacommentline}{% - \pxhy@jacommentlinefalse -} -\DeclareOption{disablecmds}{% - \pxhy@disablecmdstrue -} -\DeclareOption{nodisablecmds}{% - \pxhy@disablecmdsfalse -} -\DeclareOption{otfutf}{% - \pxhy@otfutftrue -} -\DeclareOption{nootfutf}{% - \pxhy@otfutffalse -} -\DeclareOption{otfcid}{% - \pxhy@otfcidtrue -} -\DeclareOption{nootfcid}{% - \pxhy@otfcidfalse -} -\pxhy@otfmacrostrue -\DeclareOption{otfmacros}{% - \pxhy@otfmacrostrue - \let\pxhy@otfmacros@given=t -} -\DeclareOption{nootfmacros}{% - \pxhy@otfmacrosfalse -} -\DeclareOption{fallback-geta}{% - \pxjahypersetup{fallback=geta}% -} -\DeclareOption{fallback-delete}{% - \pxjahypersetup{fallback=delete}% -} -\DeclareOption{force-unicode}{% - \let\pxhy@force@unicode=t -} -\DeclareOption{disable-Ux}{% for debug - \let\pxhy@disable@Ux=t -} -%% key-value options -\DeclareOption*{% - \expandafter\pxjahypersetup\expandafter{\CurrentOption}% -} -% 'fallback=geta|delete' -\pxhy@fallback@getatrue -\define@key{\pxhy@pkgname}{fallback}{% - \pxhy@handle@key{fallback}{#1}{kv@fallback@@#1}% -} -\let\pxhy@kv@fallback@@geta\pxhy@fallback@getatrue -\let\pxhy@kv@fallback@@delete\pxhy@fallback@getafalse -% 'extjis=' -\pxhy@extjis@usetrue -\define@key{\pxhy@pkgname}{extjis}[true]{% - \pxhy@handle@key{extjis}{#1}{extjis@use#1}% -} -% 'ajhankaku-chars=' -\define@key{\pxhy@pkgname}{ajhankaku-chars}[true]{% - \pxhy@handle@key{ajhankaku-chars}{#1}{ajhankaku@chars#1}% -} -%% dispatch -\ExecuteOptions{% - resetdvidriver,tounicode,papersize,charcmds,jacommentline,% - disablecmds,otfutf,otfcid% -} -\ProcessOptions* - -%--------------------------------------- Environment check - -%% The hyperref package must be loaded in advance. -\@ifpackageloaded{hyperref}{}{%else - \pxhy@error{Package 'hyperref' is not yet loaded} - {\pxhy@eh@fatal}% - \endinput -} - -%% Check for the hyperref option 'unicode'. -\expandafter\ifx\csname ifHy@unicode\expandafter\endcsname - \csname iftrue\endcsname - \pxhy@hy@unicodetrue -\fi -\AtBeginDocument{% - \@tempswafalse - \expandafter\ifx\csname ifHy@unicode\expandafter\endcsname - \csname iftrue\endcsname - \@tempswatrue - \fi - \ifnum0\ifpxhy@hy@unicode1\fi\if@tempswa1\fi=1 - \PackageError\pxhy@pkgname - {You must not change the encoding setting of hyperref\MessageBreak - (e.g. 'unicode') after pxjahyper is loaded}% - {\@ehc}% - \fi -} - -%% Check hyperref driver. -\ifx\pxhy@driver\@undefined - \let\pxhy@driver\pxhy@driver@none - \def\pxhy@tmpa{hdvipdfm} - \ifx\Hy@driver\pxhy@tmpa - \let\pxhy@driver\pxhy@driver@dvipdfmx - \fi - \def\pxhy@tmpa{hdvips} - \ifx\Hy@driver\pxhy@tmpa - \let\pxhy@driver\pxhy@driver@dvips - \fi - \ifnum\pxhy@driver=\pxhy@driver@none \ifx\Hy@driver\@undefined\else - \PackageWarningNoLine\pxhy@pkgname - {Unknown hyperref driver: \Hy@driver} - \fi\fi -\fi - -%% Check the engine. -\@onlypreamble\pxhy@check -\def\pxhy@check#1#2{% - \edef\pxhy@tmpa{\string#1}% - \edef\pxhy@tmpb{\meaning#1}% - \ifx\pxhy@tmpa\pxhy@tmpb #2\fi -} -\pxhy@check\eTeXversion{% - \pxhy@etextrue - \IfFileExists{etoolbox.sty}{\pxhy@etoolboxtrue}{}% -} -\pxhy@check\kanjiskip{% - \pxhy@ptextrue - \pxhy@check\ucs{% - \pxhy@check\ptexversion{\pxhy@uptextrue} - \pxhy@check\kchardef{\pxhy@uptextrue} - \ifpxhy@uptex\else % upTeX v<0.10 - \pxhy@error{This upTeX engine is too old} - {\pxhy@eh@fatal} - \endinput - \fi % only upTeX in Unicode is seen as upTeX - \ifnum\ucs"3000="3000 \else \pxhy@uptexfalse \fi - } -} -\ifpxhy@ptex\else - \pxhy@error{Unknown engine used}% - {\pxhy@eh@fatal} - \expandafter\endinput -\fi - -%% pxhy@Uchar@avail switch -\pxhy@check\Uchar{\pxhy@Uchar@availtrue} -%% pxhy@ucs@avail switch -\pxhy@check\ucs{\pxhy@ucs@availtrue} - -%% pxhy@extjis@map switch -% Note that 'tounicode' is necessary. -\ifpxhy@etex \ifpxhy@uptex\else \ifpxhy@tounicode - \pxhy@extjis@maptrue -\fi\fi\fi - -%% Check the document class. -% jlreq -\ifpxhy@etex - \ifx\jlreqsetup\@undefined\else \pxhy@jlreq@clstrue \fi -\fi -% jsclasses -\@ifclassloaded{jsarticle}{\def\pxhy@jsclasses@name{jsarticle}}{} -\@ifclassloaded{jsbook}{\def\pxhy@jsclasses@name{jsbook}}{} -\ifx\bxjs@clsname\@undefined\else \let\pxhy@jsclasses@name\relax \fi -\ifx\jsc@clsname\@undefined\else \let\pxhy@jsclasses@name\jsc@clsname \fi - -%% Check for the new hook system. -\@ifl@t@r\fmtversion{2021/11/15}{% - \chardef\pxhy@hook@system=2 -}{\@ifl@t@r\fmtversion{2020/02/02}{% - \chardef\pxhy@hook@system=1 -}{}} - -%% adjustment -% bigcode cannot be used without upTeX. -\ifpxhy@bigcode \ifpxhy@uptex\else - \pxhy@bigcodefalse - \ifx t\pxhy@bigcode@given - \PackageWarningNoLine\pxhy@pkgname - {bigcode is invalid without upTeX} - \fi -\fi\fi -%% pxhy@uniescape switch -\ifnum\pxhy@driver=\pxhy@driver@dvips \ifx t\pxhy@nouniescape@given\else - \pxhy@uniescapetrue -\fi\fi - -% hyperref 'unicode' is allowed only on upLaTeX. -\ifnum0\ifpxhy@hy@unicode\ifpxhy@uptex\else - \ifx t\pxhy@force@unicode\else1\fi\fi\fi>\z@ - \PackageWarningNoLine\pxhy@pkgname - {The support for the hyperref 'unicode' mode\MessageBreak - on the pTeX engine is currently experimental}% -\fi -\ifpxhy@hy@unicode - \pxhy@uniescapefalse - %\pxhy@otfutftrue -\fi -% otfcid requrires otfutf. -\ifpxhy@otfutf \else \ifpxhy@otfcid - \PackageInfo\pxhy@pkgname - {Option 'nootfcid' is assumed\MessageBreak - because 'nootfutf' is effective\@gobble} - \pxhy@otfcidfalse -\fi\fi -% otfmacros requrires otfcid. -\ifpxhy@otfcid \else \ifpxhy@otfmacros - \PackageInfo\pxhy@pkgname - {Option 'nootfmacros' is assumed\MessageBreak - because 'nootfcid' is effective\@gobble} - \pxhy@otfmacrosfalse -\fi\fi - -%% in nodvidriver mode -\ifnum\pxhy@driver=\pxhy@driver@none - \pxhy@papersizefalse - \pxhy@charcmdsfalse -\fi - -\bxDebug{****pxjahyper env^^J% -pxhy@ptex = \ifpxhy@ptex true\else false\fi^^J% -pxhy@uptex = \ifpxhy@uptex true\else false\fi^^J% -pxhy@etex = \ifpxhy@etex true\else false\fi^^J% -pxhy@etoolbox = \ifpxhy@etoolbox true\else false\fi^^J% -pxhy@hook@system = \the\pxhy@hook@system^^J% -pxhy@tounicode = \ifpxhy@tounicode true\else false\fi^^J% -pxhy@uniescape = \ifpxhy@uniescape true\else false\fi^^J% -pxhy@bigcode = \ifpxhy@bigcode true\else false\fi^^J% -pxhy@papersize = \ifpxhy@papersize true\else false\fi^^J% -pxhy@charcmds = \ifpxhy@charcmds true\else false\fi^^J% -pxhy@driver = \the\pxhy@driver^^J% -ifpxhy@hy@unicode = \ifpxhy@hy@unicode true\else false\fi^^J% -pxhy@jacommentline = \ifpxhy@jacommentline true\else false\fi^^J% -pxhy@disablecmds = \ifpxhy@disablecmds true\else false\fi^^J% -pxhy@otfutf = \ifpxhy@otfutf true\else false\fi^^J% -pxhy@otfcid = \ifpxhy@otfcid true\else false\fi^^J% -pxhy@otfmacros = \ifpxhy@otfmacros true\else false\fi^^J% -pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% -} - -%--------------------------------------- Helpers - -%% unique tokens -\def\pxhy@end{\pxhy@end@} -\def\pxhy@mt{\pxhy@mt@} -\let\pxhy@mk\indent % unexpandable - -%% \pxhy@begin@dvi@hook{} -\ifnum\pxhy@hook@system>0 - \def\pxhy@begin@dvi@hook#1{% - \AddToHook{shipout/firstpage}{#1}% - } - \DeclareHookRule{shipout/firstpage}{.}{>}{hyperref} -\else - \RequirePackage{atbegshi}[2011/10/05]% v1.16 - \def\pxhy@begin@dvi@hook#1{% - \AtBeginShipoutFirst{#1}% - } -\fi - -%% \pxhy@get@jchar{} -% Let \pxhy@jchar a macro expanding to a single jchar token -% of the char code . -\def\pxhy@get@jchar#1{% - \begingroup - \pxhy@forcecjktoken{#1}% - \kansujichar\@ne=#1\relax - \xdef\pxhy@jchar{\kansuji\@ne}% - \endgroup -} - -%% \pxhy@let@jchar@jc\CS{} -\def\pxhy@let@jchar@jc#1#2{% - \pxhy@get@jchar{\jis"#2}% - \let#1\pxhy@jchar -} - -%% \pxhy@forcecjktoken{} -\ifpxhy@uptex - \ifx\forcecjktoken\@undefined - \def\pxhy@forcecjktoken#1{\kcatcode#1=18 } - \else \def\pxhy@forcecjktoken#1{\forcecjktoken} - \fi -\else - \def\pxhy@forcecjktoken#1{\relax} -\fi - -%% \pxhy@geta : GETA MARK -\pxhy@get@jchar{\jis"222E} -\let\pxhy@geta\pxhy@jchar - -%% \pxhy@print@geta -\def\pxhy@print@geta{% - \ifpxhy@fallback@geta \pxhy@geta \fi -} - -%% \pxhy@hook@after@package{}{} -\@onlypreamble\pxhy@hook@after@package -\def\pxhy@hook@after@package#1#2{% - \ifcase\pxhy@hook@system - \AtBeginDocument{% - \@ifpackageloaded{#1}{#2}{}% - }% - \or - \@ifpackageloaded{#1}{#2}{% - \AddToHook{package/after/#1}{#2}% - }% - \or - \@ifpackageloaded{#1}{#2}{% - \AddToHook{package/#1/after}{#2}% - }% - \fi -} - -%% \pxhy@triexpandafter -\def\pxhy@triexpandafter{% - \expandafter\expandafter\expandafter -} - -%% \pxhy@csletcs{}{} -\def\pxhy@csletcs#1#2{% - \expandafter\let\csname#1\expandafter\endcsname\csname#2\endcsname -} - -%% \pxhy@cond\ifXXX\fi{}{} -% Does the test "\ifXXX", with immediate exit from the -% induced if-level. -\@gobbletwo\if\if \def\pxhy@cond#1\fi{% - #1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi -} - -%--------------------------------------- Helpers (e-TeX) -\ifpxhy@etex - -%% packages -\ifpxhy@etoolbox - \RequirePackage{etoolbox}[2011/01/03]%v2.1 -\fi - -%% \pxhy@if@star{}{} -% Expands to if followed by *, otherwise to . -\def\pxhy@if@star#1#2#3{% #3=next-arg - \expandafter\pxhy@if@star@a\expandafter @\detokenize{#3}@% - {#1}@*@{#2{#3}}\pxhy@mk -} -\def\pxhy@if@star@a#1@*@#2#3\pxhy@mk{#2} - -%% \pxhy@if@opt{}{} -% Expands to {} if followed by [], otherwise to . -\def\pxhy@if@opt#1#2#3{% #3=next-arg - \expandafter\pxhy@if@opt@a\expandafter @\detokenize{#3}@% - {\pxhy@if@opt@b{#1}}@[@{#2{#3}}\pxhy@mk%] -} -\def\pxhy@if@opt@a#1@[@#2#3\pxhy@mk{#2} -\def\pxhy@if@opt@b#1#2]{#1{#2}} - -%% \pxhy@xdetokenize{} -\let\pxhy@xdetokenize\detokenize -\pxhy@check\expanded{% - \def\pxhy@xdetokenize#1{\detokenize\expandafter{\expanded{#1}}}% -} - -\fi -%--------------------------------------- Load bxjatoucs - -%% \pxhy@bxjatoucs@failure -% Holds the reason message if bxjatoucs is unavailable; -% otherwise equals to \relax. -\@onlypreamble\pxhy@bxjatoucs@failure -\let\pxhy@bxjatoucs@failure\relax - -%% \pxhy@try@load@bxjatoucs -% Tries to load bxjatoucs. If that fails, then it sets the reason -% message to \pxhy@bxjatoucs@failure. -\@onlypreamble\pxhy@try@load@bxjatoucs -\def\pxhy@try@load@bxjatoucs{% - \global\let\pxhy@try@load@bxjatoucs\relax - \ifpxhy@etoolbox - % load bxjatoucs in "check mode" - \IfFileExists{bxjatoucs.sty}{% - \let\bxjatoucsCheckAvail=t - \RequirePackage{bxjatoucs}[] - \undef\bxjatoucsCheckAvail - }{} - % and judge availability - \ifundef\bxjaCidToUcs{% - \def\pxhy@bxjatoucs@failure{% - package 'bxjatoucs' is unavailable% - }% - }{} - \else\ifpxhy@etex - \def\pxhy@bxjatoucs@failure{% - package 'etoolbox' is unavailable% - } - \else - \def\pxhy@bxjatoucs@failure{% - e-TeX extension is unavailable% - } - \fi\fi -} - -\@tempswafalse -\ifpxhy@uptex\else\ifpxhy@hy@unicode - \pxhy@try@load@bxjatoucs - \ifx\pxhy@bxjatoucs@failure\relax\else - \@tempswatrue - \fi -\fi\fi -\if@tempswa - \PackageError\pxhy@pkgname - {The hyperref 'unicode' mode is not supported\MessageBreak - because \pxhy@bxjatoucs@failure}% - {\pxhy@eh@fatal}% - \expandafter\endinput -\fi - -%--------------------------------------- Output 'tounicode' special -\ifpxhy@tounicode - - \ifnum\pxhy@driver=\pxhy@driver@dvipdfmx %<*dvipdfmx> - %% dvipdfmx - \RequirePackage{pxjahyper-enc}[]% - \ifpxhy@bigcode\else \suppressbigcode \fi - \fi % - -\fi -%--------------------------------------- Papersize special adjustment -\ifpxhy@papersize %<*papersize> - -% When the magnification is in effect (i.e. \mag<>1000), hyperref -% emits a papersize special with wrong value. (dvipdfmx interprets -% the lengths in the special as 'true' lengths.) So here a papersize -% special with adjusted values will be output. -\ifnum\mag=1000 \else - \expandafter\ifx\csname ifHy@setpagesize\expandafter\endcsname - \csname iftrue\endcsname % hyperref setpagesize is on - \ifnum0<\mag \ifnum32768>\mag % \mag is in valid range - \begingroup - \@ifundefined{stockwidth}{}{%else - \paperwidth=\stockwidth - \paperheight=\stockheight - }% - \@tempcnta=\mag \advance\@tempcnta100000 - \def\pxhy@next1#1#2#3#4#5\relax{% - \def\pxhy@tmpa{#1#2.#3#4#5}% - }% - \expandafter\pxhy@next\the\@tempcnta\relax - \paperwidth=\pxhy@tmpa\paperwidth - \paperheight=\pxhy@tmpa\paperheight - \edef\pxhy@tmpa{% - \noexpand\pxhy@begin@dvi@hook{% - \special{papersize=\the\paperwidth,\the\paperheight}}% - }\pxhy@tmpa - \endgroup - \fi\fi - \fi -\fi - -\fi % -%--------------------------------------- Code input processor - -%% constants -\def\pxhy@uc@REPL{FFFD} -\def\pxhy@uc@XNAC{FDD1} % not-a-char codepoint used as marker - -%% switch 'pxhy@utfXVI' -% Whether or not to convert to UTF-16. -\newif\ifpxhy@utfXVI - -%% Generate tables -% - \pxhy@qh/XY -> Z ; \pxhy@hq/Z -> XY -% means XY (base-4) = Z (base-16) -% - \pxhy@lhq/ZW -> XY -% ZW (base-16) - 1 = XY (base-4) -% - \pxhy@hd/X -% uppercase of X if X is a (lower/uppercase) hexadecimal -% digit; otherwise undefined -\def\pxhy@next#1#2#3#4#5{% - \@namedef{pxhy@qh/#1#2}{#3}% - \@namedef{pxhy@hq/#3}{#1#2}% - \@namedef{pxhy@lhq/#4#5}{#1#2}% -} -\@for\pxhy@tmpa:={% - 00001,01102,02203,03304,10405,11506,12607,13708,% - 20809,2190A,22A0B,23B0C,30C0D,31D0E,32E0F,33F10}\do{% - \expandafter\pxhy@next\pxhy@tmpa -} -\def\pxhy@next#1{% - \lowercase{\def\pxhy@tmpb{#1}}% - \@namedef{pxhy@hd/#1}{#1}% - \@namedef{pxhy@hd/\pxhy@tmpb}{#1}% -} -\@tfor\pxhy@tmpa:=0123456789ABCDEF\do{% - \expandafter\pxhy@next\pxhy@tmpa -} - -%% \pxhy@burst-`>... -\let\pxhy@burst\romannumeral - -%% \pxhy@uchex{} -% "Distills" the code-value input. If the input is a hex notation of -% a valid code point of Unicode, then it passes the value to -% \pxhy@uchex@out in zero-padded 4-6 digits; otherwise passes FFFD -% to \pxhy@uchex@out. -% Moreover, when the switch pxhy@utfXVI is true, then conversion into -% UTF-16 is performed and each unit is passed to \pxhy@uchex@out -% in zero-padded 4 digits. -\def\pxhy@uchex#1{% - \pxhy@uchex@pre@a#1\relax{}\pxhy@mk\pxhy@end -} -\def\pxhy@uchex@pre@a{% - \expandafter\pxhy@uchex@pre@b\pxhy@burst-`>% -} -\def\pxhy@uchex@pre@b#1#{% - \pxhy@cond \ifx\pxhy@mt#1\pxhy@mt \fi{% - \pxhy@uchex@bombout - }{%else - \pxhy@uchex@pre@c#1% - }% -} -\def\pxhy@uchex@pre@c#1{% - \pxhy@cond \ifx#1\relax \fi{% - \pxhy@uchex@pre@end - }{%else - \pxhy@triexpandafter\pxhy@uchex@pre@d - \csname pxhy@hd/\string#1\endcsname - }% -} -\def\pxhy@uchex@pre@d#1{% - \pxhy@cond \ifx#1\relax \fi{% - \pxhy@uchex@bombout - }{%else - \pxhy@uchex@pre@e#1% - }% -} -\def\pxhy@uchex@pre@e#1#2\pxhy@mk#3\pxhy@end{% - \pxhy@cond \if 0#1\fi{% - \pxhy@cond \ifx\pxhy@mt#3\pxhy@mt \fi{% - \pxhy@uchex@pre@a#2\pxhy@mk#3\pxhy@end - }{%else - \pxhy@uchex@pre@a#2\pxhy@mk#3#1\pxhy@end - }% - }{%else - \pxhy@uchex@pre@a#2\pxhy@mk#3#1\pxhy@end - }% -} -\def\pxhy@uchex@pre@end#1\pxhy@mk#2\pxhy@end{% - \pxhy@cond \ifx\pxhy@mt#1\pxhy@mt \fi{% - \pxhy@uchex@sw{#2}% - }{%else - \pxhy@uchex@error - }% -} -\def\pxhy@uchex@bombout#1\pxhy@end{% - \pxhy@uchex@error -} - -\def\pxhy@uchex@sw#1{% - \pxhy@cond \ifnum"0#1>"10FFFF \fi{% - \pxhy@uchex@error - }{\pxhy@cond \ifnum"0#1>"FFFF \fi{% - \pxhy@cond \ifpxhy@utfXVI \fi{% - \pxhy@uchex@big#1"000000\pxhy@end - }{%else - \pxhy@uchex@out{#1}% - }% - }{%else - \pxhy@uchex@small#1"0000\pxhy@end - }}% -} -\def\pxhy@uchex@small#1#2#3#4#5#6\pxhy@end{% - \pxhy@uchex@small@a#1#2#3#4#5\pxhy@end -} -\def\pxhy@uchex@small@a#1"#2\pxhy@end{% - \pxhy@uchex@out{#2#1}% -} -\def\pxhy@uchex@big#1#2#3#4#5#6#7#8\pxhy@end{% - \pxhy@uchex@big@a#1#2#3#4#5#6#7\pxhy@end -} -\def\pxhy@uchex@big@a#1"#2\pxhy@end{% - \pxhy@uchex@big@b#2#1\pxhy@end -} -\def\pxhy@uchex@big@b#1#2#3#4{% - \pxhy@triexpandafter\pxhy@uchex@big@c - \csname pxhy@lhq/#1#2\pxhy@triexpandafter\endcsname - \csname pxhy@hq/#3\pxhy@triexpandafter\endcsname - \csname pxhy@hq/#4\endcsname -} -\def\pxhy@uchex@big@c#1#2#3#4#5#6{% - \pxhy@triexpandafter\pxhy@uchex@big@d - \csname pxhy@qh/2#1\pxhy@triexpandafter\endcsname - \csname pxhy@qh/#2#3\pxhy@triexpandafter\endcsname - \csname pxhy@qh/#4#5\pxhy@triexpandafter\endcsname - \csname pxhy@qh/3#6\endcsname -} -\def\pxhy@uchex@big@d#1#2#3#4#5\pxhy@end{% - \pxhy@uchex@out{D#1#2#3}% - \pxhy@uchex@out{D#4#5}% -} -\edef\pxhy@uchex@error{% - \noexpand\pxhy@uchex@out{\pxhy@uc@REPL}% -} - -%--------------------------------------- Hooks to pdfstringdef - -%% variables -\let\pxhy@str\relax - -%% \pxhy@Ux -% The definition of \Ux in PDF strings. -\let\pxhy@Ux\@undefined - -\ifpxhy@hy@unicode %<*unicode> - - %% \pxhy@Ux - \def\pxhy@Ux{\pxhy@uchex}% - \pxhy@utfXVIfalse - \def\pxhy@uchex@out#1{% - \unichar{"#1}% - } - -\else\ifpxhy@Uchar@avail %<*Uchar> - \ifpxhy@uptex - - %% \pxhy@Ux - \def\pxhy@Ux{\pxhy@uchex} - \pxhy@utfXVIfalse - \def\pxhy@uchex@out#1{\Uchar"#1 } - - \else\ifpxhy@ucs@avail - - %% \pxhy@Ux - \def\pxhy@Ux{\pxhy@uchex} - \pxhy@utfXVIfalse - \def\pxhy@uchex@out#1{% - \expandafter\pxhy@uchex@out@a\ucs"#1\pxhy@mk{#1}% - } - \chardef\pxhy@max@asc="7F - \def\pxhy@uchex@out@a#1\pxhy@mk#2{% - \ifnum#1<\z@ - \ifnum"#2>\pxhy@max@asc - \ifpxhy@extjis@use - \expandafter\pxhy@uchex@out@b\csname - pxhy@uc/\number"#2\endcsname{#2}% - \else \pxhy@uchex@out@b\relax{#2}% - \fi - \else \Uchar"#2 - \fi - \else \Uchar#1 - \fi - } - \def\pxhy@uchex@out@b#1#2{% - \ifx#1\relax - \@nameuse{U+#2}% - \pxhy@print@geta - \else #1% - \fi - } - - \fi\fi -\else\ifpxhy@uptex %<*upTeX> - - %% \pxhy@Ux - \def\pxhy@Ux{\pxhy@uchex}% - \pxhy@utfXVIfalse - - %% \pxhy@marker: a not-a-char U+FDD1 - \pxhy@get@jchar{\ucs"\pxhy@uc@XNAC} - \edef\pxhy@marker{\pxhy@jchar} - - %BEGIN-- in the following block #1 means the marker - \def\pxhy@next#1{% #1=marker - %% \pxhy@uchex@out - % Expands to a tag string which will later be converted to - % a real character in the postprocess. - \def\pxhy@uchex@out##1{#1##1>}% - %% \pxhy@posthook - % The postprocess of this package. It is registered to - % \pdfstringdefPostHook. - \def\pxhy@posthook##1{% - \expandafter\pxhy@posthook@a##1#1\pxhy@end - \pxhy@posthook@b##1% - }% - \def\pxhy@posthook@a##1#1##2\pxhy@end{% - \ifx\pxhy@mt##2\pxhy@mt - \expandafter\@gobbletwo - \fi - }% - \def\pxhy@posthook@b##1{% - \let\pxhy@str\@empty - \expandafter\pxhy@posthook@c##1#1>% - \global\let##1=\pxhy@str - }% - \def\pxhy@posthook@c##1#1##2>{% - \ifx\pxhy@mt##2\pxhy@mt - \edef\pxhy@str{\pxhy@str##1}% - \else - \pxhy@get@jchar{"##2}% - \edef\pxhy@str{\pxhy@str##1\pxhy@jchar}% - \expandafter\pxhy@posthook@c - \fi - }% - } - \expandafter\pxhy@next\pxhy@marker - %END-- - -\fi\fi\fi % - -\AtEndOfPackage{% -\ifx\pxhy@posthook\@undefined\else - \bxDebug{add to \string\pdfstringdefPostHook}% - % Add \pxhy@posthook to \pdfstringdefPostHook. - \begingroup - \toks@\expandafter{\pdfstringdefPostHook{#1}} - \edef\pxhy@next{% - \gdef\noexpand\pdfstringdefPostHook##1{% - \the\toks@ - \noexpand\pxhy@posthook{##1}% - }% - }% - \pxhy@next - \endgroup -\fi -} - -\ifpxhy@uniescape %<*uniescape> - - \let\pxhy@posthook\@undefined - %% \pxhy@Ux - \def\pxhy@Ux{\pxhy@uchex}% - % \pxhy@uchex converts to UTF-16 - \pxhy@utfXVItrue - \def\pxhy@uchex@out#1{% - % Expands to \0x form. - \0x#1% - } - -\fi % - -%% 'disable-Ux' (for debug) -\ifx t\pxhy@disable@Ux - \let\pxhy@Ux\@undefined - \let\pxhy@posthook\@undefined -\fi - -%% Makes \Ux be the code input command in PDF strings. -\ifx\pxhy@Ux\@undefined\else - \pdfstringdefDisableCommands{% - \let\Ux\pxhy@Ux - % bxbase - \let\bxUx\pxhy@Ux - \let\bxUI\pxhy@Ux - } -\fi - -%% \pxhy@let@jchar@uc\CS{} -\ifx\pxhy@Ux\@undefined - \def\pxhy@let@jchar@uc#1#2{% - \let#1\noindent % issue a warning - } -\else - \def\pxhy@let@jchar@uc#1#2{% - \def#1{\pxhy@Ux{#2}}% - } -\fi - -%--------------------------------------- Fix for high-byte protection -\ifpxhy@etex -\begingroup -% Check for high-byte protection. -\catcode"EF=\active \catcode`\^=7 -\global\let\pxhy@std@EF=^^ef -\def\pxhy@next#1 #2\pxhy@end{% - \@tempswafalse - \def\pxhy@tmpa{#1}\edef\pxhy@tmpb{\string\protected}% - \ifx\pxhy@tmpa\pxhy@tmpb \@tempswatrue \fi -}\expandafter\pxhy@next\meaning\pxhy@std@EF. \pxhy@end -% Add a hook if protected. -\if@tempswa - - %% \pxhy@unprotect@high@bytes - \let\pxhy@unprotect@high@bytes\@empty - \def\pxhy@next#1#2{% - \expandafter\gdef\expandafter#1\expandafter{#2}% - \edef\pxhy@unprotect@high@bytes{% - \unexpanded\expandafter{\pxhy@unprotect@high@bytes}% - \unexpanded{\let#2#1}}% - \advance\@tempcnta\@ne - } - \@tempcnta="C2 - \@whilenum{\@tempcnta<"F5}\do{% - \lccode"EF=\@tempcnta - \lowercase{\expandafter\pxhy@next\csname - pxhy@uhb/\string^^ef\endcsname^^ef}% - } - \xdef\pxhy@unprotect@high@bytes{% - \unexpanded{\ifx^^ef\pxhy@std@EF}% - \unexpanded\expandafter{\pxhy@unprotect@high@bytes}% - \unexpanded{\fi}% - } - \ltx@GlobalPrependToMacro\pdfstringdefPreHook{\pxhy@unprotect@high@bytes} - -\fi -\endgroup -\fi -%--------------------------------------- Support for 'otfutf' -\ifpxhy@otfutf - -%% \pxhy@UTF -% The definition of \UTF in PDF strings. -\ifx\pxhy@Ux\@undefined - % Use a fallback definition. - \def\pxhy@UTF{\pxhy@uchex} - \pxhy@utfXVIfalse - \def\pxhy@uchex@out#1{% - \@nameuse{U+#1}% issue a warning - \pxhy@print@geta - } -\else - \let\pxhy@UTF\pxhy@Ux -\fi - -%% \pxhy@dispatch@otfutf -\@onlypreamble\pxhy@dispatch@otfutf -\def\pxhy@dispatch@otfutf{% - \global\let\pxhy@dispatch@otfutf\relax - \pdfstringdefDisableCommands{% - \let\UTF\pxhy@UTF - \let\UTFM\pxhy@UTF - \let\UTFK\pxhy@UTF - \let\UTFC\pxhy@UTF - \let\UTFT\pxhy@UTF - % pxbabel - \let\pxUTFJ\pxhy@UTF - } -} - -%% enable hooks -\pxhy@hook@after@package{otf}{\pxhy@dispatch@otfutf} - -\fi -%--------------------------------------- Support for 'otfcid' -\ifpxhy@otfcid - -%% packages -\pxhy@try@load@bxjatoucs - -%% annihilate the ajmacros's own pdfstring process -\ifpxhy@otfmacros\ifx\pxhy@bxjatoucs@failure\relax - \let\ajRedefine@ajCommands\relax -\fi\fi - -%% \pxhy@CID{} -\def\pxhy@CID#1{% - \expandafter\expandafter\expandafter\pxhy@cid@aux - \bxjaCidToUcsHex{#1}\pxhy@mk{\pxhy@xdetokenize{#1}}% -} -%% \pxhy@fast@CID{} -\def\pxhy@fast@CID#1{% - \expandafter\expandafter\expandafter\pxhy@cid@aux - \bxjaFastCidToUcsHex{#1}\pxhy@mk{\number#1}% -} -\ifx\pxhy@Ux\@undefined - \def\pxhy@cid@aux#1\pxhy@mk#2{% - \@nameuse{CID+#2}% issue a warning - \pxhy@print@geta - } -\else -\def\pxhy@cid@aux#1\pxhy@mk#2{% - \ifnum"#1>\z@ - \pxhy@Ux{#1}% - \else - \@nameuse{CID+#2}% - \pxhy@print@geta - \fi -} -\fi - -%% \pxhy@dispatch@otfcid -\@onlypreamble\pxhy@dispatch@otfcid -\def\pxhy@dispatch@otfcid{% - \global\let\pxhy@dispatch@otfcid\relax - \ifx\pxhy@bxjatoucs@failure\relax % available! - \pdfstringdefDisableCommands{% - \let\CID\pxhy@CID - }% - \else - \PackageWarningNoLine\pxhy@pkgname - {Option 'otfcid'/'otfmacros' is disabled, because\MessageBreak - \pxhy@bxjatoucs@failure}% - \pxhy@otfcidfalse - \fi -} - -%% \pxhy@dispatch@otfmacros -\@onlypreamble\pxhy@dispatch@otfmacros -\def\pxhy@dispatch@otfmacros{% - \global\let\pxhy@dispatch@otfmacros\relax - \ifx\pxhy@bxjatoucs@failure\relax % available! - \let\ajRedefine@ajCommands\relax - \chardef\pxhy@tmp@orgcc=\catcode`\@ - \makeatletter - \InputIfFileExists{pxjahyper-ajm.def}{% - \PackageInfo\pxhy@pkgname - {Loaded 'pxjahyper-ajm.def'\@gobble}% - }{% - \PackageWarning\pxhy@pkgname - {File 'pxjahyper-ajm.def' not found\@gobble}% - }% - \catcode`\@=\pxhy@tmp@orgcc - \else \pxhy@otfmacrosfalse - \fi -} - -%% enable hooks -\pxhy@hook@after@package{otf}{\pxhy@dispatch@otfcid} -\ifpxhy@otfmacros - \pxhy@hook@after@package{ajmacros}{\pxhy@dispatch@otfmacros} -\fi - -\fi -%--------------------------------------- Extended JIS mapping -\ifpxhy@extjis@map %<*extjis-map> -\begingroup - -\def\pxhy@next#1#2#3#4{% - \@tempcnta"#1\relax\@tempcntb#3\relax - \chardef\pxhy@tmpa\numexpr#4+1\relax - \@whilenum{\@tempcntb<\pxhy@tmpa}\do{% - \expandafter\xdef\csname pxhy@uc/\the\@tempcnta\endcsname{% - \unexpanded{#2}\the\@tempcntb}% - \advance\@tempcnta\@ne \advance\@tempcntb\@ne}% -} - -%% add special mapping -\ifnum \jis"2121="8140 % sjis - \pxhy@next{2460}{\207\10}{0}{7} - \pxhy@next{2468}{\207\11}{0}{7} - \pxhy@next{2470}{\207\12}{0}{3} - \pxhy@next{2160}{\207\12}{4}{7} - \pxhy@next{2164}{\207\13}{0}{5} - \pxhy@next{3349}{\207\13}{7}{7} - \pxhy@next{3314}{\207\14}{0}{0} - \pxhy@next{3322}{\207\14}{1}{1} - \pxhy@next{334D}{\207\14}{2}{2} - \pxhy@next{3318}{\207\14}{3}{3} - \pxhy@next{3327}{\207\14}{4}{4} - \pxhy@next{3303}{\207\14}{5}{5} - \pxhy@next{3336}{\207\14}{6}{6} - \pxhy@next{3351}{\207\14}{7}{7} - \pxhy@next{3357}{\207\15}{0}{0} - \pxhy@next{330D}{\207\15}{1}{1} - \pxhy@next{3326}{\207\15}{2}{2} - \pxhy@next{3323}{\207\15}{3}{3} - \pxhy@next{332B}{\207\15}{4}{4} - \pxhy@next{334A}{\207\15}{5}{5} - \pxhy@next{333B}{\207\15}{6}{6} - \pxhy@next{339C}{\207\15}{7}{7} - \pxhy@next{339D}{\207\16}{0}{1} - \pxhy@next{338E}{\207\16}{2}{3} - \pxhy@next{33C4}{\207\16}{4}{4} - \pxhy@next{33A1}{\207\16}{5}{5} - \pxhy@next{337B}{\207\17}{6}{6} - \pxhy@next{301D}{\207\20}{0}{0} - \pxhy@next{301F}{\207\20}{1}{1} - \pxhy@next{2116}{\207\20}{2}{2} - \pxhy@next{33CD}{\207\20}{3}{3} - \pxhy@next{2121}{\207\20}{4}{4} - \pxhy@next{32A4}{\207\20}{5}{7} - \pxhy@next{32A7}{\207\21}{0}{1} - \pxhy@next{3231}{\207\21}{2}{3} - \pxhy@next{3239}{\207\21}{4}{4} - \pxhy@next{337E}{\207\21}{5}{5} - \pxhy@next{337D}{\207\21}{6}{6} - \pxhy@next{337C}{\207\21}{7}{7} - \pxhy@next{222E}{\207\22}{3}{3} - \pxhy@next{2211}{\207\22}{4}{4} - \pxhy@next{221F}{\207\23}{0}{0} - \pxhy@next{22BF}{\207\23}{1}{1} - \pxhy@next{FF61}{\24}{1}{7} - \pxhy@next{FF68}{\25}{0}{7} - \pxhy@next{FF70}{\26}{0}{7} - \pxhy@next{FF78}{\27}{0}{7} - \pxhy@next{FF80}{\30}{0}{7} - \pxhy@next{FF88}{\31}{0}{7} - \pxhy@next{FF90}{\32}{0}{7} - \pxhy@next{FF98}{\33}{0}{7} -\else\ifnum\jis"2121="A1A1 % euc - \pxhy@next{FF61}{\216\24}{1}{7} - \pxhy@next{FF68}{\216\25}{0}{7} - \pxhy@next{FF70}{\216\26}{0}{7} - \pxhy@next{FF78}{\216\27}{0}{7} - \pxhy@next{FF80}{\216\30}{0}{7} - \pxhy@next{FF88}{\216\31}{0}{7} - \pxhy@next{FF90}{\216\32}{0}{7} - \pxhy@next{FF98}{\216\33}{0}{7} -\fi\fi - -%% \pxhy@hkcdot -\global\pxhy@csletcs{pxhy@hkcdot}{pxhy@uc/\number"FF65} - -\endgroup -\fi % -%--------------------------------------- Redefine text commands for PD1 -\ifpxhy@charcmds %<*charcmds> - -%% \pxhy@cc@jis@only -\chardef\pxhy@cc@jis@only=0 -%% \pxhy@pdfenc -\edef\pxhy@pdfenc{% - \ifpxhy@hy@unicode PU\else PD1\fi -} - -%%<+> \pxDeclarePdfTextCommand{\CS}{}{} -\@onlypreamble\pxDeclarePdfTextCommand -\newcommand*\pxDeclarePdfTextCommand[3]{% - \pxhy@decl@pdf@tc{#2}{#3}% - {\DeclareTextCommand{#1}{\pxhy@pdfenc}}% - {\pxhy@revoke@pdf@tc{#1}}% -} - -%%<+> \pxDeclarePdfTextComposite{\CS}{}{}{} -\@onlypreamble\pxDeclarePdfTextComposite -\newcommand*\pxDeclarePdfTextComposite[4]{% - \pxhy@decl@pdf@tc{#3}{#4}% - {\DeclareTextCompositeCommand{#1}{\pxhy@pdfenc}{#2}}% - {\pxhy@revoke@pdf@tcc{#1}{#2}}% -} - -%% \pxhy@revoke@pdf@tc -\@onlypreamble\pxhy@revoke@pdf@tc -\def\pxhy@revoke@pdf@tc#1{% - \expandafter\let\csname\pxhy@pdfenc\string#1\endcsname\@undefined - \pxhy@make@txtcmd\pxhy@tmpa{\pxhy@pdfenc}#1% - \ifx#1\pxhy@tmpa - \pxhy@make@txtcmd#1?#1% - \fi -} -\@onlypreamble\pxhy@make@txtcmd -\def\pxhy@make@txtcmd#1#2#3{% - \expandafter\def\expandafter#1\expandafter{% - \csname#2-cmd\expandafter\endcsname\expandafter#3% - \csname#2\string#3\endcsname - }% -} - -%% \pxhy@revoke@pdf@tcc -\@onlypreamble\pxhy@revoke@pdf@tc -\def\pxhy@revoke@pdf@tcc#1#2{% - \expandafter\let\csname\@backslashchar\pxhy@pdfenc - \string#1-\string#2\endcsname\@undefined -} - -%% \pxhy@decl@pdf@tc -\@onlypreamble\pxhy@decl@pdf@tc -\def\pxhy@decl@pdf@tc#1#2{% - \edef\pxhy@next{{#1}{\ifx\pxhy@mt#2\pxhy@mt FFFD\else#2\fi}}% - \expandafter\pxhy@get@body\pxhy@next - \ifx\pxhy@body\@undefined - \let\pxhy@next\@secondoftwo - \else - \def\pxhy@next{% - \expandafter\pxhy@decl@pdf@tc@a\pxhy@body\pxhy@end}% - \fi - \pxhy@next -} -\@onlypreamble\pxhy@decl@pdf@tc@a -\def\pxhy@decl@pdf@tc@a#1\pxhy@end#2#3{% - #2{#1}% -} - -%% \pxhy@get@body{}{} -\@onlypreamble\pxhy@get@body -\ifpxhy@uptex %<*upTeX> - \def\pxhy@get@body#1#2{% - \pxhy@get@jchar{\ucs"#2}% - \let\pxhy@body\pxhy@jchar - }% -\else\ifpxhy@hy@unicode %<*unicode> - \def\pxhy@get@body#1#2{% - \def\pxhy@body{\unichar{"#2}}% - }% -\else\ifpxhy@uniescape %<*uniescape> - \def\pxhy@get@body#1#2{% - \ifx\pxhy@mt#1\pxhy@mt - \def\pxhy@body{\0x#2}% - \else - \pxhy@get@jchar{\jis"#1}% - \let\pxhy@body\pxhy@jchar - \fi - }% -\else %<*!> - \chardef\pxhy@cc@jis@only=1 - \def\pxhy@get@body#1#2{% - \ifx\pxhy@mt#1\pxhy@mt - \let\pxhy@body\@undefined - \else - \pxhy@get@jchar{\jis"#1}% - \let\pxhy@body\pxhy@jchar - \fi - }% -\fi\fi\fi % - -%%%%%%%%%%%%%%%%%%%% the definitions -\ifpxhy@hy@unicode %<*unicode> - -% The PU encoding has already done the job. -% I supplement some definitions. -\def\pxhy@next#1#2{% - \expandafter\ifx\csname PU\string#1\endcsname\relax - \DeclareTextCommand{#1}{PU}{#2}\fi} -\pxhy@next{\guillemetleft}{\80\253}%00AB -\pxhy@next{\guillemetright}{\80\273}%00BB -\pxhy@next{\textborn}{\9046\005}%2605 -\pxhy@next{\textfinalsigma}{\83\302}%03C2 -\pxhy@next{\textxgeq}{\9042\145}%2265 -\pxhy@next{\textxleq}{\9042\144}%2264 - -\else % - -% JIS X 0213 does not distinguish the following pairs: -% - circumflex(U+02C6) and asciicircum(U+005E) -% - tilde(U+02DC) and asciitilde(U+007E) -% Here I use ASCII characters as done in JIS. -\DeclareTextCommand{\textcircumflex}{PD1}{\136} -\DeclareTextCommand{\textasciicircum}{PD1}{\136} -\DeclareTextCommand{\texttilde}{PD1}{\176} -\DeclareTextCommand{\textasciitilde}{PD1}{\176} - -% Some ad-hoc redefinitions. -\DeclareTextCommand{\textfi}{PD1}{fi} -\DeclareTextCommand{\textfl}{PD1}{fl} -\DeclareTextCommand{\IJ}{PD1}{IJ}% needed? -\DeclareTextCommand{\ij}{PD1}{ij}% needed? -\DeclareTextCommand{\textspace}{PD1}{\040} -\DeclareTextCommand{\textquotesingle}{PD1}{\047} -\DeclareTextCommand{\textasteriskcentered}{PD1}{*} -\DeclareTextCommand{\textanoteleia}{PD1}{\textperiodcentered} -\DeclareTextCommand{\texterotimatiko}{PD1}{;} - -%% Some adjustments on accents. -\DeclareTextAccent{\H}{PD1}{\texthungarumlaut} -\DeclareTextCompositeCommand{\H}{PD1}{\@empty}{\texthungarumlaut} -\DeclareTextCompositeCommand{\H}{PD1}{\ }{\texthungarumlaut} -\DeclareTextAccent{\u}{PD1}{\textasciibreve} -\DeclareTextCompositeCommand{\u}{PD1}{\@empty}{\textasciibreve} -\DeclareTextCompositeCommand{\u}{PD1}{\ }{\textasciibreve} -\DeclareTextAccent{\U}{PD1}{\textasciibreve} -\DeclareTextCompositeCommand{\U}{PD1}{\@empty}{\textasciibreve} -\DeclareTextCompositeCommand{\U}{PD1}{\ }{\textasciibreve} -\DeclareTextAccent{\k}{PD1}{\textogonek} -\DeclareTextCompositeCommand{\k}{PD1}{\@empty}{\textogonek} -\DeclareTextCompositeCommand{\k}{PD1}{\ }{\textogonek} - -%%[A] The characters in PdfDocEncoding (except ASCII). -\pxDeclarePdfTextCommand{\textasciibreve}{}{02D8} -\pxDeclarePdfTextCommand{\textasciicaron}{}{02C7} -\pxDeclarePdfTextCommand{\textdotaccent}{}{02D9} -\pxDeclarePdfTextCommand{\texthungarumlaut}{}{02DD} -\pxDeclarePdfTextCommand{\textogonek}{}{02DB} -\pxDeclarePdfTextCommand{\textring}{}{02DA} -\pxDeclarePdfTextCommand{\texttilde}{}{02DC} -\pxDeclarePdfTextCommand{\textbullet}{}{2022} -\pxDeclarePdfTextCommand{\textdagger}{2277}{2020} -\pxDeclarePdfTextCommand{\textdaggerdbl}{2278}{2021} -\pxDeclarePdfTextCommand{\textellipsis}{2144}{2026} -\pxDeclarePdfTextCommand{\textemdash}{213D}{2014} -\pxDeclarePdfTextCommand{\textendash}{}{2013} -\pxDeclarePdfTextCommand{\textflorin}{}{0192} -\pxDeclarePdfTextCommand{\textfractionsolidus}{}{2044} -\pxDeclarePdfTextCommand{\guilsinglleft}{}{2039} -\pxDeclarePdfTextCommand{\guilsinglright}{}{203A} -\pxDeclarePdfTextCommand{\textminus}{215D}{2212} -\pxDeclarePdfTextCommand{\textperthousand}{2273}{2030} -\pxDeclarePdfTextCommand{\quotedblbase}{}{201E} -\pxDeclarePdfTextCommand{\textquotedblleft}{2148}{201C} -\pxDeclarePdfTextCommand{\textquotedblright}{2149}{201D} -\pxDeclarePdfTextCommand{\textquoteleft}{2146}{2018} -\pxDeclarePdfTextCommand{\textquoteright}{2147}{2019} -\pxDeclarePdfTextCommand{\quotesinglbase}{}{201A} -\pxDeclarePdfTextCommand{\texttrademark}{}{2122} -\pxDeclarePdfTextCommand{\L}{}{0141} -\pxDeclarePdfTextCommand{\OE}{}{0152} -\pxDeclarePdfTextComposite{\v}{S}{}{0160} -\pxDeclarePdfTextComposite{\"}{Y}{}{0178} -\pxDeclarePdfTextComposite{\v}{Z}{}{017D} -\pxDeclarePdfTextCommand{\i}{}{0131} -\pxDeclarePdfTextCommand{\l}{}{0142} -\pxDeclarePdfTextCommand{\oe}{}{0153} -\pxDeclarePdfTextComposite{\v}{s}{}{0161} -\pxDeclarePdfTextComposite{\v}{z}{}{017E} -\pxDeclarePdfTextCommand{\texteuro}{}{20AC} -\pxDeclarePdfTextCommand{\textexclamdown}{}{00A1} -\pxDeclarePdfTextCommand{\textcent}{2171}{00A2} -\pxDeclarePdfTextCommand{\textsterling}{2172}{00A3} -\pxDeclarePdfTextCommand{\textcurrency}{}{00A4} -\pxDeclarePdfTextCommand{\textyen}{216F}{00A5} -\pxDeclarePdfTextCommand{\textbrokenbar}{}{00A6} -\pxDeclarePdfTextCommand{\textsection}{2178}{00A7} -\pxDeclarePdfTextCommand{\textasciidieresis}{212F}{00A8} -\pxDeclarePdfTextCommand{\textcopyright}{}{00A9} -\pxDeclarePdfTextCommand{\textordfeminine}{}{00AA} -\pxDeclarePdfTextCommand{\guillemotleft}{}{00AB} -\pxDeclarePdfTextCommand{\textlogicalnot}{224C}{00AC} -\pxDeclarePdfTextCommand{\textlnot}{224C}{00AC} -\pxDeclarePdfTextCommand{\textregistered}{}{00AE} -\pxDeclarePdfTextCommand{\textasciimacron}{}{00AF} -\pxDeclarePdfTextCommand{\textdegree}{216B}{00B0} -\pxDeclarePdfTextCommand{\textplusminus}{215E}{00B1} -\pxDeclarePdfTextCommand{\texttwosuperior}{}{00B2} -\pxDeclarePdfTextCommand{\textthreesuperior}{}{00B3} -\pxDeclarePdfTextCommand{\textacute}{212D}{00B4} -%\pxDeclarePdfTextCommand{\textmu}{}{00B5} -\pxDeclarePdfTextCommand{\textparagraph}{2279}{00B6} -\pxDeclarePdfTextCommand{\textperiodcentered}{}{00B7} -\pxDeclarePdfTextCommand{\textcedilla}{}{00B8} -\pxDeclarePdfTextCommand{\textonesuperior}{}{00B9} -\pxDeclarePdfTextCommand{\textordmasculine}{}{00BA} -\pxDeclarePdfTextCommand{\guillemotright}{}{00BB} -\pxDeclarePdfTextCommand{\textonequarter}{}{00BC} -\pxDeclarePdfTextCommand{\textonehalf}{}{00BD} -\pxDeclarePdfTextCommand{\textthreequarters}{}{00BE} -\pxDeclarePdfTextCommand{\textquestiondown}{}{00BF} -\pxDeclarePdfTextComposite{\`}{A}{}{00C0} -\pxDeclarePdfTextComposite{\'}{A}{}{00C1} -\pxDeclarePdfTextComposite{\^}{A}{}{00C2} -\pxDeclarePdfTextComposite{\~}{A}{}{00C3} -\pxDeclarePdfTextComposite{\"}{A}{}{00C4} -\pxDeclarePdfTextComposite{\r}{A}{}{00C5} -\pxDeclarePdfTextCommand{\AE}{}{00C6} -\pxDeclarePdfTextComposite{\c}{C}{}{00C7} -\pxDeclarePdfTextComposite{\`}{E}{}{00C8} -\pxDeclarePdfTextComposite{\'}{E}{}{00C9} -\pxDeclarePdfTextComposite{\^}{E}{}{00CA} -\pxDeclarePdfTextComposite{\"}{E}{}{00CB} -\pxDeclarePdfTextComposite{\`}{I}{}{00CC} -\pxDeclarePdfTextComposite{\'}{I}{}{00CD} -\pxDeclarePdfTextComposite{\^}{I}{}{00CE} -\pxDeclarePdfTextComposite{\"}{I}{}{00CF} -\pxDeclarePdfTextCommand{\DH}{}{00D0} -\pxDeclarePdfTextCommand{\DJ}{}{00D0} -\pxDeclarePdfTextComposite{\~}{N}{}{00D1} -\pxDeclarePdfTextComposite{\`}{O}{}{00D2} -\pxDeclarePdfTextComposite{\'}{O}{}{00D3} -\pxDeclarePdfTextComposite{\^}{O}{}{00D4} -\pxDeclarePdfTextComposite{\~}{O}{}{00D5} -\pxDeclarePdfTextComposite{\"}{O}{}{00D6} -\pxDeclarePdfTextCommand{\textmultiply}{215F}{00D7} -\pxDeclarePdfTextCommand{\O}{}{00D8} -\pxDeclarePdfTextComposite{\`}{U}{}{00D9} -\pxDeclarePdfTextComposite{\'}{U}{}{00DA} -\pxDeclarePdfTextComposite{\^}{U}{}{00DB} -\pxDeclarePdfTextComposite{\"}{U}{}{00DC} -\pxDeclarePdfTextComposite{\'}{Y}{}{00DD} -\pxDeclarePdfTextCommand{\TH}{}{00DE} -\pxDeclarePdfTextCommand{\ss}{}{00DF} -\pxDeclarePdfTextComposite{\`}{a}{}{00E0} -\pxDeclarePdfTextComposite{\'}{a}{}{00E1} -\pxDeclarePdfTextComposite{\^}{a}{}{00E2} -\pxDeclarePdfTextComposite{\~}{a}{}{00E3} -\pxDeclarePdfTextComposite{\"}{a}{}{00E4} -\pxDeclarePdfTextComposite{\r}{a}{}{00E5} -\pxDeclarePdfTextCommand{\ae}{}{00E6} -\pxDeclarePdfTextComposite{\c}{c}{}{00E7} -\pxDeclarePdfTextComposite{\`}{e}{}{00E8} -\pxDeclarePdfTextComposite{\'}{e}{}{00E9} -\pxDeclarePdfTextComposite{\^}{e}{}{00EA} -\pxDeclarePdfTextComposite{\"}{e}{}{00EB} -\pxDeclarePdfTextComposite{\`}{i}{}{00EC} -\pxDeclarePdfTextComposite{\`}{\i}{}{00EC} -\pxDeclarePdfTextComposite{\'}{i}{}{00ED} -\pxDeclarePdfTextComposite{\'}{\i}{}{00ED} -\pxDeclarePdfTextComposite{\^}{i}{}{00EE} -\pxDeclarePdfTextComposite{\^}{\i}{}{00EE} -\pxDeclarePdfTextComposite{\"}{i}{}{00EF} -\pxDeclarePdfTextComposite{\"}{\i}{}{00EF} -\pxDeclarePdfTextCommand{\dh}{}{00F0} -\pxDeclarePdfTextComposite{\~}{n}{}{00F1} -\pxDeclarePdfTextComposite{\`}{o}{}{00F2} -\pxDeclarePdfTextComposite{\'}{o}{}{00F3} -\pxDeclarePdfTextComposite{\^}{o}{}{00F4} -\pxDeclarePdfTextComposite{\~}{o}{}{00F5} -\pxDeclarePdfTextComposite{\"}{o}{}{00F6} -\pxDeclarePdfTextCommand{\textdivide}{2160}{00F7} -\pxDeclarePdfTextCommand{\o}{}{00F8} -\pxDeclarePdfTextComposite{\`}{u}{}{00F9} -\pxDeclarePdfTextComposite{\'}{u}{}{00FA} -\pxDeclarePdfTextComposite{\^}{u}{}{00FB} -\pxDeclarePdfTextComposite{\"}{u}{}{00FC} -\pxDeclarePdfTextComposite{\'}{y}{}{00FD} -\pxDeclarePdfTextCommand{\th}{}{00FE} -\pxDeclarePdfTextComposite{\"}{y}{}{00FF} -\pxDeclarePdfTextCommand{\textcelsius}{216E}{2103} -%% - -%%[B] Aliases to [A]. -\pxDeclarePdfTextCommand{\textflqq}{}{00AB} -\pxDeclarePdfTextCommand{\textneg}{224C}{00AC} -\pxDeclarePdfTextCommand{\textpm}{215E}{00B1} -\pxDeclarePdfTextCommand{\textcdot}{}{00B7} -\pxDeclarePdfTextCommand{\textfrqq}{}{00BB} -\pxDeclarePdfTextCommand{\texttimes}{215F}{00D7} -\pxDeclarePdfTextCommand{\textdiv}{2160}{00F7} -\pxDeclarePdfTextCommand{\textgrq}{2146}{2018} -\pxDeclarePdfTextCommand{\textglq}{}{201A} -\pxDeclarePdfTextCommand{\textgrqq}{2148}{201C} -\pxDeclarePdfTextCommand{\textglqq}{}{201E} -\pxDeclarePdfTextCommand{\textflq}{}{2039} -\pxDeclarePdfTextCommand{\textfrq}{}{203A} -\pxDeclarePdfTextCommand{\guillemetleft}{}{00AB} -\pxDeclarePdfTextCommand{\guillemetright}{}{00BB} -%% - -%%[C] The characters that are included both in JIS X 0213 -% and some of the TeX encodings. -% Note: The entries marked with (*) involves non-standard mappings. -\pxDeclarePdfTextCommand{\textbardbl}{2142}{2016} -\pxDeclarePdfTextCommand{\textlangle}{2152}{3008}%(*)2329 -\pxDeclarePdfTextCommand{\textrangle}{2153}{3009}%(*)232A -\pxDeclarePdfTextCommand{\textxleq}{2165}{2266}%(*)2264 -\pxDeclarePdfTextCommand{\textxgeq}{2166}{2267}%(*)2265 -\pxDeclarePdfTextCommand{\textinfty}{2167}{221E} -\pxDeclarePdfTextCommand{\textborn}{217A}{2605} -\pxDeclarePdfTextCommand{\textreferencemark}{2228}{203B} -\pxDeclarePdfTextCommand{\textrightarrow}{222A}{2192} -\pxDeclarePdfTextCommand{\textleftarrow}{222B}{2190} -\pxDeclarePdfTextCommand{\textuparrow}{222C}{2191} -\pxDeclarePdfTextCommand{\textdownarrow}{222D}{2193} -\pxDeclarePdfTextCommand{\textsurd}{2265}{221A} -\pxDeclarePdfTextCommand{\textapprox}{}{2245} -\pxDeclarePdfTextCommand{\textmusicalnote}{2276}{266A} -\pxDeclarePdfTextCommand{\textbigcircle}{227E}{25EF} -\pxDeclarePdfTextCommand{\textopenbullet}{}{25E6} -\pxDeclarePdfTextCommand{\textell}{}{2113} -\pxDeclarePdfTextCommand{\textmho}{}{2127} -\pxDeclarePdfTextCommand{\textAlpha}{2621}{0391} -\pxDeclarePdfTextCommand{\textBeta}{2622}{0392} -\pxDeclarePdfTextCommand{\textGamma}{2623}{0393} -\pxDeclarePdfTextCommand{\textDelta}{2624}{0394} -\pxDeclarePdfTextCommand{\textEpsilon}{2625}{0395} -\pxDeclarePdfTextCommand{\textZeta}{2626}{0396} -\pxDeclarePdfTextCommand{\textEta}{2627}{0397} -\pxDeclarePdfTextCommand{\textTheta}{2628}{0398} -\pxDeclarePdfTextCommand{\textIota}{2629}{0399} -\pxDeclarePdfTextCommand{\textKappa}{262A}{039A} -\pxDeclarePdfTextCommand{\textLambda}{262B}{039B} -\pxDeclarePdfTextCommand{\textMu}{262C}{039C} -\pxDeclarePdfTextCommand{\textNu}{262D}{039D} -\pxDeclarePdfTextCommand{\textXi}{262E}{039E} -\pxDeclarePdfTextCommand{\textOmicron}{262F}{039F} -\pxDeclarePdfTextCommand{\textPi}{2630}{03A0} -\pxDeclarePdfTextCommand{\textRho}{2631}{03A1} -\pxDeclarePdfTextCommand{\textSigma}{2632}{03A3} -\pxDeclarePdfTextCommand{\textTau}{2633}{03A4} -\pxDeclarePdfTextCommand{\textUpsilon}{2634}{03A5} -\pxDeclarePdfTextCommand{\textPhi}{2635}{03A6} -\pxDeclarePdfTextCommand{\textChi}{2636}{03A7} -\pxDeclarePdfTextCommand{\textPsi}{2637}{03A8} -\pxDeclarePdfTextCommand{\textOmega}{2638}{03A9} -\pxDeclarePdfTextCommand{\textohm}{2638}{03A9}%(*)2126 -\pxDeclarePdfTextCommand{\textalpha}{2641}{03B1} -\pxDeclarePdfTextCommand{\textbeta}{2642}{03B2} -\pxDeclarePdfTextCommand{\textgamma}{2643}{03B3} -\pxDeclarePdfTextCommand{\textdelta}{2644}{03B4} -\pxDeclarePdfTextCommand{\textepsilon}{2645}{03B5} -\pxDeclarePdfTextCommand{\textzeta}{2646}{03B6} -\pxDeclarePdfTextCommand{\texteta}{2647}{03B7} -\pxDeclarePdfTextCommand{\texttheta}{2648}{03B8} -\pxDeclarePdfTextCommand{\textiota}{2649}{03B9} -\pxDeclarePdfTextCommand{\textkappa}{264A}{03BA} -\pxDeclarePdfTextCommand{\textlambda}{264B}{03BB} -\pxDeclarePdfTextCommand{\textmu}{264C}{03BC} -\pxDeclarePdfTextCommand{\textnu}{264D}{03BD} -\pxDeclarePdfTextCommand{\textxi}{264E}{03BE} -\pxDeclarePdfTextCommand{\textomicron}{264F}{03BF} -\pxDeclarePdfTextCommand{\textpi}{2650}{03C0} -\pxDeclarePdfTextCommand{\textrho}{2651}{03C1} -\pxDeclarePdfTextCommand{\textsigma}{2652}{03C3} -\pxDeclarePdfTextCommand{\texttau}{2653}{03C4} -\pxDeclarePdfTextCommand{\textupsilon}{2654}{03C5} -\pxDeclarePdfTextCommand{\textphi}{2655}{03C6} -\pxDeclarePdfTextCommand{\textchi}{2656}{03C7} -\pxDeclarePdfTextCommand{\textpsi}{2657}{03C8} -\pxDeclarePdfTextCommand{\textomega}{2658}{03C9} -\pxDeclarePdfTextCommand{\textvarsigma}{}{03C2} -\pxDeclarePdfTextCommand{\textfinalsigma}{}{03C2} -\pxDeclarePdfTextCommand{\CYRA}{2721}{0410} -\pxDeclarePdfTextCommand{\CYRB}{2722}{0411} -\pxDeclarePdfTextCommand{\CYRV}{2723}{0412} -\pxDeclarePdfTextCommand{\CYRG}{2724}{0413} -\pxDeclarePdfTextCommand{\CYRD}{2725}{0414} -\pxDeclarePdfTextCommand{\CYRE}{2726}{0415} -\pxDeclarePdfTextCommand{\CYRYO}{2727}{0401} -\pxDeclarePdfTextComposite{\"}{\CYRE}{2727}{0401} -\pxDeclarePdfTextCommand{\CYRZH}{2728}{0416} -\pxDeclarePdfTextCommand{\CYRZ}{2729}{0417} -\pxDeclarePdfTextCommand{\CYRI}{272A}{0418} -\pxDeclarePdfTextCommand{\CYRISHRT}{272B}{0419} -\pxDeclarePdfTextComposite{\U}{\CYRI}{272B}{0419} -\pxDeclarePdfTextCommand{\CYRK}{272C}{041A} -\pxDeclarePdfTextCommand{\CYRL}{272D}{041B} -\pxDeclarePdfTextCommand{\CYRM}{272E}{041C} -\pxDeclarePdfTextCommand{\CYRN}{272F}{041D} -\pxDeclarePdfTextCommand{\CYRO}{2730}{041E} -\pxDeclarePdfTextCommand{\CYRP}{2731}{041F} -\pxDeclarePdfTextCommand{\CYRR}{2732}{0420} -\pxDeclarePdfTextCommand{\CYRS}{2733}{0421} -\pxDeclarePdfTextCommand{\CYRT}{2734}{0422} -\pxDeclarePdfTextCommand{\CYRU}{2735}{0423} -\pxDeclarePdfTextCommand{\CYRF}{2736}{0424} -\pxDeclarePdfTextCommand{\CYRH}{2737}{0425} -\pxDeclarePdfTextCommand{\CYRC}{2738}{0426} -\pxDeclarePdfTextCommand{\CYRCH}{2739}{0427} -\pxDeclarePdfTextCommand{\CYRSH}{273A}{0428} -\pxDeclarePdfTextCommand{\CYRSHCH}{273B}{0429} -\pxDeclarePdfTextCommand{\CYRHRDSN}{273C}{042A} -\pxDeclarePdfTextCommand{\CYRERY}{273D}{042B} -\pxDeclarePdfTextCommand{\CYRSFTSN}{273E}{042C} -\pxDeclarePdfTextCommand{\CYREREV}{273F}{042D} -\pxDeclarePdfTextCommand{\CYRYU}{2740}{042E} -\pxDeclarePdfTextCommand{\CYRYA}{2741}{042F} -\pxDeclarePdfTextCommand{\cyra}{2751}{0430} -\pxDeclarePdfTextCommand{\cyrb}{2752}{0431} -\pxDeclarePdfTextCommand{\cyrv}{2753}{0432} -\pxDeclarePdfTextCommand{\cyrg}{2754}{0433} -\pxDeclarePdfTextCommand{\cyrd}{2755}{0434} -\pxDeclarePdfTextCommand{\cyre}{2756}{0435} -\pxDeclarePdfTextCommand{\cyryo}{2757}{0451} -\pxDeclarePdfTextComposite{\"}{\cyre}{2757}{0451} -\pxDeclarePdfTextCommand{\cyrzh}{2758}{0436} -\pxDeclarePdfTextCommand{\cyrz}{2759}{0437} -\pxDeclarePdfTextCommand{\cyri}{275A}{0438} -\pxDeclarePdfTextCommand{\cyrishrt}{275B}{0439} -\pxDeclarePdfTextComposite{\U}{\cyri}{275B}{0439} -\pxDeclarePdfTextCommand{\cyrk}{275C}{043A} -\pxDeclarePdfTextCommand{\cyrl}{275D}{043B} -\pxDeclarePdfTextCommand{\cyrm}{275E}{043C} -\pxDeclarePdfTextCommand{\cyrn}{275F}{043D} -\pxDeclarePdfTextCommand{\cyro}{2760}{043E} -\pxDeclarePdfTextCommand{\cyrp}{2761}{043F} -\pxDeclarePdfTextCommand{\cyrr}{2762}{0440} -\pxDeclarePdfTextCommand{\cyrs}{2763}{0441} -\pxDeclarePdfTextCommand{\cyrt}{2764}{0442} -\pxDeclarePdfTextCommand{\cyru}{2765}{0443} -\pxDeclarePdfTextCommand{\cyrf}{2766}{0444} -\pxDeclarePdfTextCommand{\cyrh}{2767}{0445} -\pxDeclarePdfTextCommand{\cyrc}{2768}{0446} -\pxDeclarePdfTextCommand{\cyrch}{2769}{0447} -\pxDeclarePdfTextCommand{\cyrsh}{276A}{0448} -\pxDeclarePdfTextCommand{\cyrshch}{276B}{0449} -\pxDeclarePdfTextCommand{\cyrhrdsn}{276C}{044A} -\pxDeclarePdfTextCommand{\cyrery}{276D}{044B} -\pxDeclarePdfTextCommand{\cyrsftsn}{276E}{044C} -\pxDeclarePdfTextCommand{\cyrerev}{276F}{044D} -\pxDeclarePdfTextCommand{\cyryu}{2770}{044E} -\pxDeclarePdfTextCommand{\cyrya}{2771}{044F} -\pxDeclarePdfTextCommand{\textvisiblespace}{}{2423} -\pxDeclarePdfTextComposite{\=}{A}{}{0100} -\pxDeclarePdfTextComposite{\=}{I}{}{012A} -\pxDeclarePdfTextComposite{\=}{U}{}{016A} -\pxDeclarePdfTextComposite{\=}{E}{}{0112} -\pxDeclarePdfTextComposite{\=}{O}{}{014C} -\pxDeclarePdfTextComposite{\=}{a}{}{0101} -\pxDeclarePdfTextComposite{\=}{i}{}{012B} -\pxDeclarePdfTextComposite{\=}{\i}{}{012B} -\pxDeclarePdfTextComposite{\=}{u}{}{016B} -\pxDeclarePdfTextComposite{\=}{e}{}{0113} -\pxDeclarePdfTextComposite{\=}{o}{}{014D} -\pxDeclarePdfTextComposite{\k}{A}{}{0104} -\pxDeclarePdfTextComposite{\v}{L}{}{013D} -\pxDeclarePdfTextComposite{\'}{S}{}{015A} -\pxDeclarePdfTextComposite{\c}{S}{}{015E} -\pxDeclarePdfTextComposite{\v}{T}{}{0164} -\pxDeclarePdfTextComposite{\'}{Z}{}{0179} -\pxDeclarePdfTextComposite{\.}{Z}{}{017B} -\pxDeclarePdfTextComposite{\k}{a}{}{0105} -\pxDeclarePdfTextComposite{\v}{l}{}{013E} -\pxDeclarePdfTextComposite{\'}{s}{}{015B} -\pxDeclarePdfTextComposite{\c}{s}{}{015F} -\pxDeclarePdfTextComposite{\v}{t}{}{0165} -\pxDeclarePdfTextComposite{\'}{z}{}{017A} -\pxDeclarePdfTextComposite{\.}{z}{}{017C} -\pxDeclarePdfTextComposite{\'}{R}{}{0154} -\pxDeclarePdfTextComposite{\u}{A}{}{0102} -\pxDeclarePdfTextComposite{\'}{L}{}{0139} -\pxDeclarePdfTextComposite{\'}{C}{}{0106} -\pxDeclarePdfTextComposite{\v}{C}{}{010C} -\pxDeclarePdfTextComposite{\k}{E}{}{0118} -\pxDeclarePdfTextComposite{\v}{E}{}{011A} -\pxDeclarePdfTextComposite{\v}{D}{}{010E} -\pxDeclarePdfTextComposite{\'}{N}{}{0143} -\pxDeclarePdfTextComposite{\v}{N}{}{0147} -\pxDeclarePdfTextComposite{\H}{O}{}{0150} -\pxDeclarePdfTextComposite{\v}{R}{}{0158} -\pxDeclarePdfTextComposite{\r}{U}{}{016E} -\pxDeclarePdfTextComposite{\H}{U}{}{0170} -\pxDeclarePdfTextComposite{\c}{T}{}{0162} -\pxDeclarePdfTextComposite{\'}{r}{}{0155} -\pxDeclarePdfTextComposite{\u}{a}{}{0103} -\pxDeclarePdfTextComposite{\'}{l}{}{013A} -\pxDeclarePdfTextComposite{\'}{c}{}{0107} -\pxDeclarePdfTextComposite{\v}{c}{}{010D} -\pxDeclarePdfTextComposite{\k}{e}{}{0119} -\pxDeclarePdfTextComposite{\v}{e}{}{011B} -\pxDeclarePdfTextComposite{\v}{d}{}{010F} -\pxDeclarePdfTextCommand{\dj}{}{0111} -\pxDeclarePdfTextComposite{\'}{n}{}{0144} -\pxDeclarePdfTextComposite{\v}{n}{}{0148} -\pxDeclarePdfTextComposite{\H}{o}{}{0151} -\pxDeclarePdfTextComposite{\v}{r}{}{0159} -\pxDeclarePdfTextComposite{\r}{u}{}{016F} -\pxDeclarePdfTextComposite{\H}{u}{}{0171} -\pxDeclarePdfTextComposite{\c}{t}{}{0163} -\pxDeclarePdfTextCommand{\ng}{}{014B} -\pxDeclarePdfTextCommand{\textnumero}{}{2116} -%% - -% Give a substitute definition to characters that appear as -% ligatures, since otherwise hyperref leaves some garbage in -% output pdf-strings when such ligatures appear. -\ifnum\pxhy@cc@jis@only>\z@ - \DeclareTextCommand{\textendash}{PD1}{--} - \DeclareTextCommand{\textquestiondown}{PD1}{}% empty - \DeclareTextCommand{\textexclamdown}{PD1}{}% empty -\fi -\ifnum\pxhy@cc@jis@only>\z@ - \ifx\pxhy@hkcdot\@undefined\else - \DeclareTextCommand{\textperiodcentered}{PD1}{\pxhy@hkcdot} - \fi -\fi - -\fi % -%%%%%%%%%%%%%%%%%%%% done - - %% \pxhy@disable@tc@commands - \def\pxhy@disable@tc@commands{% - \let\yen\textyen - \let\copyright\textcopyright - \let\flqq\textflqq - \let\frqq\textfrqq - \let\textquotesinglbase\quotesinglbase - \let\crqq\textglqq - \let\clqq\textgrqq - \let\textquotedblbase\quotedblbase - \let\textEuro\texteuro - } - %% register to 'disable' list - \ltx@GlobalPrependToMacro\pdfstringdefPreHook{\pxhy@disable@tc@commands} - -\else %<*!textcmd> - -\@onlypreamble\pxDeclarePdfTextCommand -\newcommand*\pxDeclarePdfTextCommand[3]{} -\@onlypreamble\pxDeclarePdfTextComposite -\newcommand*\pxDeclarePdfTextComposite[4]{} - -\fi % -%--------------------------------------- Enable hyperref unicode -\ifpxhy@hy@unicode - -%% load the submodule -\input{pxjahyper-uni.def} -\ifx t\pxHyperrefUnicodePatched - \PackageInfo\pxhy@pkgname - {The setup for hyperref 'unicode' is applied.\@gobbletwo} -\else - \PackageInfo\pxhy@pkgname - {The setup for hyperref 'unicode' is NOT applied!\MessageBreak - The package might not work properly.\@gobbletwo} -\fi - -\fi -%--------------------------------------- 'jacommentline' -\ifpxhy@jacommentline - -% The 'jacommentline' feature outputs at the top of the -% hyperref outline file (*.out) a comment line including -% some Japanese characters. - -%% \pxhy@jacomment -\let\pxhy@jacomment\@empty -\begingroup - \@for\pxhy@x:={% - 2433,244E,2555,2521,2524,256B,244F,467C,4B5C,386C,% - 4A38,3B7A,2472,345E,245F,245E,2439% - }\do{% - \kansujichar1=\jis"\pxhy@x\relax - \xdef\pxhy@jacomment{\pxhy@jacomment\kansuji1}% - } -\endgroup - -%% attach a hook -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname ReadBookmarks\endcsname\relax\else - \g@addto@macro\ReadBookmarks{% - \if@filesw - \ifx\@outlinefile\@undefined\else - \immediate\write\@outlinefile{% - \@percentchar\pxhy@jacomment.}% - \fi - \fi - } -\fi - -\fi -%--------------------------------------- 'disablecmds' -\ifpxhy@disablecmds - -%% \pxhy@rensuji -\ifpxhy@etex - \def\pxhy@rensuji{% - \pxhy@if@star\pxhy@rensuji@a\pxhy@rensuji@a - } - \def\pxhy@rensuji@a{% - \pxhy@if@opt\@secondoftwo\@firstofone - } -\else - \let\pxhy@rensuji\relax % freeze -\fi - -%% \pxhy@ifdef@let\CSa\CSb -\def\pxhy@ifdef@let#1#2{% - \ifx#1\@undefined\else - \let#1#2% - \fi -} - -%% \pxhy@disable@commands -\def\pxhy@disable@commands{% - % pTeX primitives - \let\autospacing\@empty - \let\autoxspacing\@empty - \let\inhibitglue\@empty - \let\noautospacing\@empty - \let\noautoxspacing\@empty - \let\disinhibitglue\@empty - % pLaTeX core - \let\romanencoding\@gobble - \let\kanjiencoding\@gobble - \let\romanfamily\@gobble - \let\kanjifamily\@gobble - \let\romanseries\@gobble - \let\kanjiseries\@gobble - \let\romanshape\@gobble - \let\kanjishape\@gobble - \let\useroman\@gobblefour - \let\usekanji\@gobblefour - \let\textmc\@firstofone - \let\textgt\@firstofone - \let\mcfamily\@empty - \let\gtfamily\@empty - \let\userelfont\@empty - \let\<\@empty - % plext - \pxhy@ifdef@let\bou\@firstofone - \pxhy@ifdef@let\kasen\@firstofone - \pxhy@ifdef@let\rensuji\pxhy@rensuji - \pxhy@ifdef@let\prensuji\pxhy@rensuji - \pxhy@ifdef@let\Rensuji\pxhy@rensuji - % japanese-otf - \pxhy@ifdef@let\textmg\@firstofone - \pxhy@ifdef@let\mgfamily\@empty - \pxhy@ifdef@let\ltseries\@empty - \pxhy@ifdef@let\ebseries\@empty - \pxhy@ifdef@let\propshape\@empty -} - -%% register to 'disable' list -% This registration should be of lower priority than others, -% and thus is prepended to pdfstringdefPreHook. -\ltx@GlobalPrependToMacro\pdfstringdefPreHook{\pxhy@disable@commands} - -%% additions for jsclasses -\ifx\pxhy@jsclasses@name\relax\else - \g@addto@macro\pxhy@disable@commands{% - \let\HUGE\@empty - \pxhy@ifdef@let\maybeblue\@empty - } -\fi - -%% additions for jlreq -\ifpxhy@jlreq@cls - % characters - \pxhy@let@jchar@jc\pxhy@C@ZWSP{2121} - \pxhy@let@jchar@jc\pxhy@C@ZWQM{2129} - \pxhy@let@jchar@jc\pxhy@C@ZWEM{212A} - %% \pxhy@P@tatechuyoko*{} - \def\pxhy@P@tatechuyoko{\pxhy@if@star\@firstofone\@firstofone} - %% \pxhy@P@jaspace{} - \def\pxhy@P@jaspace#1{\@nameuse{jaspace(arg=#1)}} - \@namedef{jaspace(arg=zenkaku)}{\pxhy@C@ZWSP} - \@namedef{jaspace(arg=nibu)}{ } - \@namedef{jaspace(arg=shibu)}{} - % addition - \def\pxhy@next#1{% - \let\expandafter\noexpand\csname#1\endcsname\noexpand#1} - \edef\pxhy@disable@commands{% - \unexpanded\expandafter{\pxhy@disable@commands}% - \pxhy@next\pxhy@C@ZWSP - \pxhy@next\pxhy@C@ZWQM - \pxhy@next\pxhy@C@ZWEM - \unexpanded{% - \let\jafontsize\@gobbletwo - \let\jaspace\pxhy@P@jaspace - \let\tatechuyoko\pxhy@P@tatechuyoko - \let\jidori\@secondoftwo - \let\akigumi\@secondoftwo}% - } -\fi - -%% additions for ascmac (experimental) -\@onlypreamble\pxhy@dispatch@dc@ascmac -\def\pxhy@dispatch@dc@ascmac{% - \pxhy@let@jchar@jc\pxhy@P@yen{216F} - \pxhy@let@jchar@uc\pxhy@P@return{23CE} - \g@addto@macro\pxhy@disable@commands{% - \let\keytop\@firstofone - \let\yen\pxhy@P@yen - \let\return\pxhy@P@return - \let\Return\pxhy@P@return - }% -} -\pxhy@hook@after@package{ascmac}{\pxhy@dispatch@dc@ascmac} - -\fi -%--------------------------------------- All done -\endinput -%% EOF diff --git a/language/japanese/pxjahyper/pxjahyper.tex b/language/japanese/pxjahyper/pxjahyper.tex deleted file mode 100644 index 24c5b8c200..0000000000 --- a/language/japanese/pxjahyper/pxjahyper.tex +++ /dev/null @@ -1,428 +0,0 @@ -% 文字コードは UTF-8 -% uplatex で組版する -\documentclass[uplatex,dvipdfmx,a4paper]{jsarticle} -\renewcommand{\headfont}{\gtfamily\romanseries{sbc}\sffamily} -\usepackage[T1]{fontenc} -\usepackage{lmodern,textcomp} -\usepackage{color} -\definecolor{myblue}{rgb}{0,0,0.75} -\definecolor{mygreen}{rgb}{0,0.45,0} -\usepackage[colorlinks,hyperfootnotes=false]{hyperref} -\usepackage{pxjahyper} -\hypersetup{linkcolor=myblue,urlcolor=mygreen, - pdftitle={pxjahyperパッケージ}, - pdfauthor={八登崇之}} -\usepackage{bxtexlogo} -\bxtexlogoimport{*} -\usepackage{shortvrb} -\MakeShortVerb{\|} -\newcommand{\PkgVersion}{1.2} -\newcommand{\PkgDate}{2022/05/27} -\newcommand{\Pkg}[1]{\textsf{#1}} -\newcommand{\Meta}[1]{$\langle$\mbox{}#1\mbox{}$\rangle$} -\newcommand{\Note}{\par\noindent ※} -\newcommand{\Means}{:\quad} -\providecommand{\Strong}[1]{\textsf{#1}} -%----------------------------------------------------------- -\begin{document} -\title{\Pkg{pxjahyper} パッケージ} -\author{八登崇之\ (Takayuki YATO; aka.~``ZR'')} -\date{v\PkgVersion\quad[\PkgDate]} -\maketitle -\tableofcontents - -%=========================================================== -\section{概要} - -(u){\pLaTeX} + hyperref + dvipdfmxの組み合わせで -日本語を含む\Strong{PDF文字列}% -(“しおり”などの文書情報の文字列) -をもつPDF文書を作成する場合に必要となる機能を提供する。 -\begin{itemize} -\item dvipdfmx用の「tounicode special」について、 - 内部漢字コードに応じて適切なものを出力する。 -\item PDF文字列の中でLICR(|\"a| や |\textsection| 等の - 文字出力の命令)が正しく機能するようにする。 - ただし、エンジンが {\pTeX} の場合は、out2uni/convbkmk% - (および試験的機能の“force-unicode”)を利用 - する場合を除き、JIS~X~0208にない文字は出力できない - (hyperrefの警告が出る)。 -\item {\TeX} の版面拡大機能が使われている - (|\mag| が1000でない;典型的には\Pkg{jsclasses}の - 文書クラスで基底フォントサイズが10\,pt以外である) - 場合に、\Pkg{hyperref}が出力するpapersize specialの - 紙面サイズの値が不正になるが、この場合に |\mag| 値を - 考慮して求めた正しいサイズによるpapersize specialを - 改めて出力する。 -\end{itemize} - -%=========================================================== -\section{パッケージの読込} - -|\usepackage| で読み込む。 -\begin{quote}\small\begin{verbatim} -\usepackage[オプション,...]{pxjahyper} -\end{verbatim}\end{quote} - -\paragraph{使用可能なオプション}\mbox{} -\begin{itemize} -\item \Strong{設定キー記述}\Means - |\pxjahypersetup| 命令の引数に書く設定記述をパッケージオプションに - 書くことができる。 - 例えば\\ - |\usepackage[fallback=delete]{pxjahyper}|\\ - と指定すると、表現不能文字を代替するゲタ文字が出力されなくなる。 -\item \Strong{ドライバオプション}\Means - |dvipdfmx|、|dvips|、および |nodvidriver|% - (ドライバ依存動作の無効化を明示的に指示、 - 現状ではほとんどの動作が無効になる) - が指定できる。 - \Note 1.0版において |nodvidriver| の別名の |none| は - \Strong{廃止}された。 - (0.5版から非推奨だった。) -\item |resetdvidriver|(既定)\Means - ドライバオプションを\Pkg{hyperref}のドライバ指定から自動的に判定する。 - \Note 1.1版において名前を |auto| から |resetdvidriver| に変更した。 - 旧名の |auto| は\Strong{非推奨}とする。 -\item |tounicode|(既定)\Means - 以下の2つの設定を行う。 - \begin{enumerate} - \item ドライバが |dvipdfmx| である場合は「tounicode special」を発行する。 - \Note この設定は |notounicode| オプションにより打ち消される。 - \item 「tounicode special」を前提にした出力を行う。 - \Note この設定は |out2uni|・|convbkmk| オプションと排他である。 - \end{enumerate} -\item |notounicode|\Means - dvipdfmx用の「tounicode special」を発行しない。 -\item |out2uni|\Means - out2uniフィルタを使うことを前提にした出力を行う。 -\item |convbkmk|\Means - convbkmkフィルタを使うことを前提にした出力を行う。 - \Note ドライバが |dvips| の場合は既定で |convbkmk| が有効になる。 - これにより元の既定値 |tounicode| は - (1は効果がなく2は上書きされるため) - 実質的に無効化される。 -%\item |fallback-geta|(既定)\Means -% PDF文字列中で表現不可能な文字をゲタ記号(〓)に置き換える。 -%\item |fallback-delete|\Means -% PDF文字列中で表現不可能な文字を削除する。 -\item |otfmacros|(既定)\Means - \Pkg{japanese-otf}付属の\Pkg{ajmacros}パッケージが提供する - 文字入力命令(|\ajMaru|、|\ajLig| 等)をPDF文字列中で - “可能な限り”使えるようにする。 - \Note 詳細は\ref{ssec:otf-package}節を参照。 - \Note |otfmacros| を有効にする場合は |otfcid| も有効にする必要がある。 -\item |nootfmacros|\Means - |otfmacros| の否定。 - \Note 0.6版より既定を |otfmacros| に変更した。 -\item |papersize|(既定)\Means - papersize specialの補正を有効にする。 -\item |nopapersize|\Means - |papersize| の否定。 -\end{itemize} - -\paragraph{上級者向けオプション}\mbox{} -\begin{itemize} -\item |otfutf|(既定)\Means - \Pkg{japanese-otf}パッケージの |\UTF| 命令をPDF文字列中で - 使えるようにする。 - \Note 詳細は\ref{ssec:otf-package}節を参照。 -\item |nootfutf|\Means - |otfutf| の否定。 -\item |otfcid|(既定)\Means - \Pkg{japanese-otf}パッケージの |\CID| 命令をPDF文字列中で - “可能な限り”使えるようにする。 - \Note エンジンの{\eTeX}拡張および - \Pkg{etoolbox}と\Pkg{bxjatoucs}パッケージのインストールが必要。 - \Note 詳細は\ref{ssec:otf-package}節を参照。 -\item |nootfcid|\Means - |otfcid| の否定。 -\item |disablecmds|(既定)\Means - 「PDF文字列中のテキスト装飾命令の無効化」を有効にする。 - \Note 詳細は\ref{ssec:disablecmds}節を参照。 -\item |nodisablecmds|\Means - |disablecmds| の否定。 -\item |bigcode|(既定)\Means - {\upTeX}でのToUnicode CMapとしてUTF8-UTF16を用いる。 - %(当該のファイルが存在する必要がある。) -\item |nobigcode|\Means - |bigcode| の否定。 - {\upTeX}でのToUnicode CMapとしてUTF8-UCS2を用いる。 - \Note 0.3a版より既定を |bigcode| に変更した。 -\item |force-unicode|\Means - \Pkg{hyperref}の |unicode| オプションが有効でかつエンジンが{\pTeX}で - ある状況(0.9版よりサポートが追加されたが\Strong{試験的}である) - において出る警告を抑止する。 -\end{itemize} - -%=========================================================== -\section{機能} - -「概要」で述べた機能は(オプション設定に応じて) -自動的に実施される。 - -%------------------- -\subsection{設定} -\label{ssec:setup} - -パッケージの動作の設定を |\pxjahypersetup| 命令で行える。 - -\begin{quote}\small -|\pxjahypersetup{|\Meta{キー}|=|\Meta{値}|,...}| -\end{quote} - -有効な設定キーは以下の通り。 - -\begin{itemize} -\item |fallback=|\Meta{値}\Means - PDF文字列中で表現不可能な文字についての代替出力の方法を指定する。 - \begin{itemize} - \item |geta|(既定)\Means - 表現不可能な文字をゲタ記号(〓)に置き換える。 - \item |delete|\Means - 表現不可能な文字を削除する。 - \end{itemize} -\end{itemize} - -%------------------- -\subsection{Unicode符号値による入力} -\label{ssec:ux-command} - -PDF文字列入力中で、命令 |\Ux| が以下の意味に変更される。 -PDF文字列以外では |\Ux| は以前の定義(または未定義)に戻る。 -\footnote{|\Ux| という命令名は\Pkg{bxbase}パッケージの -Unicode符号値入力用の命令が使っているものである。 -従って、\Pkg{bxbase}パッケージを読み込んでいれば、 -「PDF文字列と版面出力の両方に使われる」ようなテキストにおいて、 -|\Ux| でUnicode符号値入力が可能になる。 -ただし、Unicode符号値入力用の命令としては -「\Pkg{japanese-otf}パッケージの |\UTF| 命令」 -の方が有名であり、\Pkg{pxjahyper}は |\UTF| もサポートするので、 -こちらを使う方が無難かもしれない。} - -\begin{itemize} -\item |\Ux{|\Meta{Unicode符号値16進}|}|\Means - その符号値の文字を出力する。 - 具体的な動作は以下の通り: - \begin{itemize} - \item |out2uni| または |convbkmk| が有効の - 場合は、エスケープ表記(|\0xUUUU|)を出力する。 - \item エンジンが{\upLaTeX}の場合、あるいは“unicodeモード” - (\ref{sec:Unicode-mode}節)が有効の場合は、 - 当該のUnicode文字自体を書いたのと同等になる。 - \item 上記以外で、{\TeX} Live 2022以降の{\pLaTeX}の場合 - \footnote{正確にいうと、|\Uchar| と |\ucs| プリミティブをもつ - {\epTeX}エンジンである場合。}% - は、当該のUnicode文字に対応するJIS符号系の文字を書いたのと同等になる。 - JIS符号系にない文字の場合は出力できないので警告を出しだ上で - ゲタ記号(〓)を出力% - \footnote{設定キー |fallback| の値が |delete| の場合は何も出力しない。 - 以降で「ゲタ記号を出力」とある場合についても同様。}% - する。 - \end{itemize} - \item どの条件にも当てはまらない場合は、|\Ux| は無効 - (定義されない)になる。 -\end{itemize} - -%------------------- -\subsection{\Pkg{japanese-otf}パッケージの文字入力命令への対応} -\label{ssec:otf-package} - -\paragraph{\textbackslash UTF命令} -\Pkg{japanese-otf}パッケージの |\UTF| 命令は、PDF文字列中では -out2uni用の出力を行う。 -本パッケージで |otfutf| オプションを有効にした場合は、 -PDF文字列中の動作が以下のように変更される。 - -\begin{itemize} -\item |\Ux| 命令(\ref{ssec:ux-command}節参照)が有効の場合は、 - |\Ux| と同じ動作 - \footnote{もし |\Ux| の出力がゲタ記号になる場合は、 - |\UTF| もゲタ記号になる。}% - になる。 -\item それ以外の場合は、 - 常に(警告を出した上で)ゲタ記号を出力する。 - %\Note {\pLaTeX}ではtounicodeの機能でUnicode文字を出力できないため。 -\end{itemize} - -\Note |\UTF| 命令の多言語版、 -すなわち |\UTFC|・|\UTFK|・|\UTFM|・|\UTFT| 命令も |\UTF| -と同じ扱いになる。 - -\paragraph{\textbackslash CID命令} -\Pkg{japanese-otf}パッケージの仕様では |\CID| 命令は、PDF文字列中では -サポートされない(未定義動作となる)。 -本パッケージで |otfcid| オプションを有効にした場合は、 -PDF文字列中で |\CID| が“可能な限り”使えるようにする。 -具体的な仕様は以下の通り。 - -\begin{itemize} -\item 当該のAJ1のグリフに“対応”する\textbf{単独の}Unicode文字が - あればそれを出力し、なければ - (警告を出した上で)ゲタ記号を出力する。 - \footnote{旧版では削除していたが、他の同様の場合と合わせるため - 1.0版よりゲタ記号を出力する仕様を変更した。} - \Note 例えば、|\CID{8226}|(ローマ数字12)はUnicode文字の - U+217Bに“対応”するので |\Ux{217B}| と同等になるが、 - |\CID{8297}|(ローマ数字15)については“対応”する - 単独のUnicode文字がないので、ゲタ記号に置き換えられる。 -\item ただし |\Ux| 命令(\ref{ssec:ux-command}節参照)が - 無効になる場合は、そもそもUnicode文字も出力できないため、 - 常に(警告を出した上で)ゲタ記号を出力する。 - 結局情報は欠落するが、それでも未定義動作(エラーになりえる) - よりは好ましいであろう。 -\end{itemize} - -\Note |otfcid| の利用には、エンジンの{\eTeX}拡張および -\Pkg{etoolbox}と\Pkg{bxjatoucs}パッケージが必要。 -\Note |\CID| 命令の多言語版はサポートされない。 - -\paragraph{ajmacrosパッケージの命令} -本パッケージで |otfmacros| オプションを有効にした場合は、 -\Pkg{japanese-otf}付属の\Pkg{ajmacros}パッケージが提供する -文字入力命令(|\ajMaru|、|\ajLig| 等)をPDF文字列中で -“可能な限り”使えるようにする。 -具体的な仕様は以下の通り。 - -\begin{itemize} -%\item 現状では、|\Ux| 命令が有効になる場合のみが -% サポートされる。 -% \Note それ以外の場合は |otfmacros| オプションは無効になる。 -\item Unicode文字で表現可能であればそれを出力し、 - なければ代替表現を出力する。 -\item Unicode文字を出力する場合の仕様は |\CID| と同じ。 - (|\Ux| が無効の場合はゲタ記号になる。) - 代替表現の場合は「普通の文字の出力に置き換えられる」 - 可能性がある。 - \Note 例えば、|\ajLig{ドル}|(“ドル”の組文字)はUnicode文字の - U+3326に“対応”するので |\Ux{3326}| と同等になるが、 - |\ajLig{ウルシ}|(“ウルシ”の組文字)はUnicodeに“対応”する - 文字がないため単に“|ウルシ|”と書いたのと同等になる。 -\end{itemize} - -\Note |otfmacros| を有効にする場合は |otfcid| も有効にする必要がある。 -(従って |otfcid| と同じ前提条件が課される。) -|otfcid| が無効な場合は |otfmacros| も無効になる。 -\Note \Pkg{ajmacros}パッケージの多くの命令は“脆弱(fragile)”である。 -そのため、節見出し(|\section| 等の引数)で |\ajMaru| 等の命令を -使いたい場合は、命令の前に |\protect| 付ける必要がある。 -\footnote{ちなみに、引数がPDF文字列として解釈される場合には、 - |\protect| は全く結果に影響しない。} - -%------------------- -\subsection{PDF文字列用の文字命令のユーザ定義} - -以下の命令が提供される。(プリアンブルでのみ使用可能。) - -\begin{itemize} -\item |\pxDeclarePdfTextCommand{\制御綴}{|\Meta{JIS符号値}|}{|\Meta -{Unicode符号値}|}|\Means - PDF文字列中の |\制御綴| の動作として、 - 指定した符号値の文字を出力することを指定する。 -\item |\pxDeclarePdfTextComposite{\制御綴}{|\Meta{引数}|}{|\Meta -{JIS符号値}|}{|\Meta{Unicode符号値}|}|\Means - PDF文字列中の「|\制御綴|(アクセント命令)+ \Meta{引数}」の - 動作として、指定した符号値の文字を出力することを指定する。 -\end{itemize} - -これらの命令において、符号値は16進数で指定する。 -Unicode文字の出力が可能な状況 -(エンジンが{\upLaTeX}の場合は常に該当する) -では「JIS符号値」は使われないので省略して -(空にして)もよい -\footnote{一応、「JIS符号値」が使われることが確実な状況では -「Unicode符号値」も省略可能であるが、 -そのような状況であるかの判断は困難であるため、 -「Unicode符号値」の省略は推奨されない。}% -(或いはそもそも JIS~X~0208 にない文字の場合は省略する)。 -%逆に「Unicode符号値」は {\pLaTeX} の動作でかつ「JIS符号値」が -%指定されている場合は省略してよい。 - -例えば、以下のように定義しておくと、 -PDF文字列中で |\textschwa|(schwa記号)や |\d{t}|(\d{t})が -使えるようになる。 -\begin{quote}\small\begin{verbatim} -\pxDeclarePdfTextCommand{\textschwa}{}{0259} -\pxDeclarePdfTextComposite{\d}{t}{}{1E6D} -\end{verbatim}\end{quote} - -%------------------- -\subsection{PDF文字列用中のテキスト装飾命令の無効化} -\label{ssec:disablecmds} - -PDF文字列は単なるUnicode文字列として扱われるものなので、 -|\textit| や |\large| 等のテキスト装飾用の命令は意味をなさず、 -またそれらの命令の実装はPDF文字列の解釈中は正常に処理できない。 -PDF文字列と版面出力の両方に使われるテキスト(節見出し等) -についてテキスト装飾命令が支障なく使えるように、 -\Pkg{hyperref}では基本的なテキスト装飾命令 -(多くは{\LaTeX}カーネルが提供するもの) -について、「PDF文字列として扱う場合は自動的に無力化 -\footnote{例えば、“|\textit{text}|”や“|{\large text}|”は - 単に“|text|”と書いたものと見なされる。} -する」機構を実装している。 -これにより、例えば節見出しのテキストに“|\textit{text}|”が -含まれていたとすると、 -版面に出力する場合には“\textit{text}”のように装飾が施され、 -一方で、PDF文字列としては“|text|”と解釈されることになる。 - -0.5版以降の\Pkg{pxjahyper}では、この無効化の対象に -「和文用のテキスト装飾命令(およびそれに準じるもの)」 -を追加するようになった。 -以下の命令が対象になる。 - -\begin{itemize} -\item \Pkg{hyperref}での無効化の対象である「フォント選択命令」の - 和文版に相当するもの。 - 例えば、 - |\textmc| |\gtfamily| |\kanjifamily| |\romanshape| - |\usekanji| |\useroman| |\userelfont| - 等が該当する。 -\item {\pLaTeX}カーネル命令\Means - |\<| -\item {\pTeX}プリミティブ\Means - |\|(|dis|)|inhibitglue| |\|(|no|)|autospacing| |\|(|no|)|autoxspacing| -\item \Pkg{plext}の命令\Means - |\bou| |\kasen| |\rensuji| -\item \Pkg{japanese-otf}の命令\Means - |\textmg| |\mgfamily| |\ltseries| |\ebseries| |\propshape| -\item \Pkg{jsclasses}のクラスの命令\Means - |\maybeblue| |\HUGE| -\item \Pkg{jlreq}クラスの命令\Means - |\jafontsize| |\tatechuyoko| |\jidori| % |\jaspace| |\akigumi| -\end{itemize} - -%=========================================================== -\section{hyperrefの“unicodeモード”での動作} -\label{sec:Unicode-mode} - -\Pkg{hyperref}パッケージの |unicode| オプションが有効である場合 -(これを“unicodeモード”と呼ぶことにする -\footnote{“unicodeモード”を有効にする方法は |unicode|(|=true|) - の指定以外にも存在する。 - また、\Pkg{hyperref}の7.00g版[2021-02-04]より、 - {\pLaTeX}以外のエンジン(\Strong{{\upLaTeX}も含む})について - “unicodeモード”は既定で有効になっていることに注意。}% -)で動作している場合は、PDF文字列のUnicodeへの変換は -(DVIドライバ等でなく)\Pkg{hyperref}自身により行われる。 -\Pkg{hyperref}が“unicodeモード”である場合には、\Pkg{pxjahyper}は -それを自動的に検知してそれに適応した動作に切り替える。 -\begin{itemize} -\item |\Ux| 命令は\Pkg{hyperref}の |\unichar| 命令を利用して出力する。 - このため、{\pLaTeX}でもUnicode文字の出力が可能になる。 -\item PDF文字列中の和文文字やLICR命令の処理は - \Pkg{hyperref}の側に任せられる。 - \Note ただし現状では「tounicode special」の発行は - (特に害はないため)無効化されない。 -\end{itemize} -ただし、現状での“unicodeモード”対応動作には以下の制限がある。 -\begin{itemize} -\item \Pkg{hyperref}の(|pdftitle| 等の)パッケージオプション中での - 和文文字の処理は失敗する。 - このため、文書情報は |\hypersetup| 命令で指定する必要がある。 -\item {\pLaTeX}における“unicodeモード”対応動作は試験的機能の - 扱いであるため、その旨の警告が表示される。 - この警告は |force-unicode| オプションを指定すれば抑止できる。 -\end{itemize} - -\end{document} -- cgit v1.2.3