/[meta-cvs]/meta-cvs/F-8BA9006638D7FE514EB070E969A467D9
ViewVC logotype

Contents of /meta-cvs/F-8BA9006638D7FE514EB070E969A467D9

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.5.2.1 - (show annotations)
Wed Apr 23 05:37:35 2003 UTC (10 years, 11 months ago) by kaz
Branch: mcvs-1-0-branch
CVS Tags: mcvs-1-0-branch~merged-to-HEAD-1, mcvs-1-0-branch~merged-to-HEAD-0, mcvs-1-0-11, mcvs-1-0-10, mcvs-1-0-13, mcvs-1-0-12, mcvs-1-0-9, mcvs-1-0-8, mcvs-1-0-7
Changes since 1.5: +2 -2 lines
Improved error handling.  Use of tty for user interaction, plus
new global option for selecting non-interactive bail behavior.

* code/mcvs-main.lisp (*global-options*): add --error-bail option.
(*usage*): Describe new option.
(mcvs-execute): Dynamically bind *interactive-error-io* variable
to a stream formed by opening the controlling tty.
Send error message to *error-output* rather than *standard-output*.

* code/unix-bindings/unix.lisp (unix-funcs:ctermid): New function,
FFI interface to mcvs_ctermid.

* code/unix-bindings/wrap.c (mcvs_ctermid): New function.

* code/chatter.lisp (chatter): Chatter now goes to *error-output*
rather than *standard-output*.

* code/error.lisp (*interactive-error-io*): New special variable,
holds stream open to controlling tty.
(mcvs-terminate): New function.
(mcvs-error-handler): Use *interactive-error-io* to print menu
and obtain user input. Support the :bail value of
*mcvs-error-treatment* Plus some cosmetic changes.

* code/options.lisp (filter-mcvs-options): Support --error-bail option.

* code/filt.lisp (mcvs-filt-loop): Bugfix, (read-line t ...)
should be (read-line *standard-input* ...) because t stands
for *terminal-io* rather than *standard-io*, unlike in the
format function!

* code/rcs-utils.lisp (rcs-read-token): Read from *standard-input*
rather than *terminal-io*.
1 ;;; This source file is part of the Meta-CVS program,
2 ;;; which is distributed under the GNU license.
3 ;;; Copyright 2002 Kaz Kylheku
4
5 (provide "chatter")
6
7 (defconstant *mcvs-debug* 3)
8 (defconstant *mcvs-info* 2)
9 (defconstant *mcvs-terse* 1)
10 (defconstant *mcvs-silent* 0)
11
12 (defvar *mcvs-chatter-level* *mcvs-info*)
13 (declaim (special *mcvs-chatter-level*))
14
15 (defun chatter (level &rest args)
16 (when (>= *mcvs-chatter-level* level)
17 (write-string "* " *error-output*)
18 (apply #'format *error-output* args)))
19
20 (defmacro chatter-debug (&rest args)
21 `(chatter *mcvs-debug* ,@args))
22
23 (defmacro chatter-info (&rest args)
24 `(chatter *mcvs-info* ,@args))
25
26 (defmacro chatter-terse (&rest args)
27 `(chatter *mcvs-terse* ,@args))

  ViewVC Help
Powered by ViewVC 1.1.5