On 1/14/2018 9:37 PM, Rik Kabel wrote:
On 2018-01-14 09:46, Hans Hagen wrote:
On 1/13/2018 10:17 PM, Rik Kabel wrote:
I would like to request the restoration of labels (\definelabel) to full citizenship in MKIV. While enumerations are more flexible in many ways, they cannot replace one particular use of labels if find necessary. Enumerations are paragraph entities, while labels are not so restricted.
I use labels displayed as numbers in the margin to serially identify quotations in a book about the development of quotation and misquotation, at the same time generating reference information for cross-referencing. While most quotations are blocks and can be handled by enumerations, many are in-line quotations, and enumeration cannot be used for these.
The wiki describes enumerations as the MKIV replacement for labels, and the documentation as far as I can see omits \definelabel. Unless there is something else supported in MKIV that can assume this function of labels, can we please have full support for labels? I would not want to see labels deprecated before the functionality is reproduced.
(Of course, if you can suggest how enumeration can be adapted to this requirement, or suggest an alternative mechanism, this request can be rejected.)
two options:
\defineconstructionalternative [mylabel] [renderingsetup=constructionrenderings:mylabel, width=]
\startsetups[constructionrenderings:mylabel] \dontleavehmode \flushconstructionheadbox \stopsetups
\defineenumeration[two][alternative=mylabel,display=no,before=,after=]
\definelabel[foo][way=bychapter,prefix=chapter]
\starttext
\startchapter[title=bar]
here \starttwo\stoptwo \input tufte
here \foo[xx] \input tufte
whatever \in{foo}[xx]
\stopchapter
\stoptext
I played a bit more with enumerations and resolved one issue, I think. The forced paragraph break is a feature of the default before/after keys (both of which I need to null). Once this is done, enumerations can be used for in-line text as well, and when an explicit \par is added to \footnotes, the enumeration index appears there, unlike labels, where it does not appear.
use \startsetups[constructionrenderings:mylabel] \dontleavehmode \inright[scope=local]{\flushconstructionheadbox} \stopsetups also, an enumeration wants a paragraph as it needs to handle the following text an danythign between \whatever and the next \par (or emptyline) becomes that text so for the footnote it sees the end outside a group / argument
Can you explain why the enumeration defined with constructionalternative rendering fails in footnotes, as shown in the following example? I suspect it has to do with my not understanding the use of \flushconstructionheadbox.
\defineconstructionalternative [mylabel] [renderingsetup=constructionrenderings:mylabel, width=]
\startsetups[constructionrenderings:mylabel] \inright{\dontleavehmode\flushconstructionheadbox} \stopsetups
\defineenumeration[two][alternative=mylabel, % use mylabel rendering headcolor=darkgreen, text=, % no name preceding label number display=no, % suppresses line break with constructs before=, % no added text before label number after=] % no added text after label number
\defineenumeration[why][alternative=inright, % use inright rendering headcolor=blue, display=yes, % seems to be the default text=, % no name preceding label number before=, % no added text before label number after=] % no added text after label number
\definelabel[foo][text=,headcolor=red,alternative=inright]
\starttext
\startchapter[title=bar]
here \starttwo[reference=aa]\stoptwo \input ward \starttwo[reference=bb]\stoptwo \input ward
here as well?\footnote{\starttwo[reference=cc]\stoptwo This fails.\par}
whatever \in{two}[aa] and \in{two}[bb] and \in{two}[cc]
\blank
here \two[dd]\input ward \two[ee]\input ward
here as well?\footnote{\two[ff]This fails.\par}
whatever \in{two}[dd] and \in{two}[ee] and \in{two}[ff] and why is this section not three paragraph?
\blank
here \why[gg]\input ward \why[hh] \input ward
here as well?\footnote{\why[ii]This works!\par}
whatever \in{why}[gg] and \in{why}[hh] and \in{why}[ii]
\blank
here \foo[xx] \input ward \foo[yy] \input ward
here as well?\footnote{\foo[zz]This fails.}
whatever \in{foo}[xx] and \in{foo}[yy] and \in{foo}[zz]
\stopchapter
\stoptext
Could you explain the display key. The best I could determine from strc-con.mkvi is that if it is not 'no' in a construction, a \par is inserted, although I do not see why it is required in one case, and the other in my example above.
Could you also explain why \par is required in the footnotes when it does not seem to be needed in footnotes for any other use?
-- Rik
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net ___________________________________________________________________________________
-- ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------