This following code works, except that the first random is always the same (Analysis) for some reason. Anyone knows why ? \enableregime[il1]\starttext\startluacode userdata = userdata or {} math.randomseed( os.time() ) function userdata.random(...) context(arg[math.random(1, #arg)]) end\stopluacode\def\CHOOSERANDOM#1{\ctxlua{userdata.random(#1)}}\dorecurse{10}{\CHOOSERANDOM{"Maths", "Physics", "Algebra", "Analysis", "Chemistry", "Geometry", "Wave equation", "Schrödinger equation"}\par}\stoptext Mathieu
From: otared@gmail.com Date: Wed, 8 Jun 2011 18:52:36 +0200 To: ntg-context@ntg.nl Subject: [NTG-context] Random selection of a word in a set with lua and mkiv
Hi all,
Assuming that we have a set of words or expressions, say {Maths, Physics, Algebra, Analysis, Chemistry, Geometry, Wave equation, Schrödinger equation} is it possible to write a lua function, named for instance randomselectword which returns one of the words or expressions selected at random in the above set? Indeed this is intended to be used in a TeX file processed with mkiv.
Thanks in advance for any idea and help.
Best regards: OK ___________________________________________________________________________________ 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 ___________________________________________________________________________________