* Random selection of a word in a set with lua and mkiv @ 2011-06-08 16:52 Otared Kavian 2011-06-08 17:00 ` Hans Hagen 2011-06-08 17:00 ` Mathieu Dupont 0 siblings, 2 replies; 7+ messages in thread From: Otared Kavian @ 2011-06-08 16:52 UTC (permalink / raw) To: mailing list for ConTeXt users 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Random selection of a word in a set with lua and mkiv 2011-06-08 16:52 Random selection of a word in a set with lua and mkiv Otared Kavian @ 2011-06-08 17:00 ` Hans Hagen 2011-06-08 17:00 ` Mathieu Dupont 1 sibling, 0 replies; 7+ messages in thread From: Hans Hagen @ 2011-06-08 17:00 UTC (permalink / raw) To: mailing list for ConTeXt users; +Cc: Otared Kavian On 8-6-2011 6:52, Otared Kavian wrote: > 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. something function document.r(str) local set = utilities.parsers.settings_to_array(str) context(set[math.round(math.random(1,#set))]) end \ctxlua{document.r("math physics")} (untested) ----------------------------------------------------------------- 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Random selection of a word in a set with lua and mkiv 2011-06-08 16:52 Random selection of a word in a set with lua and mkiv Otared Kavian 2011-06-08 17:00 ` Hans Hagen @ 2011-06-08 17:00 ` Mathieu Dupont 2011-06-08 17:07 ` Hans Hagen 2011-06-08 20:12 ` Otared Kavian 1 sibling, 2 replies; 7+ messages in thread From: Mathieu Dupont @ 2011-06-08 17:00 UTC (permalink / raw) To: ConTeXt [-- Attachment #1.1: Type: text/plain, Size: 1712 bytes --] 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 > ___________________________________________________________________________________ [-- Attachment #1.2: Type: text/html, Size: 2723 bytes --] [-- Attachment #2: Type: text/plain, Size: 485 bytes --] ___________________________________________________________________________________ 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Random selection of a word in a set with lua and mkiv 2011-06-08 17:00 ` Mathieu Dupont @ 2011-06-08 17:07 ` Hans Hagen 2011-06-08 17:19 ` Mathieu Dupont 2011-06-08 20:12 ` Otared Kavian 1 sibling, 1 reply; 7+ messages in thread From: Hans Hagen @ 2011-06-08 17:07 UTC (permalink / raw) To: mailing list for ConTeXt users On 8-6-2011 7:00, Mathieu Dupont wrote: > > > 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 Because context remembers the seed (is reported in the log). Delete the tuc file and you will get another value. We could get oscillation otherwise. ----------------------------------------------------------------- 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Random selection of a word in a set with lua and mkiv 2011-06-08 17:07 ` Hans Hagen @ 2011-06-08 17:19 ` Mathieu Dupont 0 siblings, 0 replies; 7+ messages in thread From: Mathieu Dupont @ 2011-06-08 17:19 UTC (permalink / raw) To: Hans Hagen, ConTeXt [-- Attachment #1.1: Type: text/plain, Size: 1659 bytes --] I see.So it can be fixed by simply adding the first line before the second :\CHOOSERANDOM{""}\CHOOSERANDOM{"Maths", "Physics", "Algebra", "Analysis", "Chemistry", "Geometry", "Wave equation", "Schrödinger equation"}Thanks, that fixes one of my problems ! Mathieu > Date: Wed, 8 Jun 2011 19:07:50 +0200 > From: pragma@wxs.nl > To: ntg-context@ntg.nl > CC: mathieudupont@hotmail.com > Subject: Re: [NTG-context] Random selection of a word in a set with lua and mkiv > > On 8-6-2011 7:00, Mathieu Dupont wrote: > > > > > > 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 > > Because context remembers the seed (is reported in the log). Delete the > tuc file and you will get another value. We could get oscillation > otherwise. > > > ----------------------------------------------------------------- > 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 > ----------------------------------------------------------------- [-- Attachment #1.2: Type: text/html, Size: 2710 bytes --] [-- Attachment #2: Type: text/plain, Size: 485 bytes --] ___________________________________________________________________________________ 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Random selection of a word in a set with lua and mkiv 2011-06-08 17:00 ` Mathieu Dupont 2011-06-08 17:07 ` Hans Hagen @ 2011-06-08 20:12 ` Otared Kavian 2011-06-08 20:48 ` Hans Hagen 1 sibling, 1 reply; 7+ messages in thread From: Otared Kavian @ 2011-06-08 20:12 UTC (permalink / raw) To: mailing list for ConTeXt users [-- Attachment #1.1: Type: text/plain, Size: 3140 bytes --] Dear Hans, dear Mathieu, Thank you very much for your quick thoughts and solutions! It is amazing how fast one gets a solution to one's problem on this list… Just a note for Mathieu: I think that \enableregime[il1] is not needed in mkiv, since a unicode regime is the default there (however with mkii I use \enableregime[utf] but in the case we are discussing, one has to use lua, so mkiv is mandatory). Best regards: OK On 8 juin 2011, at 19:00, Mathieu Dupont wrote: > > 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 > > ___________________________________________________________________________________ > ___________________________________________________________________________________ > 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 > ___________________________________________________________________________________ %%%%%%%%%%%%%%%%%% Otared Kavian Département de Mathématiques Université de Versailles Saint-Quentin Bâtiment Fermat 45 avenue des Etats Unis 78035 Versailles cedex Téléphone: +33 1 39 25 46 42 Secrétariat: +33 1 39 25 46 44 Secrétariat: +33 1 39 25 46 46 e-mail: Otared.Kavian@math.uvsq.fr [-- Attachment #1.2: Type: text/html, Size: 6520 bytes --] [-- Attachment #2: Type: text/plain, Size: 485 bytes --] ___________________________________________________________________________________ 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Random selection of a word in a set with lua and mkiv 2011-06-08 20:12 ` Otared Kavian @ 2011-06-08 20:48 ` Hans Hagen 0 siblings, 0 replies; 7+ messages in thread From: Hans Hagen @ 2011-06-08 20:48 UTC (permalink / raw) To: mailing list for ConTeXt users; +Cc: Otared Kavian On 8-6-2011 10:12, Otared Kavian wrote: > Thank you very much for your quick thoughts and solutions! > It is amazing how fast one gets a solution to one's problem on this list… well, this was an easy one -) > Just a note for Mathieu: I think that > \enableregime[il1] depends on the input encoding ... regimes are still supported but indeed all ends up in utf internally 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 ___________________________________________________________________________________ ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2011-06-08 20:48 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2011-06-08 16:52 Random selection of a word in a set with lua and mkiv Otared Kavian 2011-06-08 17:00 ` Hans Hagen 2011-06-08 17:00 ` Mathieu Dupont 2011-06-08 17:07 ` Hans Hagen 2011-06-08 17:19 ` Mathieu Dupont 2011-06-08 20:12 ` Otared Kavian 2011-06-08 20:48 ` Hans Hagen
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).