* Bug with linenumbering @ 2012-05-01 19:43 Aditya Mahajan 2012-05-01 22:16 ` Aditya Mahajan 2012-05-02 8:30 ` Hans Hagen 0 siblings, 2 replies; 8+ messages in thread From: Aditya Mahajan @ 2012-05-01 19:43 UTC (permalink / raw) To: mailing list for ConTeXt users Hi, Line numbering does not respect the parameters given with \startlinenumbering. For example: \definelinenumbering [test] \starttext \startlinenumbering[test][color=blue,align=flushright,distance=0.5em] \input knuth \stoplinenumbering \page \setuplinenumbering [test][color=blue,align=flushright,distance=0.5em] \startlinenumbering[test] \input knuth \stoplinenumbering \stoptext Aditya ___________________________________________________________________________________ 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Bug with linenumbering 2012-05-01 19:43 Bug with linenumbering Aditya Mahajan @ 2012-05-01 22:16 ` Aditya Mahajan 2012-05-02 8:30 ` Hans Hagen 1 sibling, 0 replies; 8+ messages in thread From: Aditya Mahajan @ 2012-05-01 22:16 UTC (permalink / raw) To: mailing list for ConTeXt users On Tue, 1 May 2012, Aditya Mahajan wrote: > Line numbering does not respect the parameters given with > \startlinenumbering. I think that the state at the end of the page flush is used, rather than the state at the beginning of line numbering. An example illustrating this: \definelinenumbering [test] \starttext \startlinenumbering[test][color=blue,align=flushright,distance=0.5em] \input knuth \stoplinenumbering \setuplinenumbering [test][color=blue,align=flushright,distance=0.5em] \startlinenumbering[test] \input knuth \stoplinenumbering \setuplinenumbering [test][color=red,align=flushright,distance=0.5em] \stoptext (Both snippets have red line numbers!) Aditya ___________________________________________________________________________________ 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Bug with linenumbering 2012-05-01 19:43 Bug with linenumbering Aditya Mahajan 2012-05-01 22:16 ` Aditya Mahajan @ 2012-05-02 8:30 ` Hans Hagen 2012-05-03 4:58 ` Aditya Mahajan 1 sibling, 1 reply; 8+ messages in thread From: Hans Hagen @ 2012-05-02 8:30 UTC (permalink / raw) To: mailing list for ConTeXt users On 1-5-2012 21:43, Aditya Mahajan wrote: > Hi, > > Line numbering does not respect the parameters given with > \startlinenumbering. For example: Line numbering is a delayed operation. As they are handled when the page is constructed the settings of that moment apply. In practice only the start key is handled when you pass settings to \start.... (the only reason for having the second argument is number start/restart etc). If you want different renderings, the best is to define a specific instance of line numbering. Maybe a future version will be more clever. Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl ----------------------------------------------------------------- ___________________________________________________________________________________ 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Bug with linenumbering 2012-05-02 8:30 ` Hans Hagen @ 2012-05-03 4:58 ` Aditya Mahajan 2012-05-03 12:43 ` Wolfgang Schuster 0 siblings, 1 reply; 8+ messages in thread From: Aditya Mahajan @ 2012-05-03 4:58 UTC (permalink / raw) To: Hans Hagen; +Cc: mailing list for ConTeXt users On Wed, 2 May 2012, Hans Hagen wrote: > On 1-5-2012 21:43, Aditya Mahajan wrote: >> Hi, >> >> Line numbering does not respect the parameters given with >> \startlinenumbering. For example: > > Line numbering is a delayed operation. As they are handled when the page is > constructed the settings of that moment apply. In practice only the start key > is handled when you pass settings to \start.... (the only reason for having > the second argument is number start/restart etc). If you want different > renderings, the best is to define a specific instance of line numbering. A little background: In the initial version of the vim module, I used to do line numbering manually (each line started with \NL macro, which expanded to a number in an appropriate style depending on whether line numbering was enabled or not. When I rewrote the module to use the filter module, I also rewrote the line numbering mechanism to use ConTeXt's inbuilt line numbering macros, but I cannot get them to work. Consider the following example. I want to define an environment, which, amongst other things does line numbering. I want the user to control the style and color of line numbering, so I define keys numberstyle and numbercolor, which are then passed on to the line numbering macros. The most obvious implementation of this does not work. \definenamespace [whatever] [ type=module, name=whatever, command=yes, setup=yes, parent=whatever, ] \appendtoks \definelinenumbering [\currentwhatever] [ color=\whateverparameter{numbercolor}, style=\whateverparameter{numberstyle}, ]% \setvalue{start\currentwhatever}{\dostartwhatever[\currentwhatever]}% \setvalue{stop\currentwhatever}{\dostopwhatever}% \to\everydefinewhatever % For illustration. The actual macro is more complicated. \def\dostartwhatever[#1]% {\startlinenumbering[#1]} \def\dostopwhatever {\stoplinenumbering} %%%% \definewhatever[testing][numbercolor=red,numberstyle=bold] \starttext \starttesting \input knuth \stoptesting \stoptext When I run it, the line number is not styled. Any idea on what I can do differently? Aditya ___________________________________________________________________________________ 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Bug with linenumbering 2012-05-03 4:58 ` Aditya Mahajan @ 2012-05-03 12:43 ` Wolfgang Schuster 2012-05-03 15:18 ` Aditya Mahajan 0 siblings, 1 reply; 8+ messages in thread From: Wolfgang Schuster @ 2012-05-03 12:43 UTC (permalink / raw) To: mailing list for ConTeXt users Am 03.05.2012 um 06:58 schrieb Aditya Mahajan: > On Wed, 2 May 2012, Hans Hagen wrote: > >> On 1-5-2012 21:43, Aditya Mahajan wrote: >>> Hi, >>> Line numbering does not respect the parameters given with >>> \startlinenumbering. For example: >> >> Line numbering is a delayed operation. As they are handled when the page is constructed the settings of that moment apply. In practice only the start key is handled when you pass settings to \start.... (the only reason for having the second argument is number start/restart etc). If you want different renderings, the best is to define a specific instance of line numbering. > > A little background: In the initial version of the vim module, I used to do line numbering manually (each line started with \NL macro, which expanded to a number in an appropriate style depending on whether line numbering was enabled or not. When I rewrote the module to use the filter module, I also rewrote the line numbering mechanism to use ConTeXt's inbuilt line numbering macros, but I cannot get them to work. > > Consider the following example. I want to define an environment, which, amongst other things does line numbering. I want the user to control the style and color of line numbering, so I define keys numberstyle and numbercolor, which are then passed on to the line numbering macros. The most obvious implementation of this does not work. > > […] > > \appendtoks > \definelinenumbering > [\currentwhatever] > [ > color=\whateverparameter{numbercolor}, > style=\whateverparameter{numberstyle}, > ]% > \setvalue{start\currentwhatever}{\dostartwhatever[\currentwhatever]}% > \setvalue{stop\currentwhatever}{\dostopwhatever}% > \to\everydefinewhatever You assume \definelinenumbering has a second argument for the settings but this isn’t the case and you need \setuplinenumbering to set them. 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Bug with linenumbering 2012-05-03 12:43 ` Wolfgang Schuster @ 2012-05-03 15:18 ` Aditya Mahajan 2012-05-03 16:01 ` Wolfgang Schuster 0 siblings, 1 reply; 8+ messages in thread From: Aditya Mahajan @ 2012-05-03 15:18 UTC (permalink / raw) To: Wolfgang Schuster; +Cc: mailing list for ConTeXt users [-- Attachment #1: Type: TEXT/PLAIN, Size: 1258 bytes --] On Thu, 3 May 2012, Wolfgang Schuster wrote: > You assume \definelinenumbering has a second argument for the settings but this isn’t the case D'oh. > and you need \setuplinenumbering to set them. I also needed to change \setvalue to \setevalue in the example, and add an \expanded to get it to work. \definenamespace [whatever] [ type=module, name=whatever, command=yes, setup=yes, parent=whatever, ] \appendtoks \definelinenumbering [\currentwhatever]% \expanded{\setuplinenumbering [\currentwhatever] [ color=\whateverparameter{numbercolor}, style=\whateverparameter{numberstyle}, ]}% \setevalue{start\currentwhatever}{\dostartwhatever[\currentwhatever]}% \setevalue{stop\currentwhatever}{\dostopwhatever}% \to\everydefinewhatever % For illustration. The actual macro is more complicated. \def\dostartwhatever[#1]% {\startlinenumbering[#1]} \def\dostopwhatever {\stoplinenumbering} %%%% \definewhatever[testing][numbercolor=red,numberstyle=bold] \starttext \starttesting \input knuth \stoptesting \stoptext Thanks, Aditya [-- 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Bug with linenumbering 2012-05-03 15:18 ` Aditya Mahajan @ 2012-05-03 16:01 ` Wolfgang Schuster 2012-05-03 18:59 ` Aditya Mahajan 0 siblings, 1 reply; 8+ messages in thread From: Wolfgang Schuster @ 2012-05-03 16:01 UTC (permalink / raw) To: Aditya Mahajan; +Cc: mailing list for ConTeXt users Am 03.05.2012 um 17:18 schrieb Aditya Mahajan: > On Thu, 3 May 2012, Wolfgang Schuster wrote: > >> You assume \definelinenumbering has a second argument for the settings but this isn’t the case > > D'oh. > >> and you need \setuplinenumbering to set them. > > I also needed to change \setvalue to \setevalue in the example, and add an \expanded to get it to work. In MkIV \setuevalue is better the \setevalue and \normalunexpanded is faster than \expanded. The problem in your approach is that you can only set the style and color value with \definewhatever where I think it’s better to use \setupwhatever. \unprotect \installnamespace {whatever} \installcommandhandler \????whatever {whatever} \????whatever \appendtoks \definelinenumbering[\currentwhatever]% \to \everydefinewhatever \appendtoks \setuevalue{\e!start\currentwhatever}{\whatever_start[\currentwhatever]}% \setuevalue{\e!stop\currentwhatever }{\whatever_stop }% \to \everydefinewhatever \appendtoks \normalexpanded{\setuplinenumbering [\currentwhatever] [\c!color=\whateverparameter\c!numbercolor, \c!style=\whateverparameter\c!numberstyle]}% \to \everysetupwhatever \unexpanded\def\whatever_start[#1]% {\begingroup \edef\currentwhatever{#1}% \startlinenumbering[\currentwhatever]} \unexpanded\def\whatever_stop {\stoplinenumbering \endgroup} \protect \definewhatever[testing][numbercolor=red,numberstyle=bold] \setupwhatever [testing][numbercolor=blue] \starttext \starttesting \input knuth \stoptesting \stoptext 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: Bug with linenumbering 2012-05-03 16:01 ` Wolfgang Schuster @ 2012-05-03 18:59 ` Aditya Mahajan 0 siblings, 0 replies; 8+ messages in thread From: Aditya Mahajan @ 2012-05-03 18:59 UTC (permalink / raw) To: Wolfgang Schuster; +Cc: mailing list for ConTeXt users [-- Attachment #1: Type: TEXT/PLAIN, Size: 733 bytes --] On Thu, 3 May 2012, Wolfgang Schuster wrote: > > Am 03.05.2012 um 17:18 schrieb Aditya Mahajan: > >> On Thu, 3 May 2012, Wolfgang Schuster wrote: >> >>> You assume \definelinenumbering has a second argument for the settings but this isn’t the case >> >> D'oh. >> >>> and you need \setuplinenumbering to set them. >> >> I also needed to change \setvalue to \setevalue in the example, and add an \expanded to get it to work. > > In MkIV \setuevalue is better the \setevalue and \normalunexpanded is faster than \expanded. > > The problem in your approach is that you can only set the style and color value with \definewhatever > where I think it’s better to use \setupwhatever. Thanks for both the tips! Aditya [-- 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2012-05-03 18:59 UTC | newest] Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2012-05-01 19:43 Bug with linenumbering Aditya Mahajan 2012-05-01 22:16 ` Aditya Mahajan 2012-05-02 8:30 ` Hans Hagen 2012-05-03 4:58 ` Aditya Mahajan 2012-05-03 12:43 ` Wolfgang Schuster 2012-05-03 15:18 ` Aditya Mahajan 2012-05-03 16:01 ` Wolfgang Schuster 2012-05-03 18:59 ` Aditya Mahajan
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).