[NTG-context] Definition of lualetterbackslash

2011-08-22 Thread Aditya Mahajan

Hi

Consider the following example:

\startluacode
print(lualetterbackslash:, [=[\\include]=])
\stopluacode

\def\lualetterbackslash{\letterbackslash}
\startluacode
print(letterbackslash:, [=[\\include]=])
\stopluacode

\bye

gives

lualetterbackslash: \\include
letterbackslash:\include

I find the second alternative better. Why is \lualetterbackslash defined 
differently from \letterbackslash?


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
___


Re: [NTG-context] Definition of lualetterbackslash

2011-08-22 Thread Hans Hagen

On 22-8-2011 09:15, Aditya Mahajan wrote:

Hi

Consider the following example:

\startluacode
print(lualetterbackslash:, [=[\\include]=])
\stopluacode

\def\lualetterbackslash{\letterbackslash}
\startluacode
print(letterbackslash:, [=[\\include]=])
\stopluacode

\bye

gives

lualetterbackslash: \\include
letterbackslash: \include

I find the second alternative better. Why is \lualetterbackslash defined
differently from \letterbackslash?


to avoid problems with \n, \t and such

btw, best use context.include then as it provides you better tracing

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
___


Re: [NTG-context] Definition of lualetterbackslash

2011-08-22 Thread Aditya Mahajan

On Mon, 22 Aug 2011, Hans Hagen wrote:


On 22-8-2011 09:15, Aditya Mahajan wrote:

Hi

Consider the following example:

\startluacode
print(lualetterbackslash:, [=[\\include]=])
\stopluacode

\def\lualetterbackslash{\letterbackslash}
\startluacode
print(letterbackslash:, [=[\\include]=])
\stopluacode

\bye

gives

lualetterbackslash: \\include
letterbackslash: \include

I find the second alternative better. Why is \lualetterbackslash defined
differently from \letterbackslash?


to avoid problems with \n, \t and such


Ah, I see.


btw, best use context.include then as it provides you better tracing


Well, \include is a lilypond command that must be written to an external 
file, something like this:


\startluacode
lilypond_preamble = [[
\\include lilypond-book-preamble.py
other settings that will be substituted at run-time
]]

buffers.assign(preamble, lilypond_preamble)
\stopluacode

\startbuffer[content]
content of lilypond file
\stopbuffer

\savebuffer[preamble,content][temp-file]

\bye

I'll probably just use

\appendtoks
  \def\/{\letterbackslash}
\to\everyluacode

and then \/include. Other than using the magic single letter commands, I 
don't see an easy way of getting a \ in a lua string inside luacode :(


- \noexpand\include fails unless I define \include
- \letterbackslash include gives \ include
- \letterbackslash{}include gives \{}include

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
___


Re: [NTG-context] Definition of lualetterbackslash

2011-08-22 Thread Hans Hagen

On 22-8-2011 10:49, Aditya Mahajan wrote:


and then \/include. Other than using the magic single letter commands, I
don't see an easy way of getting a \ in a lua string inside luacode :(

- \noexpand\include fails unless I define \include
- \letterbackslash include gives \ include
- \letterbackslash{}include gives \{}include


you can also play with

\luaescapestring{...}
\detokenize{...}

or just

\string\include

-
  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
___