diff options
Diffstat (limited to 'Master/texmf-dist/tex/context/base/bibl-bib.mkiv')
-rw-r--r-- | Master/texmf-dist/tex/context/base/bibl-bib.mkiv | 51 |
1 files changed, 29 insertions, 22 deletions
diff --git a/Master/texmf-dist/tex/context/base/bibl-bib.mkiv b/Master/texmf-dist/tex/context/base/bibl-bib.mkiv index 10abe5cb8a7..681be325f2b 100644 --- a/Master/texmf-dist/tex/context/base/bibl-bib.mkiv +++ b/Master/texmf-dist/tex/context/base/bibl-bib.mkiv @@ -118,16 +118,16 @@ \newtoks \everysetupbibtexsession \setfalse \tracebibtexformat -\unexpanded\def\definebibtexsession {\dosingleargument\dodefinebibtexsession} +\unexpanded\def\definebibtexsession{\dosingleargument\dodefinebibtexsession} \def\preparebibtexsession {\dodoubleempty \dopreparebibtexsession} -\unexpanded\def\setupbibtexsession {\dodoubleargument\dosetupbibtexsession} +\unexpanded\def\setupbibtexsession {\dodoubleargument\dosetupbibtexsession} \def\dodefinebibtexsession [#1]{\edef\currentbibtexsession{#1}% - \ctxlua{commands.definebibtexsession("#1")}% + \ctxcommand{definebibtexsession("#1")}% \the\everydefinebibtexsession} \def\dopreparebibtexsession[#1][#2]{\edef\currentbibtexsession{#1}% - \ctxlua{commands.preparebibtexsession("#1","bibtex:#1","#2")}% + \ctxcommand{preparebibtexsession("#1","bibtex:#1","#2")}% \the\everypreparebibtexsession} \def\dosetupbibtexsession [#1][#2]{\edef\currentbibtexsession{#1}% @@ -138,8 +138,8 @@ \def\registerbibtexentry {\dodoubleargument\doregisterbibtexentry} \def\applytobibtexsession {\dodoubleargument\doapplytobibtexsession} -\def\doregisterbibtexfile [#1][#2]{\ctxlua{commands.registerbibtexfile("#1","#2")}} -\def\doregisterbibtexentry [#1][#2]{\ctxlua{commands.registerbibtexentry("#1","#2")}} +\def\doregisterbibtexfile [#1][#2]{\ctxcommand{registerbibtexfile("#1","#2")}} +\def\doregisterbibtexentry [#1][#2]{\ctxcommand{registerbibtexentry("#1","#2")}} \def\doapplytobibtexsession[#1][#2]{\xmlprocessregistered{bibtex:#1}{#2}{#2}} \unexpanded\def\bibtexcommand#1% @@ -169,7 +169,7 @@ \def\bibxmlflush #1{\xmlcontext \currentbibxmlnode{/field[@name='#1']}} \def\bibxmlsetup {\xmlsetup \currentbibxmlnode} % {#1} -\def\currentbibtexformat{apa} % ho wto interface this, maybe split loading and key +\def\currentbibtexformat{apa} % how to interface this, maybe split loading and key \def\currentbibxmlnode {unset} \def\currentbibxmltag {unset} @@ -280,7 +280,6 @@ *doi* \stopxmlsetups - \startxmlsetups bibtex:format:doi % \bibdoifelse{\@@pb@biburl}{#1\expanded{\bibgotoURL{\@@pb@thekey}{\@@pb@biburl}}#2}{#3} *url* @@ -299,7 +298,7 @@ % lists \def\bibtexlistprocessor - {\ctxlua{bibtex.hacks.add(structure.lists.uservalue("\currentlist",\currentlistindex,"bibref"),\currentlistindex)}} + {\ctxlua{bibtex.hacks.add(structures.lists.uservalue("\currentlist",\currentlistindex,"bibref"),\currentlistindex)}} \appendtoks \definelist[\currentbibtexsession]% @@ -456,17 +455,23 @@ \def\dodoloadbibtexpublicationalternative#1% {\doonlyonce{#1} - {\readsysfile{bxml-#1.mkiv} + {\startreadingfile + \readsysfile{bxml-#1.mkiv} {\showmessage\m!publications{6}{bxml-#1}} - {\showmessage\m!publications{1}{bxml-#1}}}} + {\showmessage\m!publications{1}{bxml-#1}}% + \stopreadingfile}} \appendtoks \doloadbibtexpublicationalternative \to \everysetupbibtexpublications -\appendtoks - \doloadbibtexpublicationalternative -\to \everyjob +% we expect at least one invocation of the setup commands +% because otherwise we always load the apa style even if +% no publications are used +% +% \appendtoks +% \doloadbibtexpublicationalternative +% \to \everystarttext % whatever, should be key @@ -578,7 +583,7 @@ {\ifx\currentbibtexnumbering\v!short \setbox\scratchbox\hbox{\bibtexpublicationsparameter\c!numbercommand{\bibtexpublicationsparameter\c!samplesize}}% \else - \setbox\scratchbox\hbox{\bibtexpublicationsparameter\c!numbercommand{\ctxlua{tex.write(structure.lists.size())}}}% + \setbox\scratchbox\hbox{\bibtexpublicationsparameter\c!numbercommand{\ctxlua{tex.write(structures.lists.size())}}}% \fi \bibtexnumberwidth\wd\scratchbox \setuplist[\currentbibtexsession][\c!distance=\zeropoint]} @@ -615,10 +620,12 @@ \doifelse{\bibtexpublicationsparameter\c!method}\v!local {\ctxlua{bibtex.hacks.reset(1)}}% function can take method {\ctxlua{bibtex.hacks.reset(2)}}% - \placestructurelist + \doplacestructurelist {\currentbibtexsession} {\currentbibtexcriterium} {\namedlistparameter\currentbibtexsession\c!number}% + {\namedlistparameter\currentbibtexsession\c!extras}% + {\namedlistparameter\currentbibtexsession\c!order}% \ctxlua{bibtex.hacks.flush("\bibtexpublicationsparameter\c!sorttype")}% \doendoflist} @@ -627,7 +634,7 @@ \ifx\currentbibtexsessiontag\empty % can't really happen \else\ifx\currentbibtexcriterium\v!all - \doplacepublicationindeed + \dotypesetbibtexpublication % was \doplacepublicationindeed \else \ctxlua{bibtex.hacks.doifalreadyplaced("\currentbibtexsessiontag")} \donothing @@ -822,17 +829,17 @@ \def\inbibtexlink#1#2% {\doifreferencefoundelse{\bibtexrefprefix#1} {\goto{#2}[\bibtexrefprefix#1]} - {!#1!\unknownreference{#1}}} + {!#1!}} \def\dobibtexgotolink#1#2% {\doifreferencefoundelse{\bibtexrefprefix#1} {\goto{#2}[\bibtexrefprefix#1]} - {!#1!\unknownreference{#1}}} + {!#1!}} \def\dobibattexlink#1#2% {\doifreferencefoundelse{\bibtexrefprefix#1} {\at{#2}[\bibtexrefprefix#1]} - {!#1!\unknownreference{#1}}} + {!#1!}} \def\dobibtexurllink#1#2% {\expanded{\useURL[bibtex:url:#1][#2]}% @@ -940,7 +947,7 @@ % \setuppublications[\c!refcommand=num]% % \cite[#1]% % \endgroup} -% {\unknownreference{#1}}} +% {}} % compress years % andtext namesep @@ -956,7 +963,7 @@ \def\dodobibtexauthoryearref #1{\ctxlua{bibtex.authoryearref ("bibtex:\currentbibtexsession","#1","normal","author")}} \def\dodobibtexauthoryearsref#1{\ctxlua{bibtex.authoryearsref("bibtex:\currentbibtexsession","#1","normal","author")}} -\unexpanded\def\bibtexsingularplural#1#2{\ctxlua{bibtex.singular_or_plural(\!!bs#1\!!es,\!!bs#2\!!es)}} +\unexpanded\def\bibtexsingularplural#1#2{\ctxlua{bibtex.singularorplural(\!!bs#1\!!es,\!!bs#2\!!es)}} \protect \endinput |