anchor.diff:  It is run before `initialize-modes' so that the default mode list can still be
   altered from the hooks.
   The handlers take the buffer as argument.")
  +   (buffer-before-make-hook :accessor buffer-make-hook :initform '() :type list
  +                     :documentation "Hook run before `rpc-buffer-make'.
  +This hook is mostly useful to set the `cookies-path'.
  +The buffer web view is not allocated, so it's not possible to run any
  +parenscript from this hook.  See `buffer-make-hook' for a hook.
  +The handlers take the buffer as argument.")
      (minibuffer-make-hook :accessor minibuffer-make-hook :initform '() :type list
                            :documentation "Hook run after the `minibuffer' class
   is instantiated and before initializing the minibuffer modes.
  
positive.code:                      (apply #'make-instance 'buffer :id (get-unique-buffer-identifier)
                              (append (when title `(:title ,title))
                                      (when default-modes `(:default-modes ,default-modes)))))))
      (ensure-parent-exists (cookies-path buffer))
      (setf (gethash (id buffer) (buffers *interface*)) buffer)
      (incf (total-buffer-count *interface*))
      (%rpc-send "buffer_make" (id buffer)
  
negative.code:                    :documentation "The maximum zoom ratio relative to the default.")
     (zoom-ratio-default :accessor zoom-ratio-default :initform 1.0
                         :documentation "The default zoom ratio.")
     (cookies-path :accessor cookies-path
                   :initform (xdg-data-home "cookies.txt")
                   :documentation "The path where cookies are stored.  Not all
  platform ports might support this.")
     (box-style :accessor box-style
  