zlisp: support "escaped \" in lisp strings".

* lib/zile/zlisp.lua (lex): Adjust string reading loop to add
`"` character to lisp strings when `\"` is encountered.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
zlisp: improve `message` subr to work more like Emacs.

* lib/zemacs/specs/zlisp_minibuf_spec.yaml (message): Specify
behaviour of `(message)` subr.
* lib/zemacs/specs/spec_helper.lua (mkmacro): Support quote marks
in keyboard macros.
* lib/zemacs/zlc (render_params): Translate zlisp `&rest`
parameter as Lua `...` varags.
(defsubr): Use it.
* lib/zemacs/zlisp/minibuf.zl (message): Require format string
and optional additional arguments, just like Emacs' `message`!
* lib/zile/minibuf.lua (minibuf_echo): Return echoed string.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
zlisp: display `eval-expression` result in minibuf.

* lib/zemacs/eval.lua (eval_string): Return result of most
recently evaluated expression.
* lib/zile/zlisp.lua (eval_string): Likewise.
* lib/zemaacs/zlisp/lisp.zl (eval-expression): Display result of
evaluation in minibuffer.
* lib/zemacs/specs/zlisp_buffer_spec.yaml (point): Remove pending
call from newly passing pending examples.
* lib/zemacs/specs/spec_helper.lua (edit): Allow leading white-
space before lisp code.
* lib/zemacs/specs/zlisp_buffer_spec.yaml (point): Add white-
space to lisp code for legibility.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
specs: capture stdio streams and check batch mode against them.

This is not only a major improvement to the `zemacs:edit`
helper for more precise expectation matching, but also stops
all the annoying flashing when curses was sending the
alternate screen control codes directly to the terminal.
* lib/zemacs/specs/spec_helper.lua (Editor): Add output and
errout fields.  Remove `_type` and derive from
`specl.shell.Process` so existing Process matchers will work on
output and errout.
Adjust matcher `actual_type` values accordingly.
(edit): Capture subprocess stdout and stderr to Editor output
and errout fields.
* lib/zile/minibuf.lua (minibuf_out): Factored out of
minibuf_echo.
(minibuf_echo): Adjust.
* lib/zemacs/zlisp/minibuf.zl (message): Output message content
to stderr in batch mode, as described in docstring.
* lib/zemacs/specs/zlisp_bind_spec.yaml,
lib/zemacs/specs/zlisp_buffer_spec.yaml,
lib/zemacs/specs/zlisp_minibuf_spec.yaml,
lib/zemacs/specs/zlisp_move_spec.yaml: Strictly check stderr
contents against `message` output in batch mode; and use format
argument of `message` for more accurate expectation matching.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>