summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2024-08-26 20:07:29 +0000
committerKarl Berry <karl@freefriends.org>2024-08-26 20:07:29 +0000
commitc97c3a78da912b23a12ef79692263e5c8946571c (patch)
tree10f8b267b421a8a5fa8cc628636dd628542e89f0 /Master/texmf-dist
parent5a4651565971e663327221dbc7271f65cf1cf48a (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.md3
-rw-r--r--Master/texmf-dist/doc/platex/pxjahyper/README.md1
-rw-r--r--Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.pdfbin165718 -> 166230 bytes
-rw-r--r--Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.tex29
-rw-r--r--Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-ajm.def163
-rw-r--r--Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-enc.sty2
-rw-r--r--Master/texmf-dist/tex/platex/pxjahyper/pxjahyper-uni.def2
-rw-r--r--Master/texmf-dist/tex/platex/pxjahyper/pxjahyper.sty100
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
index 07d88e51e90..49328d9519f 100644
--- a/Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.pdf
+++ b/Master/texmf-dist/doc/platex/pxjahyper/pxjahyper.pdf
Binary files differ
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}}%