anchor.diff:                           ,focus))
   
   (defun append-jump-function (sourcelist start end jump-function)
  -  (put-text-property start end 'sourcelist jump-function)
  +  (put-text-property start end
  +                     'sourcelist
  +                     (length (sourcelist-elements sourcelist)))
     (vector-push-extend jump-function (sourcelist-elements sourcelist)))
   
   (defun append-sourcelist (sourcelist write-function jump-function)
  
positive.code:                            point
                             jump-function)))))
  
  (defun jump-current-element ()
    (funcall (aref (sourcelist-elements *current-sourcelist*)
                   (sourcelist-index *current-sourcelist*))
             (let ((buffer-name (sourcelist-buffer-name *current-sourcelist*)))
               (lambda (buffer)
                 (with-point ((p (buffer-point buffer)))
  
negative.code: (define-key *sourcelist-mode-keymap* "q" 'quit-window)
  
  (define-command sourcelist-jump () ()
    (let ((index (text-property-at (current-point) 'sourcelist)))
      (when index
        (jump-current-element
         (setf (sourcelist-index *current-sourcelist*) index)))))
  