anchor.diff:  (define-command fm-delete () ()
     (block exit
       (when (null *vf-map*)
  -      ;; ERROR: variable `frame-multiplexer- is broken?
  +      (editor-error "fm-mode is not enabled")
         (return-from exit))
       (let* ((vf (gethash (implementation) *vf-map*))
              (num (count-if-not #'null (vf-frames vf)))
              (id (position (vf-current vf) (vf-frames vf))))
         (when (= num 1)
  -        ;; ERROR: there is just one frame in virtual frame
  -        (return-from exit))
  -      (when (null id)
  -        ;; ERROR: something wrong...
  +        (editor-error "cannot delete this virtual frame")
  +        (return-from exit))
  +      (when (null id)
  +        (editor-error "something wrong... fm-mode broken?")
           (return-from exit))
         (setf (aref (vf-frames vf) id) nil)
         (let ((%frame (search-previous-frame vf id)))
  
positive.code: (define-command fm-prev () ()
    (block exit
      (when (null *vf-map*)
        ;; ERROR: variable `frame-multiplexer- is broken?
        (return-from exit))
      (let* ((vf (gethash (implementation) *vf-map*))
             (id (position (vf-current vf) (vf-frames vf))))
        (when (null id)
          ;; ERROR: something wrong...
          (return-from exit))
        (let ((%frame (search-previous-frame vf id)))
          (when %frame
  
negative.code: (define-command fm-create () ()
    (block exit
      (when (null *vf-map*)
        (editor-error "fm-mode is not enabled")
        (return-from exit))
      (let* ((vf (gethash (implementation) *vf-map*))
             (id (position-if #'null (vf-frames vf))))
        (when (null id)
          (editor-error "it's full of frames in virtual frame")
          (return-from exit))
        (let* ((frame (lem::make-frame))
               (%frame (%make-frame id frame))
  