[climacs-devel] one-character patch to gui.lisp with-input-context call

Daniel Barlow dan at telent.net
Thu Jun 16 22:27:44 UTC 2005


Periodically I was getting errors from climacs complaining that 

> Condition COMMAND-TABLE-NOT-FOUND was signalled.
>   0: (FIND-COMMAND-TABLE (QUOTE GLOBAL-CLIMACS-TABLE) :ERRORP T)

I'm not sure how to trigger this absolutely reliably, but defining the
command below and executing it a couple of times seems to do the trick
most of the time

(define-named-command describe-keymap ()
  (let ((command-table 'global-climacs-table))
    (map-over-command-table-keystrokes
     (lambda (name key item)
       (let ((command-name (command-menu-item-value item))
	     (key (slot-value item 'climi::keystroke)))
	 (when (listp command-name) (setf command-name (car command-name)))
	 (unless (eq command-name 'com-self-insert)
	   (format #+nil *standard-input* *trace-output*
		   "~A || ~S~%"  key command-name ))))
     command-table)))

(I'm working up towards writing something akin to emacs'
describe-mode that shows the current keybindings.  At the moment iut
only shows the global bindings, but that seems to be the only
bindings there are right now anyway ...)

Anyway, the problem seems to be an extra ' in gui.lisp :

--- gui.lisp    15 Jun 2005 06:00:12 -0000      1.144
+++ gui.lisp    16 Jun 2005 22:16:41 -0000
@@ -315,7 +316,7 @@
                  (progn
                    (handler-case
                        (with-input-context 
-                             ('(command :command-table 'global-climacs-table))
+                             ('(command :command-table global-climacs-table))
                            (object)
                            (process-gestures)
                          (t

yesno?



-dan



More information about the climacs-devel mailing list