--- freem/doc/freem.texi 2025/05/19 02:03:31 1.60 +++ freem/doc/freem.texi 2025/05/19 12:45:01 1.61 @@ -3537,6 +3537,16 @@ ZHALT @cindex commands, non-standard @emph{FreeM Extension} +Inserts a line of M code into the currently-active routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. + +@emph{Syntax} + +@example +ZINSERT@emph{:postcondition} @emph{expr V mcode}[:@emph{label}] +@end example + +Above, @emph{expr V mcode} is an expression returning a string giving M code. If @emph{label} is omitted, the code will be inserted at the insertion point, which is typically the end of the routine. Otherwise, the code will be inserted at the line immediately following @emph{label}. + @node ZJOB @section ZJOB @cindex ZJOB @@ -3641,6 +3651,24 @@ In its argumentless form, quits from @co @cindex commands, non-standard @emph{FreeM Extension} +In argumentless form, removes all M code from the current routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. + +@emph{Syntax} + +@example +ZREMOVE@emph{:postcondition} +@end example + +In argumented form, removes a subset of the current routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. + +@emph{Syntax} + +@example +ZREMOVE@emph{:postcondition} @emph{start}[:@emph{end}] +@end example + +In the above syntax, @emph{start} and @emph{end} can be a tag in the current routine, or @code{*} to indicate the routine buffer insertion point (typically the end of the routine). + @node ZSAVE @section ZSAVE @cindex ZSAVE