Re: [NTG-context] [Dev-luatex] Example: Sorting in LuaTeX
Jonathan Sauer wrote:
Hello Hans,
Caveat: In TeX, braces can be used to hide the <delimiter>; this is not possible in the above code. I plan to code a "string.findOutsideBraces" function to handle braces correctly, but I wonder if this should not be a library routine. the embedded libaries and extensions are kept to the minimum, if only because we want to avoid endless discussions about what could go in there; lua is fast enough anyway; concerning braces .. watch the %b option on expressions, can be handy for nested braces
Right. I am still learning Lua and had known about patterns, but not about %b. That indeed looks promising. I will look into it.
simple example ... \def\sortedsequence#1#2{\directlua 0 { do local sep = "\luaescapestring{#1}" local str = "\luaescapestring{#2}" local tab = { } for s in string.gmatch(str,"([^"..sep.."]+)") do tab[\string ##tab+1] = s end table.sort(tab) tex.sprint(table.concat(tab,sep)) end }} \sortedsequence{,}{qq,aa,cc,bb,ee,xx} ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
participants (1)
-
Hans Hagen