diff options
author | Karl Berry <karl@freefriends.org> | 2024-08-26 20:07:29 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2024-08-26 20:07:29 +0000 |
commit | c97c3a78da912b23a12ef79692263e5c8946571c (patch) | |
tree | 10f8b267b421a8a5fa8cc628636dd628542e89f0 /Master/texmf-dist | |
parent | 5a4651565971e663327221dbc7271f65cf1cf48a (diff) |
pxjahyper (26aug24)
git-svn-id: svn://tug.org/texlive/trunk@72114 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r-- | Master/texmf-dist/doc/platex/pxjahyper/README-ja.md | 3 | ||||
-rw-r--r-- | Master/texmf-dist/doc/platex/pxjahyper/README.md | 1 | ||||
-rw-r--r-- | Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.pdf | bin | 165718 -> 166230 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.tex | 29 | ||||
-rw-r--r-- | Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-ajm.def | 163 | ||||
-rw-r--r-- | Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-enc.sty | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-uni.def | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/platex/pxjahyper/pxjahyper.sty | 100 |
8 files changed, 209 insertions, 91 deletions
diff --git a/Master/texmf-dist/doc/platex/pxjahyper/README-ja.md b/Master/texmf-dist/doc/platex/pxjahyper/README-ja.md index 88d23a45da5..43134f41eb1 100644 --- a/Master/texmf-dist/doc/platex/pxjahyper/README-ja.md +++ b/Master/texmf-dist/doc/platex/pxjahyper/README-ja.md @@ -73,6 +73,9 @@ pxjahyper-enc パッケージ ー 文字コード設定 更新履歴 -------- + * Version 1.5 〈2024/08/25〉 + - アンカー文字列での動作を修正。 + * Version 1.4 〈2024/08/14〉 - 設定キー `fallback-warn` を追加。 - 設定キー `fallback-cidm` を追加。 diff --git a/Master/texmf-dist/doc/platex/pxjahyper/README.md b/Master/texmf-dist/doc/platex/pxjahyper/README.md index 5b13a6de890..715809117ab 100644 --- a/Master/texmf-dist/doc/platex/pxjahyper/README.md +++ b/Master/texmf-dist/doc/platex/pxjahyper/README.md @@ -52,6 +52,7 @@ the PDF strings in the output DVI file. Revision History ---------------- + * Version 1.5 〈2024/08/25〉 * Version 1.4 〈2024/08/14〉 * Version 1.3 〈2023/03/01〉 * Version 1.2a 〈2022/10/19〉 diff --git a/Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.pdf b/Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.pdf Binary files differindex 07d88e51e90..49328d9519f 100644 --- a/Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.pdf +++ b/Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.pdf diff --git a/Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.tex b/Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.tex index 28745c5fe6a..43d3b197fc4 100644 --- a/Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.tex +++ b/Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.tex @@ -17,12 +17,13 @@ \usepackage{shortvrb} \MakeShortVerb{\|} \usepackage[verb]{bxghost} -\newcommand{\PkgVersion}{1.4} -\newcommand{\PkgDate}{2024/08/14} +\newcommand{\PkgVersion}{1.5} +\newcommand{\PkgDate}{2024/08/25} \newcommand{\Pkg}[1]{\textsf{#1}} \newcommand{\Meta}[1]{$\langle$\mbox{}#1\mbox{}$\rangle$} \newcommand{\Note}{\par\noindent ※} \newcommand{\Means}{:\quad} +\newcommand{\/}{\mbox{}/\mbox{}} \providecommand{\Strong}[1]{{\headfont#1}} %----------------------------------------------------------- \begin{document} @@ -79,7 +80,7 @@ \paragraph{plautopatchとの関係} \Pkg{plautopatch}パッケージが事前に読み込まれている場合は、 \Pkg{hyperref}が読み込まれるとその直後に自動的に\Pkg{pxjahyper}が -オプション無しで読み込まれる。 +\Strong{オプション無しで}読み込まれる。 もし何らかのオプションを指定したい場合は、 \Pkg{hyperref}の読込より前に|\PassOptionsToPackage|で オプションを指定する必要がある。 @@ -89,14 +90,14 @@ \paragraph{使用可能なオプション}\mbox{} \begin{itemize} -\item \Strong{設定キー記述}\Means - |\pxjahypersetup|命令の引数に書く設定記述をパッケージオプションに - 書くことができる。 +\item \Strong{パラメタ設定}\Means + |\pxjahypersetup|命令の引数に書くパラメタ設定設定記述を + パッケージオプションに書くことができる。 例えば \begin{quote}\small\begin{verbatim} \usepackage[fallback=delete]{pxjahyper} \end{verbatim}\end{quote} - と指定すると、表現不能文字を代替するゲタ文字が出力されなくなる。 + と指定すると、表現不能な文字を代替するゲタ文字が出力されなくなる。 \item \Strong{ドライバオプション}\Means 以下の値が指定できる。 \begin{itemize} @@ -110,8 +111,8 @@ この旧名も\Strong{非推奨}とする。}% は\Strong{非推奨}とする。 \item |nodvidriver|\Means - ドライバ依存動作の無効化を明示的に指示する。 - ほとんどの動作が無効になる。 + ドライバ依存動作の無効化を指示する。 + ほとんどの機能が無効になる。 \footnote{1.0版において|nodvidriver|の非推奨の別名の|none|は \Strong{廃止}された。} %(0.5版から非推奨だった。) @@ -191,7 +192,7 @@ \Pkg{hyperref}が出力する|.out|ファイルの先頭に日本語の文字を含む コメント行を出力する。 \Note {\pTeX}系エンジンの「入力漢字コード自動判定」に対する対策。 -\item |jacommentline|\Means +\item |nojacommentline|\Means |jacommentline|の否定。 \Note 不具合が発生したときのために無効化できるようにしている。 \item |force-unicode|(1.4版で\Strong{非推奨})\Means @@ -207,14 +208,15 @@ 自動的に実施される。 %------------------- -\subsection{設定} +\subsection{パラメタ設定} \label{ssec:setup} -パッケージの動作の設定を|\pxjahypersetup|命令で行える。 +パッケージの動作を制御する設定を|\pxjahypersetup|命令で行える。 \begin{quote}\small |\pxjahypersetup{|\Meta{キー}|=|\Meta{値}|,...}| \end{quote} +\Note 真偽値は|true|\/|false|で指定する。 有効な設定キーは以下の通り。 @@ -232,8 +234,7 @@ \end{itemize} \Note 以下、パッケージ動作の解説中で「ゲタ記号を出力」と ある場合は実際にはこの設定に従う。 -\item |fallback-warn=|\Meta{真偽値}% - \footnote{真偽値は|true|/|false|で指定する。}\Means +\item |fallback-warn=|\Meta{真偽値}\Means PDF文字列中の表現不能な文字について「ゲタ記号を出力」する際に 警告を出すか。 既定値は真。 diff --git a/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-ajm.def b/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-ajm.def index d584942789f..803a78c2cd5 100644 --- a/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-ajm.def +++ b/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-ajm.def @@ -11,7 +11,7 @@ %% package declaration \NeedsTeXFormat{pLaTeX2e} -\ProvidesFile{pxjahyper-ajm.def}[2024/08/14 v1.4] +\ProvidesFile{pxjahyper-ajm.def}[2024/08/25 v1.5] %% avoid multiple loading \csname pxjahyperajmLoaded\endcsname @@ -104,6 +104,12 @@ \fi } +%% \pxhy@cc@anchor@string{<macro-name>}{<number>} +% Expands to "anchor-string form" of a CC macro. +\def\pxhy@cc@anchor@string#1#2{% + \pxjahyperBadCharacter{aj#1+\number#2}% +} + %--------------------------------------- \pdfstringdef hook \pdfstringdefDisableCommands{% @@ -209,6 +215,45 @@ \let\pxhy@two@digits\relax \let\pxhy@knumeral\relax +%--------------------------------------- for counter commands + +%% \pxhy@cc@macro@name@list +\let\pxhy@cc@macro@name@list\@empty + +%% \pxhy@DeclareCCMacro{<macro-name>}...{<body>} +\def\pxhy@DeclareCCMacro#1{% + \eappto\pxhy@cc@macro@name@list{`\do{#1}}% + \pxhy@DeclareMacro{#1}% +} + +%% \pxhy@DeclareCCMacroVar{<macro-name>}...{<body-n>}{<body-v>} +% Variant of \pxhy@DeclareMacro, where the *-variant of the macro +% is declared. The parameter '...' will be shared with both forms. +\def\pxhy@DeclareCCMacroVar#1{% + \eappto\pxhy@cc@macro@name@list{`\do{#1@N}`\do{#1@V}}% + \pxhy@DeclareMacroVar{#1}% +} + +%% \pxhy@finish@declare@cc@macros +% Must be invoked after all CC macros are defined. +\def\pxhy@finish@declare@cc@macros{% + \let\do\pxhy@amend@cc@macro + \pxhy@cc@macro@name@list + \let\pxhy@cc@macro@name@list\@empty +} + +%% \pxhy@amend@cc@macro{<macro-name>} +\def\pxhy@amend@cc@macro#1{% + \expandafter\pxhy@amend@cc@macro@a + \csname\pxhy@#1\expandafter\endcsname + \csname\pxhy@#1@A\expandafter\endcsname + \csname\pxhy@#1@D\endcsname{#1}% +} +\def\pxhy@amend@cc@macro@a#1#2#3#4{% + \gdef#2{\pxhy@cc@anchor@string{#4}}% + \global\let#3#1% + \gdef#1{\pxhy@if@in@anchor#2#3}% +} %--------------------------------------- the redefinitions % A text command invoked in PDF-sttings must be "string-OK". @@ -242,7 +287,7 @@ % used as fallback (e.g. \ajKuroMaru{21}→“㉑)”. %%<!> \ajMaru[*]{<number>} -\pxhy@DeclareMacroVar{Maru}#1{%N +\pxhy@DeclareCCMacroVar{Maru}#1{%N \pxhy@fallback{0}{51}{100}{% \pxhy@rshift{0/8224,1/7554,21/8070,22/8080,32/10212,101}% }{\pxhy@numeral{#1}}% @@ -252,7 +297,7 @@ }{`\ajMaru{#1}}% } %%<!> \ajKuroMaru[*]{<number>} -\pxhy@DeclareMacroVar{KuroMaru}#1{%N +\pxhy@DeclareCCMacroVar{KuroMaru}#1{%N \pxhy@fallback{0}{21}{100}{% \pxhy@rshift{0/10503,1/8285,10/10504,101}% }{`\ajMaru{#1}}% @@ -262,7 +307,7 @@ }{`\ajKuroMaru{#1}}% } %%<!> \ajKaku[*]{<number>} -\pxhy@DeclareMacroVar{Kaku}#1{%N +\pxhy@DeclareCCMacroVar{Kaku}#1{%N \pxhy@fallback{0}{0}{100}{% \pxhy@twirange{10764}{10774}% }{`\ajMaru{#1}}% @@ -272,7 +317,7 @@ }{`\ajMaru{#1}}% } %%<!> \ajKuroKaku[*]{<number>} -\pxhy@DeclareMacroVar{KuroKaku}#1{%N +\pxhy@DeclareCCMacroVar{KuroKaku}#1{%N \pxhy@fallback{0}{0}{100}{% \pxhy@twirange{11037}{11047}% }{`\ajMaru{#1}}% @@ -282,7 +327,7 @@ }{`\ajMaru{#1}}% } %%<!> \ajMaruKaku[*]{<number>} -\pxhy@DeclareMacroVar{MaruKaku}#1{%N +\pxhy@DeclareCCMacroVar{MaruKaku}#1{%N \pxhy@fallback{0}{0}{100}{% \pxhy@twirange{11307}{11317}% }{`\ajMaru{#1}}% @@ -293,7 +338,7 @@ }{`\ajMaru{#1}}% } %%<!> \ajKuroMaruKaku[*]{<number>} -\pxhy@DeclareMacroVar{KuroMaruKaku}#1{%N +\pxhy@DeclareCCMacroVar{KuroMaruKaku}#1{%N \pxhy@fallback{0}{0}{100}{% \pxhy@twirange{11576}{11586}% }{`\ajMaru{#1}}% @@ -303,7 +348,7 @@ }{`\ajMaru{#1}}% } %%<!> \ajKakko[*]{<number>} -\pxhy@DeclareMacroVar{Kakko}#1{%N +\pxhy@DeclareCCMacroVar{Kakko}#1{%N \pxhy@fallback{0}{21}{100}{% \pxhy@rshift{0/8227,1/8070,21/9873,101}% }{(\pxhy@numeral{#1})}% @@ -313,7 +358,7 @@ }{`\ajKakko{#1}}% } %%<!> \ajRoman[*]{<number>} -\pxhy@DeclareMacroVar{Roman}#1{%N +\pxhy@DeclareCCMacroVar{Roman}#1{%N \pxhy@fallback{1}{13}{15}{% \pxhy@rshift{1/7574,11/8214,13/8282,16}% }{`\@Roman{#1}}% @@ -323,132 +368,132 @@ }{`\ifnum#1=\#{4}IIII`\else`\ajRoman{#1}`\fi}% } %%<!> \ajroman{<number>} -\pxhy@DeclareMacro{roman}#1{% +\pxhy@DeclareCCMacro{roman}#1{% \pxhy@fallback{1}{13}{15}{% \pxhy@rshift{1/8091,11/8287,16}% }{`\@roman{#1}}% } %%<!> \ajPeriod{<number>} -\pxhy@DeclareMacro{Period}#1{% +\pxhy@DeclareCCMacro{Period}#1{% \pxhy@fallback{0}{1}{11}{% 0.% }{\pxhy@rshift{0/8061,10/20577,12}}% } %%<!> \ajKakkoYobi{<number>} -\pxhy@DeclareMacro{KakkoYobi}#1{\pxhy@rshift{1/8196,10}} +\pxhy@DeclareCCMacro{KakkoYobi}#1{\pxhy@rshift{1/8196,10}} %%<!> \ajKakkoroman{<number>} -\pxhy@DeclareMacro{Kakkoroman}#1{% +\pxhy@DeclareCCMacro{Kakkoroman}#1{% \pxhy@fallback{1}{1}{15}{% \pxhy@rshift{1/9973,16}% }{(`\ajroman{#1})}% } %%<!> \ajKakkoRoman{<number>} -\pxhy@DeclareMacro{KakkoRoman}#1{% +\pxhy@DeclareCCMacro{KakkoRoman}#1{% \pxhy@fallback{1}{1}{15}{% \pxhy@rshift{1/9988,16}% }{(`\ajRoman{#1})}% } %%<!> \ajKakkoalph{<number>} -\pxhy@DeclareMacro{Kakkoalph}#1{\pxhy@rshift{1/8111,27}} +\pxhy@DeclareCCMacro{Kakkoalph}#1{\pxhy@rshift{1/8111,27}} %%<!> \ajKakkoAlph{<number>} -\pxhy@DeclareMacro{KakkoAlph}#1{\pxhy@rshift{1/10003,27}} +\pxhy@DeclareCCMacro{KakkoAlph}#1{\pxhy@rshift{1/10003,27}} %%<!> \ajKakkoHira{<number>} -\pxhy@DeclareMacro{KakkoHira}#1{% +\pxhy@DeclareCCMacro{KakkoHira}#1{% \pxhy@fallback{1}{1}{48}{% \pxhy@rshift{1/10029,49}% }{(\pxhy@rshift{1/10029,49})}% with parens } %%<!> \ajKakkoKata{<number>} -\pxhy@DeclareMacro{KakkoKata}#1{% +\pxhy@DeclareCCMacro{KakkoKata}#1{% \pxhy@fallback{1}{1}{48}{% \pxhy@rshift{1/10077,49}% }{(\pxhy@rshift{1/10077,49})}% with parens } %%<!> \ajKakkoKansuji{<number>} -\pxhy@DeclareMacro{KakkoKansuji}#1{% +\pxhy@DeclareCCMacro{KakkoKansuji}#1{% \pxhy@fallback{1}{11}{20}{% \pxhy@rshift{1/10125,21}% }{(\pxhy@knumeral{#1})}% } %%<!> \ajMaruKansuji{<number>} -\pxhy@DeclareMacro{MaruKansuji}#1{\pxhy@rshift{1/10460,11}} +\pxhy@DeclareCCMacro{MaruKansuji}#1{\pxhy@rshift{1/10460,11}} %%<!> \ajMarualph{<number>} -\pxhy@DeclareMacro{Marualph}#1{\pxhy@rshift{1/10312,27}} +\pxhy@DeclareCCMacro{Marualph}#1{\pxhy@rshift{1/10312,27}} %%<!> \ajMaruAlph{<number>} -\pxhy@DeclareMacro{MaruAlph}#1{\pxhy@rshift{1/10338,27}} +\pxhy@DeclareCCMacro{MaruAlph}#1{\pxhy@rshift{1/10338,27}} %%<!> \ajMaruHira{<number>} -\pxhy@DeclareMacro{MaruHira}#1{\pxhy@rshift{1/10364,49}} +\pxhy@DeclareCCMacro{MaruHira}#1{\pxhy@rshift{1/10364,49}} %%<!> \ajMaruKata{<number>} -\pxhy@DeclareMacro{MaruKata}#1{\pxhy@rshift{1/10412,49}} +\pxhy@DeclareCCMacro{MaruKata}#1{\pxhy@rshift{1/10412,49}} %%<!> \ajMaruYobi{<number>} -\pxhy@DeclareMacro{MaruYobi}#1{% +\pxhy@DeclareCCMacro{MaruYobi}#1{% \pxhy@rshift{1/10470,8/10484,9/10478,10}% } %%<!> \ajKuroMarualph{<number>} : Fallback. -\pxhy@DeclareMacro{KuroMarualph}#1{`\ajMarualph{#1}} +\pxhy@DeclareCCMacro{KuroMarualph}#1{`\ajMarualph{#1}} %%<!> \ajKuroMaruAlph{<number>} -\pxhy@DeclareMacro{KuroMaruAlph}#1{\pxhy@rshift{1/10630,27}} +\pxhy@DeclareCCMacro{KuroMaruAlph}#1{\pxhy@rshift{1/10630,27}} %%<!> \ajKuroMaruHira{<number>} : Fallback. -\pxhy@DeclareMacro{KuroMaruHira}#1{`\ajMaruHira{#1}} +\pxhy@DeclareCCMacro{KuroMaruHira}#1{`\ajMaruHira{#1}} %%<!> \ajKuroMaruKata{<number>} : Fallback. -\pxhy@DeclareMacro{KuroMaruKata}#1{`\ajMaruKata{#1}} +\pxhy@DeclareCCMacro{KuroMaruKata}#1{`\ajMaruKata{#1}} %%<!> \ajKuroMaruYobi{<number>} : Fallback. % fallback to \ajKakuYobi, which is simpler. -\pxhy@DeclareMacro{KuroMaruYobi}#1{`\ajKakuYobi{#1}} +\pxhy@DeclareCCMacro{KuroMaruYobi}#1{`\ajKakuYobi{#1}} %%<!> \ajKakualph{<number>} : Fallback. -\pxhy@DeclareMacro{Kakualph}#1{`\ajMarualph{#1}} +\pxhy@DeclareCCMacro{Kakualph}#1{`\ajMarualph{#1}} %%<!> \ajKakuAlph{<number>} -\pxhy@DeclareMacro{KakuAlph}#1{\pxhy@rshift{1/10900,27}} +\pxhy@DeclareCCMacro{KakuAlph}#1{\pxhy@rshift{1/10900,27}} %%<!> \ajKakuHira{<number>} : Fallback. -\pxhy@DeclareMacro{KakuHira}#1{`\ajMaruHira{#1}} +\pxhy@DeclareCCMacro{KakuHira}#1{`\ajMaruHira{#1}} %%<!> \ajKakuKata{<number>} : Fallback. -\pxhy@DeclareMacro{KakuKata}#1{`\ajMaruKata{#1}} +\pxhy@DeclareCCMacro{KakuKata}#1{`\ajMaruKata{#1}} %%<!> \ajKakuYobi{<number>} -\pxhy@DeclareMacro{KakuYobi}#1{\pxhy@rshift{1/11022,8}} +\pxhy@DeclareCCMacro{KakuYobi}#1{\pxhy@rshift{1/11022,8}} %%<!> \ajKuroKakualph{<number>} : Fallback. -\pxhy@DeclareMacro{KuroKakualph}#1{`\ajMarualph{#1}} +\pxhy@DeclareCCMacro{KuroKakualph}#1{`\ajMarualph{#1}} %%<!> \ajKuroKakuAlph{<number>} -\pxhy@DeclareMacro{KuroKakuAlph}#1{\pxhy@rshift{1/11173,27}} +\pxhy@DeclareCCMacro{KuroKakuAlph}#1{\pxhy@rshift{1/11173,27}} %%<!> \ajKuroKakuHira{<number>} : Fallback. -\pxhy@DeclareMacro{KuroKakuHira}#1{`\ajMaruHira{#1}} +\pxhy@DeclareCCMacro{KuroKakuHira}#1{`\ajMaruHira{#1}} %%<!> \ajKuroKakuKata{<number>} : Fallback. -\pxhy@DeclareMacro{KuroKakuKata}#1{`\ajMaruKata{#1}} +\pxhy@DeclareCCMacro{KuroKakuKata}#1{`\ajMaruKata{#1}} %%<!> \ajKuroKakuYobi{<number>} : Fallback. -\pxhy@DeclareMacro{KuroKakuYobi}#1{`\ajKakuYobi{#1}} +\pxhy@DeclareCCMacro{KuroKakuYobi}#1{`\ajKakuYobi{#1}} %%<!> \ajMaruKakualph{<number>} : Fallback. -\pxhy@DeclareMacro{MaruKakualph}#1{`\ajMarualph{#1}} +\pxhy@DeclareCCMacro{MaruKakualph}#1{`\ajMarualph{#1}} %%<!> \ajMaruKakuAlph{<number>} -\pxhy@DeclareMacro{MaruKakuAlph}#1{\pxhy@rshift{1/11443,27}} +\pxhy@DeclareCCMacro{MaruKakuAlph}#1{\pxhy@rshift{1/11443,27}} %%<!> \ajMaruKakuHira{<number>} : Fallback. -\pxhy@DeclareMacro{MaruKakuHira}#1{`\ajMaruHira{#1}} +\pxhy@DeclareCCMacro{MaruKakuHira}#1{`\ajMaruHira{#1}} %%<!> \ajMaruKakuKata{<number>} : Fallback. -\pxhy@DeclareMacro{MaruKakuKata}#1{`\ajMaruKata{#1}} +\pxhy@DeclareCCMacro{MaruKakuKata}#1{`\ajMaruKata{#1}} %%<!> \ajMaruKakuYobi{<number>} : Fallback. -\pxhy@DeclareMacro{MaruKakuYobi}#1{`\ajKakuYobi{#1}} +\pxhy@DeclareCCMacro{MaruKakuYobi}#1{`\ajKakuYobi{#1}} %%<!> \ajKuroMaruKakualph{<number>} : Fallback. -\pxhy@DeclareMacro{KuroMaruKakualph}#1{`\ajMarualph{#1}} +\pxhy@DeclareCCMacro{KuroMaruKakualph}#1{`\ajMarualph{#1}} %%<!> \ajKuroMaruKakuAlph{<number>} -\pxhy@DeclareMacro{KuroMaruKakuAlph}#1{\pxhy@rshift{1/11712,27}} +\pxhy@DeclareCCMacro{KuroMaruKakuAlph}#1{\pxhy@rshift{1/11712,27}} %%<!> \ajKuroMaruKakuHira{<number>} : Fallback. -\pxhy@DeclareMacro{KuroMaruKakuHira}#1{`\ajMaruHira{#1}} +\pxhy@DeclareCCMacro{KuroMaruKakuHira}#1{`\ajMaruHira{#1}} %%<!> \ajKuroMaruKakuKata{<number>} : Fallback. -\pxhy@DeclareMacro{KuroMaruKakuKata}#1{`\ajMaruKata{#1}} +\pxhy@DeclareCCMacro{KuroMaruKakuKata}#1{`\ajMaruKata{#1}} %%<!> \ajKuroMaruKakuYobi{<number>} : Fallback. -\pxhy@DeclareMacro{KuroMaruKakuYobi}#1{`\ajKakuYobi{#1}} +\pxhy@DeclareCCMacro{KuroMaruKakuYobi}#1{`\ajKakuYobi{#1}} %%<!> \ajNijuMaru{<number>} -\pxhy@DeclareMacro{NijuMaru}#1{\pxhy@rshift{1/16222,11}} +\pxhy@DeclareCCMacro{NijuMaru}#1{\pxhy@rshift{1/16222,11}} %%<!> \ajRecycle{<number>} -\pxhy@DeclareMacro{Recycle}#1{\pxhy@rshift{0/16314,12}} +\pxhy@DeclareCCMacro{Recycle}#1{\pxhy@rshift{0/16314,12}} %%<!> \ajHasenKakuAlph{<number>} -\pxhy@DeclareMacro{HasenKakuAlph}#1{\pxhy@rshift{1/20496,7}} +\pxhy@DeclareCCMacro{HasenKakuAlph}#1{\pxhy@rshift{1/20496,7}} %%<!> \ajCross{<number>} -\pxhy@DeclareMacro{Cross}#1{% +\pxhy@DeclareCCMacro{Cross}#1{% \pxhy@fallback{0}{0}{9}{% \pxhy@rshift{0/20523,10}% }{\pxhy@numeral{#1}\UTF{00D7}}% } %%<!> \ajSlanted[*]{<number>} -\pxhy@DeclareMacroVar{Slanted}#1{%N +\pxhy@DeclareCCMacroVar{Slanted}#1{%N \pxhy@fallback{0}{0}{59}{% \pxhy@rshift{0/9460,10/20589,60}% }{\pxhy@numeral{#1}}% @@ -459,7 +504,7 @@ } %%<!> \ajApostrophe{<number>} %%<!> \ajYear{<number>} (alias) -\pxhy@DeclareMacro{Apostrophe}#1{% +\pxhy@DeclareCCMacro{Apostrophe}#1{% \pxhy@fallback{0}{0}{99}{% \pxhy@rshift{0/20649,100}% }{\UTF{2019}\pxhy@two@digits{#1}}% @@ -467,13 +512,15 @@ \pxhy@DeclareAlias{Year}{Apostrophe} %%<!> \ajSquareMark[*]{<number>} % Note: +-variant is unsupported. -\pxhy@DeclareMacroVar{SquareMark}#1{%N +\pxhy@DeclareCCMacroVar{SquareMark}#1{%N \pxhy@rshift{1/12229,13}% }{%V \pxhy@rshift{1/12241,10}% } %%<!> \ajHishi{<number>} -\pxhy@DeclareMacro{Hishi}#1{\pxhy@rshift{1/12256,5}} +\pxhy@DeclareCCMacro{Hishi}#1{\pxhy@rshift{1/12256,5}} + +\pxhy@finish@declare@cc@macros %----------------------- diff --git a/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-enc.sty b/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-enc.sty index dfbe94f8be3..e64fa701cb4 100644 --- a/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-enc.sty +++ b/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-enc.sty @@ -10,7 +10,7 @@ %% package declaration \NeedsTeXFormat{pLaTeX2e} -\ProvidesPackage{pxjahyper-enc}[2024/08/14 v1.4] +\ProvidesPackage{pxjahyper-enc}[2024/08/25 v1.5] \def\pxhe@pkgname{pxjahyper-enc} \providecommand{\bxDebug}[1]{} diff --git a/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-uni.def b/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-uni.def index dee65ec5d6e..88ea2241c0c 100644 --- a/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-uni.def +++ b/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-uni.def @@ -10,7 +10,7 @@ %% package declaration \NeedsTeXFormat{pLaTeX2e} -\ProvidesFile{pxjahyper-uni.def}[2024/08/14 v1.4] +\ProvidesFile{pxjahyper-uni.def}[2024/08/25 v1.5] \providecommand{\bxDebug}[1]{} %--------------------------------------- environment check diff --git a/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper.sty b/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper.sty index 7cca26784cd..8be4a409e80 100644 --- a/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper.sty +++ b/Master/texmf-dist/tex/platex/pxjahyper/pxjahyper.sty @@ -10,7 +10,7 @@ %% package declaration \NeedsTeXFormat{pLaTeX2e} -\ProvidesPackage{pxjahyper}[2024/08/14 v1.4] +\ProvidesPackage{pxjahyper}[2024/08/25 v1.5] \def\pxhy@pkgname{pxjahyper} \providecommand{\bxDebug}[1]{} @@ -62,8 +62,10 @@ \newif\ifpxhy@ajhankaku@chars %%<*> \pxjahypersetup{<key>=<value>,...} -\newcommand*\pxjahypersetup{% - \setkeys{\pxhy@pkgname}% +\@ifdefinable\pxjahypersetup{% + \DeclareRobustCommand*\pxjahypersetup{% + \setkeys{\pxhy@pkgname}% + }% } %% \pxhy@handle@key{<key>}{<value>}{<name>} \def\pxhy@handle@key#1#2#3{% @@ -346,10 +348,25 @@ \pxhy@uniescapetrue \fi\fi +%% \pxhy@if@really@unicode{<true>}{<false>} +% Tests if hyperref unicode-mode is *currently* in effect. +% (Assuming unicode-mode is enabled by the settings.) +\let\pxhy@if@really@unicode\@undefined + % hyperref 'unicode' mode \ifpxhy@hy@unicode \pxhy@uniescapefalse %\pxhy@otfutftrue + % placed at the top of the hook + \AtEndOfPackage{\ltx@GlobalPrependToMacro\pdfstringdefPreHook{% + \ifx\ifpdfstringunicode\@undefined + \ifHy@unicode \let\pxhy@if@really@unicode\@firstoftwo + \else \let\pxhy@if@really@unicode\@secondoftwo + \fi + \else % '\ifpdfstringunicode' is provided by hyperref + \let\pxhy@if@really@unicode\ifpdfstringunicode + \fi + }} \fi % otfcid requrires otfutf. \ifpxhy@otfutf \else \ifpxhy@otfcid @@ -488,6 +505,15 @@ pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% \pxhy@cond\ifx\pxhy@mt#1\pxhy@mt\fi } +%% \pxhy@E\newrobustcmd*\CS... +% Does \newrobustcmd* if etoolbox is available; +% does \DeclareRobustCommand* otherwise. +\def\pxhy@E\newrobustcmd*#1{% + \def\pxhy@next{\providecommand*\pxhy@next}% + \@ifdefinable#1{\def\pxhy@next{\DeclareRobustCommand*#1}}% + \pxhy@next +} + %% \pxhy@read@num{<text>}\CScont \def\pxhy@read@num#1{% \expandafter\pxhy@read@num@a\number#1\pxhy@mk#1\pxhy@mk#1\pxhy@mk @@ -508,6 +534,8 @@ pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% %% packages \ifpxhy@etoolbox \RequirePackage{etoolbox}[2011/01/03]%v2.1 + \robustify\pxjahypersetup + \let\pxhy@E\relax \fi %% \pxhy@if@star{<varient>}{<normal>} @@ -739,7 +767,7 @@ pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% \pxhy@cond \ifpxhy@utfXVI \fi{% \pxhy@uchex@big#1"000000\pxhy@end }{%else - \pxhy@uchex@out{#1}% + \pxhy@uchex@out@pre{#1}% }% }{%else \pxhy@uchex@small#1"0000\pxhy@end @@ -749,7 +777,7 @@ pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% \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}% + \pxhy@uchex@out@pre{#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 @@ -771,22 +799,33 @@ pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% \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}% + \pxhy@uchex@out@pre{D#1#2#3}% + \pxhy@uchex@out@pre{D#4#5}% } \edef\pxhy@uchex@error{% - \noexpand\pxhy@uchex@out{\pxhy@uc@REPL}% + \noexpand\pxhy@uchex@out@pre{\pxhy@uc@REPL}% +} +\def\pxhy@uchex@out@pre#1{% + \pxhy@if@in@anchor{% then Unicode does not work + \pxjahyperBadCharacter{U+#1}% + }{%else + \pxhy@uchex@out{#1}% + }% } %--------------------------------------- Unavailable characters %%<+> \pxjahyperBadCharacter{<label>} \newcommand*\pxjahyperBadCharacter[1]{% - \ifpxhy@fallback@warn - % issue a warning - \pxhy@bad@character@a{#1}% - \fi - \pxhy@print@geta + \pxhy@if@in@anchor{% + #1;% label is output as-is + }{%else + \ifpxhy@fallback@warn + % issue a warning + \pxhy@bad@character@a{#1}% + \fi + \pxhy@print@geta + }% } \def\pxhy@bad@character@a#1{% % Here the control sequence with name <label> is supposed to be @@ -805,7 +844,7 @@ pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% % Makes a bad character with label '<prefix><number>', after parsing % the given number input. \def\pxhy@fallback@num#1#2#3{% - \ifpxhy@fallback@warn + \if \ifpxhy@fallback@warn T\else \pxhy@if@in@anchor{T}{F}\fi T% \if t#2% \expandafter\pxhy@fallback@num@a\expandafter{\number#3}{#1}% \else @@ -819,11 +858,34 @@ pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% \pxjahyperBadCharacter{#2#1}% } +%--------------------------------------- Stuffs for anchor strings + +% Sometimes \pdfstringdef is invoked to form anchor strings. +% There "unicode-mode" of hyperref is temporarily disabled; +% moreover, ToUnicode specials are not applied to such strings. +% Consequently, only ASCII characters can be used there. +% Anchor strings are for identification and not presentation; +% so special fallback for special characters are needed. + +%% \pxhy@if@in@anchor{<true>}{<false>} +% Tests if we are inside anchors. +\let\pxhy@if@in@anchor\@secondoftwo +\ifx\Hy@PageAnchorSlide\@undefined\else + % We resort to some heuristics.... + \g@addto@macro\Hy@PageAnchorSlide{% + \let\pxhy@if@in@anchor\@firstoftwo + } +\fi + %--------------------------------------- Hooks to pdfstringdef %% variables \let\pxhy@str\relax +%%<+> \Ux{<hex>} +% (This is a dummy declaration.) +\ifodd\z@ \providecommand*\Ux[1]{} \fi + %% \pxhy@Ux % The definition of \Ux in PDF strings. \let\pxhy@Ux\@undefined @@ -835,7 +897,11 @@ pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% \def\pxhy@Ux{\pxhy@uchex}% \pxhy@utfXVIfalse \def\pxhy@uchex@out#1{% - \unichar{"#1}% + \pxhy@if@really@unicode{% + \unichar{"#1}% + }{%else % something wrong! + \pxjahyperBadCharacter{U+#1}% + }% } \else\ifpxhy@Uchar@avail %<*Uchar> @@ -1252,7 +1318,7 @@ pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% %%<+> \pxDeclarePdfTextCommand{\CS}{<jis>}{<ucs>} \@onlypreamble\pxDeclarePdfTextCommand -\newcommand*\pxDeclarePdfTextCommand[3]{% +\pxhy@E\newrobustcmd*\pxDeclarePdfTextCommand[3]{% \pxhy@prepare@txtcmd#1% \pxhy@decl@pdf@tc{#2}{#3}% {\DeclareTextCommand{#1}{\pxhy@pdfenc}}% @@ -1261,7 +1327,7 @@ pxhy@fallback@geta = \ifpxhy@fallback@geta true\else false\fi^^J% %%<+> \pxDeclarePdfTextComposite{\CS}{<arg>}{<jis>}{<ucs>} \@onlypreamble\pxDeclarePdfTextComposite -\newcommand*\pxDeclarePdfTextComposite[4]{% +\pxhy@E\newrobustcmd*\pxDeclarePdfTextComposite[4]{% \pxhy@prepare@txtcmd#1% \pxhy@decl@pdf@tc{#3}{#4}% {\DeclareTextCompositeCommand{#1}{\pxhy@pdfenc}{#2}}% |