summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/forest/forest-index.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/forest/forest-index.sty')
-rw-r--r--Master/texmf-dist/tex/latex/forest/forest-index.sty21
1 files changed, 14 insertions, 7 deletions
diff --git a/Master/texmf-dist/tex/latex/forest/forest-index.sty b/Master/texmf-dist/tex/latex/forest/forest-index.sty
index 6bd6fb774ed..36690d8664f 100644
--- a/Master/texmf-dist/tex/latex/forest/forest-index.sty
+++ b/Master/texmf-dist/tex/latex/forest/forest-index.sty
@@ -73,7 +73,7 @@
\forestset{
declare boolean register=print,
declare boolean register=index,
- declare boolean register=short, short,
+ declare boolean register=short,
declare toks={key}{},
declare toks={argument}{},
declare toks={index key}{},
@@ -100,7 +100,7 @@
every index end/.style={},
declare toks register=stage,
@index/.style n args={3}{
- print, index, index entry type=normal, set'={},
+ print, index, index entry type=normal, set'={}, short,
for nodewalk={
split={#3}{>}{create@main@entry@node, create@subentry@node},
if n=0{
@@ -134,10 +134,17 @@
},
stage={},
if index={
- index@hypertarget/.expanded={.\forestoption{index key}},
+ index@hypertarget/.process={OS_= ? l_ w2}
+ {index key}
+ {}
+ {}{.}
+ {##2##1},
for descendants={
- index@hypertarget/.process= {OOw2}
- {!parent.index@hypertarget} {index key} {##1.##2},
+ index@hypertarget/.process={OO S _l1= ? w2 }
+ {!parent.index@hypertarget}{index key}
+ {}
+ {##1} % empty index key
+ {##1.##2} % otherwise
},
}{},
if index={
@@ -250,8 +257,8 @@
\noexpand\immediate\noexpand\write\noexpand\forestindex@out{%
\noexpand\string\noexpand\indexdefineshortkey\noexpand\unexpanded{{\forestoption{key}}{\forestoption{content}}}%
}%
- }{}%
- }
+ }%
+ }{}
}
}
}