[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

clim command tables



    Date: Wed, 19 Feb 1992 01:40 EST
    From: William M. York <York@Chuck-Jones.West.Dialnet.ILA.COM>

	Date: Tue, 18 Feb 1992 12:39 PST
	From: attila@merlin.bellcore.com (Leslie A. Walko)

	Is there a way of making clim command line to process application
	commands, s-expressions and possibly operating system commands?

    I have included a sample application at the end of this message.  The
    idea is to replace the standard command reader with one that knows how
    to read and interpret different input syntaxes.

Thank you for the example.  It was real helpful in patching
around the problem I had.

By the way, users may find it valuable to have a lisp listener
like behaviour that is inheritable from one of the command
tables.


Leslie

p.s. On Genera the (format t "~%Would execute Unix...) gets into
trouble with "output hold".  I guess this is because the clim
window is started up from a dynamic window stream.

(defmethod read-frame-command ((frame example) &key stream)
  (let ((char (peek-char)))			; Look ahead for the escape
    (if (eql char #\!)			        ; Unix escape
	(PROGN
	  (read-char)				; get rid of !
	  (let ((line (read-line)))		; read Unix command line
	    (format STREAM "~&Would execute Unix command ~S" line)))
	;; ELSE
	(multiple-value-bind (value type)
	      (accept `(command-or-form :command-table ,(frame-command-table frame))
		      :PROMPT NIL
		      :stream stream)
	.....