From: Achim Jander <achim@jander.de>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: still struggling with footnotes
Date: Wed, 05 Jan 2011 16:54:50 +0100 [thread overview]
Message-ID: <4D24944A.3090600@jander.de> (raw)
In-Reply-To: <4D21F083.8080000@jander.de>
Am 03.01.2011 16:51, schrieb Achim Jander:
> Hi all,
> I am still trying to get the footnote numbers aligned in a special
> way: flushright, but the width depends on the width of the max
> footnote-number on page,
> so to get
> 1
> 2
> and
> ~9
> 10
>
> After reading the manuals and the source given in strc-not.lua thats
> how far i am at the moment:
>
> \enabletrackers[structures.notes]
>
> \setupnote[footnote][numbercommand=, way=bypage]
> \setupnotedefinition[footnote][location=left,distance=1em,hang=4,headalign={flushright},width=1em]
>
>
>
> \def\getmaxnote[#1]{\ctxlua{
> local n = structures.notes.getn("#1",n)
> local current = structures.notes.get("#1",n)
> local cr = current.references
> local result = cr.realpage
>
> -- calculate the width of cr.number and store in maxwidth
> -- loop through the notes until act.realpage <> cr.realpage
> -- and for each note calculate the width, compare with maxwidh and
> store the max
> -- then set the width to the correct maxwidth
>
> -- context.setupnotedefinition({"footnote"}, {width=maxwidth})
>
> }
> }
>
> \appendtoks
> \getmaxnote[footnote]
> \to\everybeforenoteinsert
>
> \showframe
>
> \starttext
> \dorecurse {100} {
> test \footnote{test }
> }
> \stoptext
>
> Now I can not figure out how to get the "real" footnote-number of the
> note (is there any way?) And does this approach make sense at all?
> Any hints welcome, i tear my hair for hours now
>
> Greetings,
> Achim
Hi again,
now i found out how to get the footnote-number:
local num = current.numberdata
local test = num.numbers
local num = tostring(test[1])
but i also found out, that my plan of iterating through the notes was
indeed senseless, because at this stage the next footnote is not known.
(i should have tested that first).
So my new plan is, to calculate the correct width in
everybeforenoteinsert, and to compare it with the first one of the page.
My question now: is there any possibility to restart the page when i
find that i need a greater width?
eg to invoke a command \justdoitagainsam??
Sorry that i make so much noise about such a silly footnote-thing, but
all my books have many footnotes, and all the notes have to be
typesetted like that (not my idea)
So without, i could hardly use ConTeXt anyway and that would be sad...
Greetings,
Achim
___________________________________________________________________________________
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:[~2011-01-05 15:54 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-03 15:51 Achim Jander
2011-01-05 15:54 ` Achim Jander [this message]
2011-01-06 13:49 ` Hans Hagen
2011-01-06 15:58 ` Achim Jander
2011-01-07 18:26 ` 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=4D24944A.3090600@jander.de \
--to=achim@jander.de \
--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).