anchor.diff:  
   (defvar *completion-overlay* nil)
   (defvar *completion-window* nil)
  +(defvar *completion-buffer* nil)
   (defvar *completion-restart-function* nil)
   
   (defun completion-buffer ()
  -  (get-buffer "*Completion*"))
  +  *completion-buffer*)
   
   (defun completion-buffer-point ()
     (let ((buffer (completion-buffer)))
  
positive.code:            (insert-string point (completion-item-label item))))))
  
  (defun create-completion-buffer (items back-attribute)
    (let ((buffer (get-buffer-create "*Completion*")))
      (erase-buffer buffer)
      (setf (variable-value 'truncate-lines :buffer buffer) nil)
      (let ((point (buffer-point buffer))
  
negative.code:   (delete-window *completion-window*)
    (let ((buffer (completion-buffer)))
      (when buffer
        (delete-buffer buffer)
        (setf *completion-buffer* nil)))
    (redraw-display t))
  
  (defun completion-again ()
  