anchor.diff:               (eq (first (active-prompt-buffers (window buffer)))
                    buffer))
           (prompt-render-prompt buffer)
  -        (print-status))
  -    (unless (prompt-buffer-p buffer) (echo "~@(~a~) mode disabled." mode)))
  -  (log:debug "~@(~a~) mode disabled." mode))
  +        (print-status))))
   
   (export-always 'define-mode)
   (defmacro define-mode (name direct-superclasses &body body)
  
positive.code:       (if activate
            ;; TODO: Shall we pass args to `make-instance' or `enable'?
            ;; Have 2 args parameters?
            (enable (or existing-instance
                        (apply #'make-instance mode-sym
                               :buffer buffer
                               args)))
            (when existing-instance
              (disable existing-instance))))))
  
  (define-command toggle-modes (&key (buffer (current-buffer)))
    "Enable marked modes, disable unmarked modes for BUFFER."
  
negative.code:              (eq (first (active-prompt-buffers (window buffer)))
                   buffer))
          (prompt-render-prompt buffer)
          (print-status))))
  
  (export-always 'disable)
  (defgeneric disable (mode &key &allow-other-keys)
  