--- freem/doc/freem.texi 2025/05/18 20:40:35 1.59 +++ 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 @@ -3597,7 +3607,7 @@ ZMAP[@emph{:postcondition}] GLOBAL @emph @cindex commands, non-standard @emph{FreeM Extension} -Prints the contents of the current routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. +In argumentless form, prints the contents of the current routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. @emph{Syntax} @@ -3605,6 +3615,16 @@ Prints the contents of the current routi ZPRINT@emph{:postcondition} @end example +In argumented form, prints a subset of the current routine buffer, provided the optional @emph{postcondition} is @emph{true} or omitted. + +@emph{Syntax} + +@example +ZPRINT@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 ZQUIT @section ZQUIT @cindex ZQUIT @@ -3631,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