From: Rik Kabel <context@rik.users.panix.com>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Labels and Enumerations
Date: Sun, 14 Jan 2018 15:37:13 -0500 [thread overview]
Message-ID: <ad1195fa-eded-e3a0-1659-685ab0292ff2@rik.users.panix.com> (raw)
In-Reply-To: <fef5f18f-b09a-c77b-2352-3aea10b70604@wxs.nl>
[-- Attachment #1.1: Type: text/plain, Size: 5679 bytes --]
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
[-- Attachment #1.2: Type: text/html, Size: 7407 bytes --]
[-- Attachment #2: Type: text/plain, Size: 492 bytes --]
___________________________________________________________________________________
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
___________________________________________________________________________________
next prev parent reply other threads:[~2018-01-14 20:37 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-13 21:17 Rik Kabel
2018-01-13 22:14 ` Alan Braslau
2018-01-14 14:46 ` Hans Hagen
2018-01-14 20:37 ` Rik Kabel [this message]
2018-01-15 1:59 ` Rik Kabel
2018-01-15 8:09 ` Hans Hagen
2018-01-15 21:15 ` Rik Kabel
2018-01-16 8:21 ` Hans Hagen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ad1195fa-eded-e3a0-1659-685ab0292ff2@rik.users.panix.com \
--to=context@rik.users.panix.com \
--cc=ntg-context@ntg.nl \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).