I’m trying in METAPOST to build a command to pass on to ConTeXt using btex/etex.

picture p; p := scantokens( "btex " & texcommands & " etex”);

with texcommands a variable that holds a string of TeX commands doesn’t work. 
The METAPOST parser complains about not finding etex.

I’m using MetaFun actually.

An example string in texcommands would in the end be something like

string texcommands;
texcommands := "\type-{Hello}, [World]!-";

Minimum example of my vardef that fails (the outcommented alternative to the 
scantokens line works and typesets “{Hello}, [World]!”):

vardef makeTeXLabel( expr w, h, name) =
  show "NAME:", name;
  save p; picture p ;
  save s; string s;
  s := "btex " & name & " etex";
  show "SCAN:", s;
  p := scantokens s;
  %p := btex   p := btex \type-{Hello}, [World]!- etex;
  p
enddef;

Log:

metapost log    > >> "NAME:"
metapost log    > >> "My Application (Component)"
metapost log    > >> "SCAN:"
metapost log    > >> "btex My Application (Component) etex"
metapost log    > ! No matching 'etex' for 'btex'..
metapost log    > <to be read again> 
metapost log    >                    ;
metapost log    > makeTeXLabel->...x";show"SCAN:",s;p:=scantokens.s;
metapost log    >                                                   
save.b;path.b;b:=boundingb...
metapost log    > <argument> ...(53),("My Application (Component)"))

Thanks in advance,

G
___________________________________________________________________________________
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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

Reply via email to