ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Rik Kabel <context@rik.users.panix.com>
To: ntg-context@ntg.nl
Subject: Generate Authorlist example fails, was Re:  authors in the toc
Date: Fri, 03 Oct 2014 15:09:00 -0400	[thread overview]
Message-ID: <542EF44C.8020907@rik.users.panix.com> (raw)
In-Reply-To: <870B890A-91DB-4822-9DBE-9A07BC016358@gmail.com>


[-- Attachment #1.1: Type: text/plain, Size: 4059 bytes --]

On 2014-10-02 15:22, Wolfgang Schuster wrote:
>
> Am 02.10.2014 um 19:42 schrieb Rik Kabel <context@rik.users.panix.com 
> <mailto:context@rik.users.panix.com>>:
>
>> On 2014-10-02 05:18, Wolfgang Schuster wrote:
>>> There is a example on the wiki. You have to set your own values with 
>>> the second argument of the \startchapter etc. command, to display 
>>> the entry in the roc you have to write your own layout where you 
>>> access it with the \structurelistuservariable command.
>>>
>>> http://wiki.contextgarden.net/Generate_Authorlist_from_Head_Content
>>>
>>> Wolfgang
>>>
>> This example fails for me using the current (2014-09-27) standalone 
>> beta and with TL14. The failure is that the list of authors is 
>> presented as a grid without contents.
>>
>> Changing any of the lines in the example that construct the table 
>> cells, such as
>>
>>     \bTD \structureuservariable{author} \eTD
>>
>> to
>>
>>     \bTD xx \structureuservariable{author} \eTD
>>
>> results in a table with the new text, but no user variable text, 
>> showing that the \structureuservariable commands are not returning 
>> any text in this example.
>>
>> Has something relevant changed since the example was prepared 
>> (2010-11 or earlier)?
>>
>> (A pointer to useful descriptions of \structureuservariable and 
>> \structurelistuservariable would also be welcome. In the wiki, the 
>> startsection command description describes the former, but I have 
>> come across no comprehensive description for either in the 
>> documentation.)
>
> First you have to make a distinction between the values which are set 
> with the first and second argument of \startchapter, \startsection 
> etc.  While the first argument takes only certain keys, e.g. title, 
> bookmark etc. you’re free to choose your own keys for the second 
> argument because they are considered userdata.  The point of this 
> userdata is to give users a way to specify information which are 
> printed in the table of content or in the header, to access these 
> values context provides two commands.  When you create a new layout 
> for the table of contents you can use the \structurelistuservariable 
> command which takes the name of the key with the information as 
> argument and when you create a new header layout you can use the 
> \structureuservariable command.
>
>
> \define[3]\ChapterListCommand
>   {\starttabulate
>    \NC Number \NC #1 \NC\NR
>    \NC Title  \NC #2 \NC\NR
>    \NC Page   \NC #3 \NC\NR
>    \TB[medium]
>    \NC File   \NC \structurelistuservariable{file} \NC\NR
>    \stoptabulate}
>
> \setuplist[chapter][alternative=command,command=\ChapterListCommand]
>
> \define[2]\ChapterHeadCommand
>   {\startframed[align=flushleft,strut=no]
>      \starttabulate[before=,after=]
>      \NC Number \NC #1 \NC\NR
>      \NC Title  \NC #2 \NC\NR
>      \TB[medium]
>      \NC File   \NC \structureuservariable{file} \NC\NR
>      \stoptabulate
>    \stopframed}
>
> \setuphead[chapter][command=\ChapterHeadCommand]
>
> \starttext
>
> \completecontent
>
> \startchapter[title=Knuth example][file=knuth.tex]
> \input knuth
> \stopchapter
>
> \startchapter[title=Zapf example][file=zapf.tex]
> \input zapf
> \stopchapter
>
> \stoptext
>
> Wolfgang
>
Thank you, Wolfgang, for that explanation.

Can you suggest what might be wrong with the example at 
http://wiki.contextgarden.net/Generate_Authorlist_from_Head_Content?

The list of authors is created, so the user variable 'author' is set at 
for \doifsomething. When the index for the author list is set to a 
constant, only one row is generated, but when it is the user variable 
'name' the right number of rows is created, so 'name' is also set when 
it is referenced as the key in the author list sorting macro. Each line 
of the table is empty, suggesting that within the scope of the table the 
user variables are reset to nil. The same problem exists when 
\starttabulate is used instead of \bTABLE.

-- 
Rik


[-- Attachment #1.2: Type: text/html, Size: 7024 bytes --]

[-- Attachment #2: Type: text/plain, Size: 485 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://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

  reply	other threads:[~2014-10-03 19:09 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-01 23:17 Andrea Valle
2014-10-02  9:18 ` Wolfgang Schuster
2014-10-02 17:42   ` Rik Kabel
2014-10-02 19:22     ` Wolfgang Schuster
2014-10-03 19:09       ` Rik Kabel [this message]
2015-04-10 17:33     ` Rik Kabel
2015-04-11  7:27       ` Wolfgang Schuster
2015-04-11 16:02         ` Rik Kabel
2014-10-03 14:32   ` Andrea Valle
2014-10-03 17:00     ` Rik Kabel
2014-10-03 20:04       ` Andrea Valle

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=542EF44C.8020907@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).