anchor.diff:             (if (member (package-name (symbol-package symbol)) '("nyxt" "keyword")
                          :test #'string-equal)
                  (str:downcase (symbol-name symbol))
  -               (str:downcase
  -                (format nil "~a/~a"
  -                        (package-name (symbol-package symbol))
  -                        (symbol-name symbol))))))
  +               (format nil "~(~s~)" symbol))))
       (if (gethash function-name *nyxt-url-commands*)
           (let ((params (quri:url-encode-params
                          (mapcar (lambda (pair)
  
positive.code: `parse-nyxt-url' can be repeatedly called on the same nyxt: URL, with the
  guarantee of the same result."
    (let* ((url (url url))
           (path (str:split "/" (quri:uri-path url)))
           (package (if (sera:single path)
                        "nyxt"
                        (first path)))
           (symbol (or (second path) (first path)))
           (params (quri:uri-query-params url))
           (function (intern (str:upcase symbol) (intern (str:upcase package) :keyword))))
      (if (gethash function *nyxt-url-commands*)
          (values function
                  (alex:mappend (lambda (pair)
  
negative.code: 
  Example:
  \(nyxt-url 'nyxt:describe-command :value 'nyxt:describe-value)
  => \"nyxt:describe-command?value=NYXT%3ADESCRIBE-VALUE\"
  
  \(parse-nyxt-url (nyxt-url 'nyxt:describe-value :value ''nyxt:*browser*))
  => NYXT:DESCRIBE-VALUE
  