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 | 33 |
1 files changed, 22 insertions, 11 deletions
diff --git a/Master/texmf-dist/tex/context/base/bibl-bib.mkiv b/Master/texmf-dist/tex/context/base/bibl-bib.mkiv index 681be325f2b..56007d21c1f 100644 --- a/Master/texmf-dist/tex/context/base/bibl-bib.mkiv +++ b/Master/texmf-dist/tex/context/base/bibl-bib.mkiv @@ -5,7 +5,7 @@ %D subtitle=Initialization, %D author=Hans Hagen \& Taco Hoekwater, %D date=\currentdate, -%D copyright={PRAGMA / Hans Hagen \& Ton Otten}] +%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for @@ -527,24 +527,29 @@ \edef\currentbibtexsession{#1}% \let\currentlist\currentbibtexsession \setuplist[\currentbibtexsession][\c!criterium=\v!previous,#2] - \doifelsenothing{\namedlistparameter\currentbibtexsession\c!title} - {\systemsuppliedchapter[\currentbibtexsession]{\headtext{\currentbibtexsession}}} - {\normalexpanded{\systemsuppliedchapter[\currentbibtexsession]{\namedlistparameter\currentbibtexsession\c!title}}}% - \dodoplacebibtexpublications} + \edef\currentbibtexsessiontitle{\namedlistparameter\currentbibtexsession\c!title}% + \ifx\currentbibtexsessiontitle\empty + \normalexpanded{\startnamedsection[\v!chapter][\c!reference=\currentbibtexsession,\c!title={\headtext{\currentbibtexsession}}]}% + \else + \normalexpanded{\startnamedsection[\v!chapter][\c!reference=\currentbibtexsession,\c!title={\currentbibtexsessiontitle}]}% + \fi + \dodoplacebibtexpublications + \stopnamedsection + \endgroup} \def\doplacebibtexpublications[#1][#2]% {\begingroup \edef\currentbibtexsession{#1}% \let\currentlist\currentbibtexsession \setuplist[\currentbibtexsession][\c!criterium=\v!previous,#2]% - \dodoplacebibtexpublications} + \dodoplacebibtexpublications + \endgroup} \def\dodoplacebibtexpublications {\determinelistcharacteristics[\currentbibtexsession]% \the\everysetupbibtexlistplacement \forgetall \typesetbibtexlist - \endgroup \global\advance\bibtexblock\plusone} \setvalue{\??pb:\c!numbering:\v!short}#1% todo var s -> short tag @@ -614,7 +619,8 @@ \to \everysetupbibtexlistplacement \def\typesetbibtexlist - {\dobeginoflist + {\begingroup + \startpacked[\v!blank]% \doif{\namedlistparameter\currentbibtexsession\c!criterium}\v!cite {\setuplist[\currentbibtexsession][\c!criterium=\v!here]}% \doifelse{\bibtexpublicationsparameter\c!method}\v!local @@ -627,7 +633,8 @@ {\namedlistparameter\currentbibtexsession\c!extras}% {\namedlistparameter\currentbibtexsession\c!order}% \ctxlua{bibtex.hacks.flush("\bibtexpublicationsparameter\c!sorttype")}% - \doendoflist} + \stoppacked + \endgroup} \unexpanded\def\typesetbibtexpublication#1% {\edef\currentbibtexsessiontag{#1}% @@ -645,7 +652,11 @@ {\doifbibreferencefoundelse\currentbibtexsessiontag {\global\advance\bibtexcounter\plusone \ctxlua{bibtex.hacks.registerplaced("\currentbibtexsessiontag")}% - \dodolistelement{\currentbibtexsession}{}{\number\bibtexcounter}{\thebibtexpublicationlistelement}{}{}} + \let\currentlist\currentbibtexsession + \let\currentlistentrynumber \bibtexcounter + \let\currentlistentrytitle \thebibtexpublicationlistelement + \let\currentlistentrypagenumber\empty + \strc_lists_apply_renderingsetup} {}} % invalid \def\thebibtexpublicationlistelement @@ -725,7 +736,7 @@ {\dontleavehmode \begingroup \bibtexcitationparameter\v!left - \penalty\!!tenthousand + \penalty\plustenthousand \ctxlua{bibtex.hacks.resolve("","\number\bibtexblock","#1")}% \bibtexcitationparameter\v!right \endgroup} |