anchor.diff:  (defshortcut (#\e) (run-program "emacs" nil :wait nil :search t))
   (defshortcut (#\w) (run-program "xxxterm" nil :wait nil :search t))
   (defshortcut (:control #\l) (run-program "xlock" nil :wait nil :search t))
  -(defshortcut (#\n) (circulate-window-down *root*))
  +(defshortcut (#\n) (next *display*))
  +(defshortcut (#\p) (next *display* #'1-))
   
   ;;; Modifier keypress avoidance code
   (defvar *mods-code* (multiple-value-call #'append (modifier-mapping *display*)))
   
   (defun is-modifier (keycode)
     "Return t if keycode is a modifier"
  -  (find keycode *mods-code* :test 'eql))
  +  (find keycode *mods-code* :test #'eql))
   
   ;;; Main
   (defun main ()
  
positive.code:         last-button last-x last-y waiting-shortcut)
  
      ;; Grab prefix and mouse buttons on root
      (grab-key *root* (cdr prefix) :modifiers (car prefix))
      (grab-button *root* (cdr move) '(:button-press) :modifiers (car move))
      (grab-button *root* (cdr resize) '(:button-press) :modifiers (car resize))
  
      (setf (window-event-mask *root*) '(:substructure-notify))
  
  
negative.code:     `(let ((,sc (compile-shortcut ',key)))
         (pushnew (cons ,sc #'(lambda () ,@body)) *shortcuts* :test #'equal :key #'car))))
  
  (defun next (display &optional (way #'1+))
    (when *windows*
      (let* ((cw (input-focus display))
             (ncw (position-if #'(lambda (w) (window-equal w cw)) *windows*))
             (n (length *windows*))
             (next (mod (funcall way ncw) n)))
        (unless (= next ncw)
          (focus (nth next *windows*))))))
  
  (defun focus (window)
    (setf (window-priority window) :above)
    (set-input-focus *display* window :pointer-root))
  
  ;;; User settings
  (defparameter *prefix* '(:control #\t) "Prefix for shortcuts")
  (defparameter *move* '(:mod-1 1) "Mouse button to move a window")
  