From: Wolfgang Schuster <schuster.wolfgang@gmail.com>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Error with alternative (interactive) TOC
Date: Fri, 10 Oct 2014 13:02:47 +0200 [thread overview]
Message-ID: <BAC6A699-05C8-41E9-80F7-BCAC7169DCB2@gmail.com> (raw)
In-Reply-To: <CAANrE7oUMvnJQcXvfzK+M6LHnD-fiKBttJLmw8ZN+88rpJvy1g@mail.gmail.com>
Am 09.10.2014 um 20:24 schrieb Thangalin <thangalin@gmail.com>:
> Hi,
>
> How do you make a custom TOC entry that links to the correct page?
>
> In the following example, the last TOC item is not hyperlinked, and
> all the section hyperlinks are incorrect (off by one). Note that the
> chapters and sections are separate pages.
You’re wrong, there are links for all section entries but the area for the hyperlinks
are shifted upwards by half a line, it’s easier to notice when you increase the space
between the entries.
\setupinteraction[state=start]
\setuphead[section][page=yes,continue=no]
\define[3]\SectionTOC{\ruledhbox{#3 #2}}
\setuplist
[section]
[alternative=interactive,
command=\SectionTOC,
before={\blank[2*line]}]
\starttext
\placecontent
\chapter[title=Chapter]
\dorecurse{4}
{\section{Section}
Level \recurselevel.}
\stoptext
This problem can be fixed by adding \noindent in front of the \hbox command in the defintion
of the interactive alternative, i.e.
\startsetups[\??listrenderings:interactive]
\edef\p_command{\listalternativeparameter\c!command}%
\ifx\p_command\empty
[\currentlist: \currentlistentrynumber\space -- \currentlistentrytitle\space -- \currentlistentrypagenumber]%
\else
\listparameter\c!before
- \hbox \strc_lists_get_reference_attribute\v!all \strc_lists_get_destination_attribute {
+ \noindent\hbox \strc_lists_get_reference_attribute\v!all \strc_lists_get_destination_attribute {
\p_command\currentlistentrynumber\currentlistentrytitle\currentlistentrypagenumber
}
\listparameter\c!after
\fi
\stopsetups
but to ensure all entries all placed below each other you have to set "before=\endgraf“ with \setuplist.
BTW: The "vertical“ list alternative has the same problem with the wrong area for the hyperlink.
Wolfgang
___________________________________________________________________________________
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
___________________________________________________________________________________
next prev parent reply other threads:[~2014-10-10 11:02 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-09 18:24 Thangalin
2014-10-10 11:02 ` Wolfgang Schuster [this message]
2014-10-10 18:04 ` Thangalin
2014-10-10 21:02 ` 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=BAC6A699-05C8-41E9-80F7-BCAC7169DCB2@gmail.com \
--to=schuster.wolfgang@gmail.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).