m4. While we're at it, we also add some more handlers to the SubEthaEditTools to try to make a more complete set, with the goal being to write scripts for the mode by using the handlers without directly interacting with SubEthaEdit in the AppleScript.
This requires relatively minor changes to the makefile I've been using, but nothing too serious. Also, I construct SubEthaEditTools itself using
m4, with more general purpose handlers for, e.g., string manipulation placed in their own files. With the more modular structure, some additional minor rewrites of some handlers seems appropriate, which do not warrant specific comment.
A concept that is made explicit in the SubEthaEditTools is that of the extended selection. That is, the selection modified either so that the beginning is extended to the start of the first line of the selection, or to the end of the last line or the selection, or both. The extended selection has appeared implicitly several times, so it seems worthwhile to make it explicit. Further, there are now handlers both for extending the selection (forward or backward) and for referring to the extended selection without modifying the actual selection.
Update: I've replaced the
quotedFormhandler with a
doubleQuotedFormhandler, to help prevent confusion with the
quoted form ofaction for AppleScript strings. I've also worked in a few usages of
quoted form ofin the various scripts for the LaTeX mode (I didn't know about
quoted form ofuntil recently).
Also, I've added a license. It's an MIT-style license, so should be suitably permissive for use by others.
Update 2 (2008/04/23): I've added a few more handlers. Specifically,