diff options
Diffstat (limited to 'tex/context/base/strc-lst.mkiv')
-rw-r--r-- | tex/context/base/strc-lst.mkiv | 38 |
1 files changed, 28 insertions, 10 deletions
diff --git a/tex/context/base/strc-lst.mkiv b/tex/context/base/strc-lst.mkiv index bcf20c451..83faf75a7 100644 --- a/tex/context/base/strc-lst.mkiv +++ b/tex/context/base/strc-lst.mkiv @@ -97,6 +97,8 @@ %begingroup\attribute\destinationattribute\currentdestinationattribute\dontleavehmode\hbox{}\endgroup % todo \dontleavehmode\hbox attr \destinationattribute \currentdestinationattribute{}% todo % end of new + \else + \ctxlua{structure.lists.enhance(\currentlistnumber)}% direct injection \fi \endgroup} @@ -104,7 +106,8 @@ {\ctxlua{structure.lists.location(\currentlistindex)}} \def\structurelistpagenumber - {\ctxlua{structure.lists.prefixedpage( + {\dostarttagged\t!listpage\empty + \ctxlua{structure.lists.prefixedpage( "\currentlist", \currentlistindex, { @@ -120,25 +123,34 @@ starter = \!!bs\listparameter\c!pagestarter\!!es, stopper = \!!bs\listparameter\c!pagestopper\!!es, } - )}} + )}% + \dostoptagged} \def\structurelistrealpagenumber {\ctxlua{structure.lists.realpage("\currentlist",\currentlistindex)}} \def\structurelistfirst - {\ctxlua{structure.lists.userdata("\currentlist",\currentlistindex,"first")}} + {\dostarttagged\t!listdata{first} % ot always ok + \ctxlua{structure.lists.userdata("\currentlist",\currentlistindex,"first")}% + \dostoptagged} \def\structurelistsecond - {\ctxlua{structure.lists.userdata("\currentlist",\currentlistindex,"second")}} + {\dostarttagged\t!listdata{second}% + \ctxlua{structure.lists.userdata("\currentlist",\currentlistindex,"second")}% + \dostoptagged} \def\structurelistuservariable#1% - {\ctxlua{structure.lists.userdata("\currentlist",\currentlistindex,"#1")}} + {\dostarttagged\t!listdata{#1}% + \ctxlua{structure.lists.userdata("\currentlist",\currentlistindex,"#1")}% + \dostoptagged} % \appendtoks % \to \everystructurelist \unexpanded\def\placestructurelist#1#2#3% hm ... [][][] - {\ctxlua{structure.lists.process("#1","#2","#3")}} + {\dostarttagged\t!list\empty + \ctxlua{structure.lists.process("#1","#2","#3")}% + \dostoptagged} \unexpanded\def\analysestructurelist#1#2#3% {\ctxlua{structure.lists.analyze("#1","#2","#3")}} @@ -173,12 +185,14 @@ \edef\currentlist {#1}% \edef\currentlistmethod{#2}% \edef\currentlistindex {#3}% + \dostarttagged\t!listitem\currentlist \csname\@@structurelistprocess \ifcsname\@@structurelistprocess\currentlist:\currentlistmethod\endcsname\currentlist:\currentlistmethod\else \ifcsname\@@structurelistprocess\currentlistmethod \endcsname\currentlistmethod \else \ifcsname\@@structurelistprocess\currentlist \endcsname\currentlist \else \s!default \fi\fi\fi \endcsname + \dostoptagged \ctxlua{structure.lists.popnesting()}} % \installstructcurelistprocessor{pubs:userdata} @@ -902,10 +916,13 @@ \structurelistrealpagenumber} \def\structurelistgenerictitle - {\ctxlua{structure.lists.title("\currentlist",\currentlistindex)}} + {\dostarttagged\t!listcontent\empty + \ctxlua{structure.lists.title("\currentlist",\currentlistindex)}% + \dostoptagged} -\def\structurelistgenericnumber{\ctxlua{ - structure.lists.prefixednumber("\currentlist",\currentlistindex, { +\def\structurelistgenericnumber + {\dostarttagged\t!listtag\empty + \ctxlua{structure.lists.prefixednumber("\currentlist",\currentlistindex, { prefix = "\listparameter\c!prefix", separatorset = "\listparameter\c!prefixseparatorset", conversionset = "\listparameter\c!prefixconversionset", @@ -921,7 +938,8 @@ starter = \!!bs\listparameter\c!numberstarter\!!es, stopper = \!!bs\listparameter\c!numberstopper\!!es, segments = "\listparameter\c!numbersegments", - } )}} + } )}% + \dostoptagged} % new and yet undocumented (used in cocoa qa), temporarily disabled in mkiv % |