[latex3-commits] [git/LaTeX3-latex3-latex2e] glyphtounicode: Add firstaid for cmap (2f81ca44)

Marcel Fabian Krüger tex at 2krueger.de
Thu Jan 21 22:54:12 CET 2021


Repository : https://github.com/latex3/latex2e
On branch  : glyphtounicode
Link       : https://github.com/latex3/latex2e/commit/2f81ca445fadbf5f2915fd42448c2983dd34ca8a

>---------------------------------------------------------------

commit 2f81ca445fadbf5f2915fd42448c2983dd34ca8a
Author: Marcel Fabian Krüger <tex at 2krueger.de>
Date:   Thu Jan 21 19:38:12 2021 +0100

    Add firstaid for cmap


>---------------------------------------------------------------

2f81ca445fadbf5f2915fd42448c2983dd34ca8a
 base/testfiles-lthooks/lthooks-000.tlg             |  7 ++++++
 base/testfiles-lthooks/lthooks-001.tlg             | 15 ++++++++++++
 base/testfiles-lthooks/lthooks-002.tlg             | 15 ++++++++++++
 base/testfiles-lthooks/lthooks-003.tlg             |  8 +++++++
 base/testfiles-lthooks/lthooks-004.tlg             |  8 +++++++
 base/testfiles-lthooks/lthooks-005.tlg             |  8 +++++++
 base/testfiles-lthooks/lthooks-006.tlg             |  8 +++++++
 base/testfiles-lthooks/lthooks-007.tlg             | 15 ++++++++++++
 base/testfiles-lthooks/lthooks-008.tlg             | 10 +++++++-
 base/testfiles-lthooks/lthooks-009.tlg             |  7 ++++++
 base/testfiles-lthooks/lthooks-011.tlg             | 28 ++++++++++++++++++++++
 base/testfiles-lthooks/lthooks-013.tlg             |  7 ++++++
 base/testfiles-lthooks/lthooks-021.tlg             |  7 ++++++
 base/testfiles-lthooks/lthooks-legacy.tlg          |  7 ++++++
 base/testfiles-lthooks2/lthooks2-002.tlg           |  7 ++++++
 base/testfiles-lthooks2/lthooks2-005.tlg           | 14 +++++++++++
 .../latex2e-first-aid-for-external-files.dtx       | 15 ++++++++++++
 17 files changed, 185 insertions(+), 1 deletion(-)

diff --git a/base/testfiles-lthooks/lthooks-000.tlg b/base/testfiles-lthooks/lthooks-000.tlg
index 5f9a8f49..0fc7bf51 100644
--- a/base/testfiles-lthooks/lthooks-000.tlg
+++ b/base/testfiles-lthooks/lthooks-000.tlg
@@ -66,6 +66,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 All initialized (non-empty) hooks:
  enddocument/info -> \@dofilelist \@enddocument at kernel@warnings \__hook_toplevel enddocument/info \__hook_next enddocument/info  
  shipout/firstpage -> \__kernel_backend_literal:n {header=l3backend-dvips.pro}\__hook_toplevel shipout/firstpage \__hook_next shipout/firstpage  
@@ -74,6 +80,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
 No file lthooks-000.aux.
 LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line ....
 LaTeX Font Info:    ... okay on input line ....
diff --git a/base/testfiles-lthooks/lthooks-001.tlg b/base/testfiles-lthooks/lthooks-001.tlg
index d47f66e3..bfcbbb99 100644
--- a/base/testfiles-lthooks/lthooks-001.tlg
+++ b/base/testfiles-lthooks/lthooks-001.tlg
@@ -72,6 +72,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
 Code labels for sorting:
  label1 and label2
@@ -88,6 +94,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx -> foobar\__hook_toplevel xxx \__hook_next xxx  
 The property list \g__hook_xxx_code_prop contains the pairs (without outer
 braces):
@@ -121,6 +128,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
 >  {file/after/pgfpages.sty}
 >  {file/after/pgfmorepages.sty}
 >  {file/after/CJK.sty}
+>  {file/after/cmap.sty}
 >  {xxx}.
 Update code for hook 'begindocument' on input line ...:
 Update code for hook 'begindocument/before' on input line ...:
@@ -188,6 +196,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
 Code labels for sorting:
  label1
@@ -202,5 +216,6 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx -> foo\__hook_toplevel xxx \__hook_next xxx  
 The hook xxx contains the rules:
diff --git a/base/testfiles-lthooks/lthooks-002.tlg b/base/testfiles-lthooks/lthooks-002.tlg
index bd8bb032..9637fb89 100644
--- a/base/testfiles-lthooks/lthooks-002.tlg
+++ b/base/testfiles-lthooks/lthooks-002.tlg
@@ -72,6 +72,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
 Code labels for sorting:
  label1 and label2
@@ -88,6 +94,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx -> foobar\__hook_toplevel xxx \__hook_next xxx  
 **** Add to hook xxx (top-level) on input line ... <- baz
 The property list \g__hook_xxx_code_prop contains the pairs (without outer
@@ -123,6 +130,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
 >  {file/after/pgfpages.sty}
 >  {file/after/pgfmorepages.sty}
 >  {file/after/CJK.sty}
+>  {file/after/cmap.sty}
 >  {xxx}.
 Update code for hook 'begindocument' on input line ...:
 Update code for hook 'begindocument/before' on input line ...:
@@ -190,6 +198,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
 Code labels for sorting:
  label1
@@ -204,5 +218,6 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx -> foo\__hook_toplevel xxx \__hook_next xxx  
 The hook xxx contains the rules:
diff --git a/base/testfiles-lthooks/lthooks-003.tlg b/base/testfiles-lthooks/lthooks-003.tlg
index c7e73740..3e87be31 100644
--- a/base/testfiles-lthooks/lthooks-003.tlg
+++ b/base/testfiles-lthooks/lthooks-003.tlg
@@ -49,6 +49,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
 >  {file/after/pgfpages.sty}
 >  {file/after/pgfmorepages.sty}
 >  {file/after/CJK.sty}
+>  {file/after/cmap.sty}
 >  {xxx}.
 The hook xxx contains the rules:
 >  {label3|label1}  =>  {>}
@@ -127,6 +128,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
   normal rule label3|label1: > found
   normal rule label6|label4: > found
@@ -167,4 +174,5 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx ->  foo1 foo9 foo3 foo2 foo7 foo4 foo5 foo8 foo6\__hook_toplevel xxx \__hook_next xxx  
diff --git a/base/testfiles-lthooks/lthooks-004.tlg b/base/testfiles-lthooks/lthooks-004.tlg
index e195cb8b..047923e4 100644
--- a/base/testfiles-lthooks/lthooks-004.tlg
+++ b/base/testfiles-lthooks/lthooks-004.tlg
@@ -39,6 +39,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
 >  {file/after/pgfpages.sty}
 >  {file/after/pgfmorepages.sty}
 >  {file/after/CJK.sty}
+>  {file/after/cmap.sty}
 >  {xxx}.
 The hook xxx contains the rules:
 >  {label2|label1}  =>  {>}
@@ -111,6 +112,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
   normal rule label2|label1: > found
   normal rule label3|label1: < found
@@ -142,4 +149,5 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx ->  foo4\__hook_toplevel xxx \__hook_next xxx  
diff --git a/base/testfiles-lthooks/lthooks-005.tlg b/base/testfiles-lthooks/lthooks-005.tlg
index 37d61057..07124dd0 100644
--- a/base/testfiles-lthooks/lthooks-005.tlg
+++ b/base/testfiles-lthooks/lthooks-005.tlg
@@ -56,6 +56,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
 >  {file/after/pgfpages.sty}
 >  {file/after/pgfmorepages.sty}
 >  {file/after/CJK.sty}
+>  {file/after/cmap.sty}
 >  {xxx}.
 The hook xxx contains the rules:
 >  {label3|label1}  =>  {>}
@@ -134,6 +135,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
   normal rule label3|label1: > found
   normal rule label6|label4: > found
@@ -174,4 +181,5 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx ->  foo1 foo9 foo3 foo2 foo7 foo4 foo5 foo8 foo6\__hook_toplevel xxx \__hook_next xxx  
diff --git a/base/testfiles-lthooks/lthooks-006.tlg b/base/testfiles-lthooks/lthooks-006.tlg
index 9dcdbb84..83d139e1 100644
--- a/base/testfiles-lthooks/lthooks-006.tlg
+++ b/base/testfiles-lthooks/lthooks-006.tlg
@@ -37,6 +37,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
 >  {file/after/pgfpages.sty}
 >  {file/after/pgfmorepages.sty}
 >  {file/after/CJK.sty}
+>  {file/after/cmap.sty}
 >  {xxx}.
 The hook xxx contains the rules:
 >  {label2|label1}  =>  {xW}
@@ -107,6 +108,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
   normal rule label2|label1: xW found
 Package hooks Warning: Labels `label2' and `label1' are incompatible in hook
@@ -129,4 +136,5 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx ->  foo1 foo3 foo2\__hook_toplevel xxx \__hook_next xxx  
diff --git a/base/testfiles-lthooks/lthooks-007.tlg b/base/testfiles-lthooks/lthooks-007.tlg
index 8b2a25c8..89b57e34 100644
--- a/base/testfiles-lthooks/lthooks-007.tlg
+++ b/base/testfiles-lthooks/lthooks-007.tlg
@@ -37,6 +37,7 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
 >  {file/after/pgfpages.sty}
 >  {file/after/pgfmorepages.sty}
 >  {file/after/CJK.sty}
+>  {file/after/cmap.sty}
 >  {xxx}.
 The hook xxx contains the rules:
 >  {label2|label1}  =>  {<-}
@@ -108,6 +109,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
   normal rule label2|label1: <- found
 ---> Drop 'label2' code from \g__hook_xxx_code_prop because of 'label1'
@@ -130,6 +137,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx ->  foo1 foo3\__hook_toplevel xxx \__hook_next xxx  
 Update code for hook 'begindocument' on input line ...:
 Update code for hook 'begindocument/before' on input line ...:
@@ -197,6 +205,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
   normal rule label2|label1: <- found
 ---> Drop 'label2' code from \g__hook_xxx_code_prop because of 'label1'
@@ -217,4 +231,5 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx ->  foo1 foo3\__hook_toplevel xxx \__hook_next xxx  
diff --git a/base/testfiles-lthooks/lthooks-008.tlg b/base/testfiles-lthooks/lthooks-008.tlg
index 2acb6315..5faf84d2 100644
--- a/base/testfiles-lthooks/lthooks-008.tlg
+++ b/base/testfiles-lthooks/lthooks-008.tlg
@@ -38,7 +38,8 @@ The sequence \g__hook_all_seq contains the items (without outer braces):
 >  {file/after/dinbrief.cls}
 >  {file/after/pgfpages.sty}
 >  {file/after/pgfmorepages.sty}
->  {file/after/CJK.sty}.
+>  {file/after/CJK.sty}
+>  {file/after/cmap.sty}.
 The hook enddocument contains the rules:
 Update code for hook 'begindocument' on input line ...:
 Update code for hook 'begindocument/before' on input line ...:
@@ -115,6 +116,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 All initialized (non-empty) hooks:
  enddocument -> \typeout {foo}\typeout {bar}\typeout {from my package}\__hook_toplevel enddocument \__hook_next enddocument  
  enddocument/info -> \@dofilelist \@enddocument at kernel@warnings \__hook_toplevel enddocument/info \__hook_next enddocument/info  
@@ -124,6 +131,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
 No file lthooks-008.aux.
 LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line ....
 LaTeX Font Info:    ... okay on input line ....
diff --git a/base/testfiles-lthooks/lthooks-009.tlg b/base/testfiles-lthooks/lthooks-009.tlg
index f794df2e..6da24e26 100644
--- a/base/testfiles-lthooks/lthooks-009.tlg
+++ b/base/testfiles-lthooks/lthooks-009.tlg
@@ -72,6 +72,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 All initialized (non-empty) hooks:
  sffamily -> \typeout {Std sffamily code}\__hook_toplevel sffamily \__hook_next sffamily  
  enddocument/info -> \@dofilelist \@enddocument at kernel@warnings \__hook_toplevel enddocument/info \__hook_next enddocument/info  
@@ -81,6 +87,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
 No file lthooks-009.aux.
 LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line ....
 LaTeX Font Info:    ... okay on input line ....
diff --git a/base/testfiles-lthooks/lthooks-011.tlg b/base/testfiles-lthooks/lthooks-011.tlg
index 64f65b87..b039531d 100644
--- a/base/testfiles-lthooks/lthooks-011.tlg
+++ b/base/testfiles-lthooks/lthooks-011.tlg
@@ -67,6 +67,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
 Code labels for sorting:
  front
@@ -86,6 +92,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx -> foo\__hook_toplevel xxx \__hook_next xxx  
 **** Add to hook xxx (rear) on input line ... <- bar
 Update code for hook 'begindocument' on input line ...:
@@ -154,6 +161,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
 Code labels for sorting:
  front and rear
@@ -175,6 +188,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx -> foobar\__hook_toplevel xxx \__hook_next xxx  
 **** Add to hook xxx (labels) on input line ... <- baz
 Update code for hook 'begindocument' on input line ...:
@@ -243,6 +257,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
 Code labels for sorting:
  front, rear and labels
@@ -266,6 +286,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx -> foobarbaz\__hook_toplevel xxx \__hook_next xxx  
 **** Add to hook xxx (return) on input line ... <- boom
 Update code for hook 'begindocument' on input line ...:
@@ -334,6 +355,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'xxx' on input line ...:
 Code labels for sorting:
  front, rear, labels and return
@@ -359,4 +386,5 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  xxx -> foobarbazboom\__hook_toplevel xxx \__hook_next xxx  
diff --git a/base/testfiles-lthooks/lthooks-013.tlg b/base/testfiles-lthooks/lthooks-013.tlg
index b87ca0be..1c7858e6 100644
--- a/base/testfiles-lthooks/lthooks-013.tlg
+++ b/base/testfiles-lthooks/lthooks-013.tlg
@@ -121,6 +121,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'env/itemize/begin' on input line ...:
 Code labels for sorting:
  foo
@@ -138,6 +144,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  env/itemize/begin -> \typeout {env itemize first}\__hook_toplevel env/itemize/begin \__hook_next env/itemize/begin  
 No file lthooks-013.aux.
 LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line ....
diff --git a/base/testfiles-lthooks/lthooks-021.tlg b/base/testfiles-lthooks/lthooks-021.tlg
index f298bfa9..c4c8b563 100644
--- a/base/testfiles-lthooks/lthooks-021.tlg
+++ b/base/testfiles-lthooks/lthooks-021.tlg
@@ -66,6 +66,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 All initialized (non-empty) hooks:
  enddocument/info -> \@dofilelist \@enddocument at kernel@warnings \__hook_toplevel enddocument/info \__hook_next enddocument/info  
  shipout/firstpage -> \__kernel_backend_literal:n {header=l3backend-dvips.pro}\__hook_toplevel shipout/firstpage \__hook_next shipout/firstpage  
@@ -74,6 +80,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
 No file lthooks-021.aux.
 LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line ....
 LaTeX Font Info:    ... okay on input line ....
diff --git a/base/testfiles-lthooks/lthooks-legacy.tlg b/base/testfiles-lthooks/lthooks-legacy.tlg
index 8e99fc46..ed098aab 100644
--- a/base/testfiles-lthooks/lthooks-legacy.tlg
+++ b/base/testfiles-lthooks/lthooks-legacy.tlg
@@ -91,6 +91,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 All initialized (non-empty) hooks:
  begindocument -> \typeout {legacy begindocument\on at line }\__hook_toplevel begindocument \__hook_next begindocument  
  rmfamily -> \typeout {legacy rmfamily\on at line }\__hook_toplevel rmfamily \__hook_next rmfamily  
@@ -103,6 +109,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
 legacy defaultfamily on input line ...
 No file lthooks-legacy.aux.
 LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line ....
diff --git a/base/testfiles-lthooks2/lthooks2-002.tlg b/base/testfiles-lthooks2/lthooks2-002.tlg
index 11f1ab0c..4352dd67 100644
--- a/base/testfiles-lthooks2/lthooks2-002.tlg
+++ b/base/testfiles-lthooks2/lthooks2-002.tlg
@@ -74,6 +74,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 All initialized (non-empty) hooks:
  enddocument/info -> \@dofilelist \@enddocument at kernel@warnings \__hook_toplevel enddocument/info \__hook_next enddocument/info  
  shipout/firstpage -> \__kernel_backend_literal:n {header=l3backend-dvips.pro}\__hook_toplevel shipout/firstpage \__hook_next shipout/firstpage  
@@ -82,6 +88,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
 (lthooks2-002.aux)
 LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line ....
 LaTeX Font Info:    ... okay on input line ....
diff --git a/base/testfiles-lthooks2/lthooks2-005.tlg b/base/testfiles-lthooks2/lthooks2-005.tlg
index c0722452..74ca0456 100644
--- a/base/testfiles-lthooks2/lthooks2-005.tlg
+++ b/base/testfiles-lthooks2/lthooks2-005.tlg
@@ -67,6 +67,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 All initialized (non-empty) hooks:
  enddocument/info -> \@dofilelist \@enddocument at kernel@warnings \__hook_toplevel enddocument/info \__hook_next enddocument/info  
  shipout/firstpage -> \__kernel_backend_literal:n {header=l3backend-dvips.pro}\__hook_toplevel shipout/firstpage \__hook_next shipout/firstpage  
@@ -75,6 +81,7 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
 **** Add to hook some-hook (other-package) on input line ... <- code from other-package,
 Update code for hook 'begindocument' on input line ...:
 Update code for hook 'begindocument/before' on input line ...:
@@ -142,6 +149,12 @@ Code labels for sorting:
 Data structure for label rules:
  firstaid = 0 -> 
 Handled code for firstaid
+Update code for hook 'file/after/cmap.sty' on input line ...:
+Code labels for sorting:
+ firstaid
+Data structure for label rules:
+ firstaid = 0 -> 
+Handled code for firstaid
 Update code for hook 'some-hook' on input line ...:
 Code labels for sorting:
  my-package and other-package
@@ -158,4 +171,5 @@ All initialized (non-empty) hooks:
  file/after/pgfpages.sty -> \__hook_toplevel file/after/pgfpages.sty \cs_gset_eq:NN \shipout \pgfpages at originalshipout \cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout \__hook_next file/after/pgfpages.sty  
  file/after/pgfmorepages.sty -> \__hook_toplevel file/after/pgfmorepages.sty \cs_set_nopar:Npn \pgfhookintoshipout {\cs_set_eq:NN \pgfpages at originalshipout \tex_shipout:D \cs_set_eq:NN \tex_shipout:D \pgfpages at interceptshipout }\__hook_next file/after/pgfmorepages.sty  
  file/after/CJK.sty -> \__hook_toplevel file/after/CJK.sty \FirstAidNeededT {CJK}{sty}{....-..-.. 4.8.4}{\DeclareCommandCopy \selectfont \CJK at selectfont \AddToHook {selectfont}[CJK]{\expandafter \ifx \csname CJK@\curr at fontshape \endcsname \relax \else \CJK at bold@false \csname CJK@\curr at fontshape \endcsname \fi }}\__hook_next file/after/CJK.sty  
+ file/after/cmap.sty -> \__hook_toplevel file/after/cmap.sty \FirstAidNeededT {cmap}{sty}{....-..-.. v... CMap support: searchable PDF}{\pdfgentounicode =0 }\__hook_next file/after/cmap.sty  
  some-hook -> code to run when other-package is loaded,code from other-package,\__hook_toplevel some-hook \__hook_next some-hook  
diff --git a/required/firstaid/latex2e-first-aid-for-external-files.dtx b/required/firstaid/latex2e-first-aid-for-external-files.dtx
index d17c6967..8191063d 100644
--- a/required/firstaid/latex2e-first-aid-for-external-files.dtx
+++ b/required/firstaid/latex2e-first-aid-for-external-files.dtx
@@ -485,6 +485,21 @@
 %
 %
 %
+% \subsection{The \pkg{cmap} package first aid}
+%
+%    \pkg{cmap} manually adds /ToUnicode maps to PDF fonts. Since the
+%    \LaTeX{} kernel now instructs pdf\TeX{} to add a /ToUnicode map
+%    automatically these get duplicated. For now just disable this
+%    feature when cmap gets loaded.
+%    \begin{macrocode}
+\AddToHook{file/after/cmap.sty}[firstaid]{%
+  \FirstAidNeededT{cmap}{sty}{2008/03/06 v1.0h CMap support: searchable PDF}%
+                  {\pdfgentounicode=0 }%
+}
+%    \end{macrocode}
+%
+%
+%
 % \subsection[Temporary fixes for the kernel (until the next
 %             patch-level release)]
 %    {Temporary fixes for the kernel \\





More information about the latex3-commits mailing list.