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.) -- Rik
How about:
\setupitemize[each][text][before=]
Alan
On Sat, 13 Jan 2018 16:17:54 -0500
Rik Kabel
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.)
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 ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------
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. 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
Further experimentation suggests that the problem is in the interaction between footnotes and margin placement. Endnotes work fine. \defineconstructionalternative [mylabel] [renderingsetup=constructionrenderings:mylabel, width=] \startsetups[constructionrenderings:mylabel] \dontleavehmode \inright{\flushconstructionheadbox} \stopsetups \defineenumeration [one] [alternative=mylabel, display=no, before=, after=] \definenote [endnote] \setupnotation [endnote] [way=bytext, location=none, conversion=numbers] \starttext \startchapter[title=bar] this works \startone[reference=aa]\input jojomayer \stopone \quotation{\startone[reference=bb]\input ward \stopone} this fails\footnote{\startone[reference=cc]\input jojomayer \stopone \quotation{\startone[reference=dd]\input ward \stopone}} while this works\endnote{\startone[reference=ee]\input jojomayer \stopone \quotation{\startone[reference=ff]\input ward \stopone}} whatever \in{one}[aa] whatever \in{one}[bb] whatever \in{one}[cc] whatever \in{one}[dd] whatever \in{one}[ee] whatever \in{one}[ff] \stopchapter \startchapter[title=notes] \placenotes[endnote] \stopchapter \stoptext -- Rik
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 -----------------------------------------------------------------
Hans, Even with the local scope, I cannot get multiple enumerations in a paragraph at the same time as I get inright labels in footnotes. The footnote enumerations appear only with display=yes, but that causes paragraph breaks after each enumeration. The default alignment works, but I need marginal indices. Labels seem to me a bit more flexible here since they do not require paragraph semantics for termination. I am not looking for a taggable mark, simply a visible reference index to which reference can be applied. So, with enumerations providing no benefit and introducing additional problems, is it unreasonable to request that labels be officially supported in MKIV and not marked as MKII relicts? Here is my latest test harness. \defineconstructionalternative [mylabel] [renderingsetup=constructionrenderings:mylabel, width=] \startsetups[constructionrenderings:mylabel] \dontleavehmode \inright[scope=local]{\flushconstructionheadbox} \stopsetups %% constructionrenderings testing alternatives % \inright[scope=local]{\flushconstructionheadbox} % \flushconstructionheadbox % \inright{\flushconstructionheadbox} \defineenumeration [Enu] [alternative=mylabel, display=no, before=, after=] \definelabel [Lab] [alternative=mylabel, before=, after=] \definenote [endnote] \setupnotation [endnote] [way=bytext, location=none, conversion=numbers] \definenote [footnote] \setupnotation [footnote] [way=bypage, numberconversion=set 2] \define\testTextOne{\quotation{\startEnu\input ward \stopEnu} And the rest of the paragraph.} \define\testTextTwo{\startEnu\input jojomayer \stopEnu \quotation{\startEnu\input ward \stopEnu} And the rest of the paragraph.} \define\testTextThree{\Lab\input jojomayer \quotation{\Lab\input ward } And the rest of the paragraph.} \setupwhitespace[small] \starttext \startchapter[title=bar] Paragraph with one enumeration: \testTextOne\ A footnote with one enumeration\footnote{\testTextOne} and an endnote with one enumeration.\endnote{\testTextOne} Paragraph with two enumerations: \testTextTwo\ A footnote with two enumerations\footnote{\testTextTwo} and an endnote with two enumeration.\endnote{\testTextTwo} Paragraph with two labels: \testTextThree\ A footnote with two labels\footnote{\testTextThree} and an endnote with two labels.\endnote{\testTextThree} \stopchapter \startchapter[title=notes] \placenotes[endnote] \stopchapter \stoptext -- Rik
On 1/15/2018 10:15 PM, Rik Kabel wrote:
Hans,
Even with the local scope, I cannot get multiple enumerations in a paragraph at the same time as I get inright labels in footnotes. The footnote enumerations appear only with display=yes, but that causes paragraph breaks after each enumeration. The default alignment works, but I need marginal indices.
Labels seem to me a bit more flexible here since they do not require paragraph semantics for termination. I am not looking for a taggable mark, simply a visible reference index to which reference can be applied.
So, with enumerations providing no benefit and introducing additional problems, is it unreasonable to request that labels be officially supported in MKIV and not marked as MKII relicts? Well, they are supported and i don't see them go away (hardly any code involved). There are many thingies that make more sense in mkii than in mkiv that stay(ed).
Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------
participants (3)
-
Alan Braslau
-
Hans Hagen
-
Rik Kabel