On 03/18/2014 11:30 PM, Aditya Mahajan wrote: > On Tue, 18 Mar 2014, Pablo Rodriguez wrote: > >> The next one (AFAIK) should work on every OS: >> >> \startluacode >> local user = "" >> local users = { >> ["ousia"] = 1, >> } >> function document.CheckUser() >> user = os.resultof("echo ousia") >> context.verbatim(user) >> end >> >> function document.UserNumber(name) >> context.verbatim(users[name or user] or 0) >> end >> \stopluacode >> >> \def\CheckUser {\ctxlua{document.CheckUser ()}} >> \def\UserNumber{\ctxlua{document.UserNumber()}} >> >> \starttext >> This is user \CheckUser with number \UserNumber. >> \stoptext > > (Untested) > > Change `local user` by > > ~~~ > userdata = userdata or {} > userdata.user = "" > ~~~ > > and all other occurances of `user` by `userdata.user`.
Many thanks for your reply, Aditya. I followed your instructions, but I’m afraid that it doesn’t work. I cannot say whether it is my fault, since this is all Greek to me. I tried a simpler approach (my guess, I discovered the existence of \executesystemcommand yesterday), which doesn’t work either: \def\Checkuser{\executesystemcommand{echo rightuser > tmp-yser.txt}} \def\CheckUser{\Checkuser\input tmp-yser.txt} \def\UserNumber{\processaction[\CheckUser][rightuser=>1, unknown=>user unknown]} \starttext This is user \CheckUser\ with number \UserNumber. \stoptext I don’t know why the \UserNumber command cannot process action and why the backslash after \CheckUser is required, since it seems to add an extra space. What am I doing wrong in the previous example? Many thanks for your help, Pablo -- http://www.ousia.tk ___________________________________________________________________________________ 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 ___________________________________________________________________________________