Am 04.09.2012 um 15:40 schrieb Marco Patzer <home...@lavabit.com>:

> Hi,
> 
> the luacode environment chokes on macro names with underscores.
> Example:
> 
> \starttext
> \unprotect
> 
> \def\number_two{two}
> 
> \startluacode
>  userdata = userdata or { }
>  function userdata.number_one() context("one") end
> 
>  -- works
>  userdata.number_one()
> 
>  -- fails
>  -- context.number_two()
> 
>  -- workaround
>  tex.print("\\number_two")
> \stopluacode
> 
> \protect
> \stoptext
> 
> Why is that and what can be done to access underscored macros in the
> usual way? I guess it's some catcode change from the function that
> prints into the TeX stream.


Use this in your Lua code:

context.unprotect()
context.number_two()
context.protect()

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
___________________________________________________________________________________

Reply via email to