%D \module %D [ file=syst-str, %D version=2006.09.18, %D title=\CONTEXT\ System Macros, %D subtitle=String Processing, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %C This module is part of the \CONTEXT\ macro||package and is %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. \unprotect % nb: these macros might go away ! % % todo: escape special chars in expr (\luaescapeexpression) %D I got tired of making dedicated clean up macros using the %D same mechanism again and again, so now we have: %D %D \starttyping %D \def\xxxx{abc.d} \replacecharacters\xxxx{a.}{-} \xxxx %D \stoptyping \def\replacecharacters#1#2#3% macro characters replacement {\dodoglobal\edef#1{\ctxlua{tex.sprint((string.gsub(\!!bs#1\!!es,\!!bs#2\!!es,"#3")))}}} \def\separatestring#1\to#2% {\dodoglobal\def#2{\ctxlua{tex.sprint((string.gsub(\!!bs#1\!!es,"\letterpercent s+",",")))}}} \def\unspacefilename#1\to#2% {\dodoglobal\def#2{\ctxlua{tex.sprint((string.gsub(\!!bs#1\!!es,"\letterpercent s+","-")))}}} \protect \endinput