From: "Procházka Lukáš" <lpr@pontex.cz>
To: ConTeXt <ntg-context@ntg.nl>
Subject: Re: Passing and retrieveing a variable
Date: Sat, 08 Jan 2011 19:12:02 +0100 [thread overview]
Message-ID: <op.voz4uczt8lgizc@lk-2008-nbk> (raw)
In-Reply-To: <4D278C80.8070805@wxs.nl>
Hello,
thanks for detailing the observation -
On Fri, 07 Jan 2011 22:58:24 +0100, Hans Hagen <pragma@wxs.nl> wrote:
> On 7-1-2011 9:32, Procházka Lukáš Ing. - Pontex s. r. o. wrote:
>
>> - Modes are accessible by tex.modes[<a-mode>].
>
> indeed
>
>> - - tex.modes are 'false' by default. I.e. they are not 'nil' but
>> 'false', even if not specified on the command line. (tex.mode.__newindex
>> predefined to this purpose?)
>
> indeed
>
>> - There is no table of arguments or variables being passed by
>> --arguments="ARG=arg" or by --variable="VAR=var" from the command line.
>
> indeed (--arguments is an old mechanism and mkii compatible)
>
>> - All arguments passed to the command line are accessible by
>> document.arguments. Unfortunately, when repeating an arg, only the last
>> is accessible, e.g.
>>
>> context.exe t.mkiv --arguments="ARG1=arg1" --arguments="ARG2=arg2"
>
> indeed, so one can easily overload
You're right, good feature.
>> will cause that only (string) "ARG2=arg2" will be in
>> document.arguments.arguments.
>
> as mentioned by someone already, use "a=1,b=2,c=3"
>
>> - - That means also that not splitting to key-value pair is not
>> performed by default (document.arguments.arguments is still "ARG2=arg2",
>> no splitting to document.arguments.arguments.ARG2 to be "arg2" is not
>> done).
>
> indeed, although they are split and assigned at the tex end
So, an earlier splitting may be performed by something like
for a in document.arguments:gmatch("([^,]+)") do
local k, v = a:match("(.*)=(.*)")
document.arguments[k] = v
end
Best regards,
Lukas
>> - Not only predefined options/switches, but all args passed by command
>> line are accessible by document.arguments. I.e. it's possible to call
>>
>> context.exe t.mkiv --myvar=MYVAR
>
> right, but make sure to use a prefix so that there is no confusion
> (myvarone myvartwo etc)
>
>> and later it's possible to get "MYVAR" from document.arguments.myvar.
>>
>> Let's check the call:
>>
>> context.exe t.mkiv --arguments=AAA=aaa --mode=MMM --arguments=BBB=bbb
>> --myvar=MYVAR
>
> Hans
___________________________________________________________________________________
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-08 18:12 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-05 19:22 Procházka Lukáš
2011-01-05 20:11 ` Peter Münster
2011-01-07 8:32 ` Procházka Lukáš Ing. - Pontex s. r. o.
2011-01-07 8:48 ` luigi scarso
2011-01-07 9:15 ` Peter Münster
2011-01-07 21:58 ` Hans Hagen
2011-01-08 18:12 ` Procházka Lukáš [this message]
2011-01-09 21:03 ` Hans Hagen
2011-01-05 20:41 ` Wolfgang Schuster
2011-01-06 7:39 ` Procházka Lukáš Ing. - Pontex s. r. o.
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=op.voz4uczt8lgizc@lk-2008-nbk \
--to=lpr@pontex.cz \
--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).