anchor.diff:      added functions.")
      (functions
       (make-hash-table)
  -    :documentation "A list of functions the user has added to their macro.")))
  +    :documentation "A hash table of functions the user has added to their
  +macro. The key represents a unique identifier for a command, and the value
  +represents a command.")))
   
   (defmethod get-unique-function-identifier ((mode macro-edit-mode))
     (incf (function-sequence mode)))
  
positive.code:   "Save the macro to the auto-config.lisp file."
    (if (macro-form-valid-p macro-editor)
        (nyxt::append-configuration (generate-macro-form macro-editor))
        (echo "Your macro form is invalid; check if you have a title and functions.")))
  
  (define-command evaluate-macro (&optional (macro-editor (current-mode 'macro-edit-mode)))
    "Evaluate the macro for testing."
    (if (macro-form-valid-p macro-editor)
        (progn (eval (generate-macro-form macro-editor)) (echo "Macro evaluated."))
        (echo "Your macro form is invalid; check if you have a title and functions.")))
  
negative.code:   (render-functions macro-editor))
  
  (defmethod name ((macro-editor macro-edit-mode))
    (let ((name (ffi-buffer-evaluate-javascript
                 (buffer macro-editor)
                 (ps:ps
                  (ps:chain document (get-element-by-id "macro-name") value)))))
      (cond ((not (str:emptyp name)) (setf (slot-value macro-editor 'name) name))
            ((slot-value macro-editor 'name) (slot-value macro-editor 'name))
            (t nil))))
  