anchor.diff:                        (minibuf-point-charpos)
                         (1- (minibuf-point-linum))))
   
  -(defun minibuf-read-line-loop (prompt comp-f existing-p)
  +(defun minibuf-read-line-loop (comp-f existing-p)
     (let ((*minibuf-read-line-existing-p* existing-p)
           (*minibuf-read-line-comp-f* comp-f))
       (catch 'minibuf-read-line-end
  
positive.code: (defvar *minibuf-window*)
  (defvar *minibuffer-calls-window*)
  (defvar *minibuffer-start-point* (make-min-point))
  
  (defun minibuffer-window () *minibuf-window*)
  (defun minibuffer-window-p (window) (eq window (minibuffer-window)))
  
negative.code:                     (window-point (minibuffer-window)))
                     (*minibuf-read-line-depth*
                      (1+ *minibuf-read-line-depth*)))
                 (let ((*inhibit-read-only* t))
                   (buffer-erase))
                 (minibuffer-mode)
                 (let ((start-point (current-point)))
                   (insert-string prompt)
                   (put-attribute start-point (current-point) *minibuffer-prompt-attribute*)
                   (put-property start-point (current-point) 'lem::read-only t))
                 (let ((*minibuffer-start-point* (current-point)))
                   (when initial
                   (insert-string initial))
                   (unwind-protect (call-with-save-windows
                                    (minibuffer-calls-window)
                                    (lambda ()
                                      (minibuf-read-line-loop comp-f existing-p)))
                     (with-current-window (minibuffer-window)
                       (let ((*inhibit-read-only* t))
                         (buffer-erase))
                       (insert-string minibuf-buffer-prev-string)
                       (point-set minibuf-buffer-prev-point))))))))
        (editor-abort (c)
  