anchor.diff:            "Error: " (cl-gopher:display-string line))))
   
   (defmethod line->html ((line cl-gopher:info-message))
  -  (spinneret:with-html-string
  -    (if (or (str:emptyp (cl-gopher:display-string line))
  -            (every #'sera:whitespacep (cl-gopher:display-string line)))
  -        (:br)
  -        (:pre (cl-gopher:display-string line)))))
  +  (let ((line (cl-gopher:display-string line)))
  +    (spinneret:with-html-string
  +      (if (or (str:emptyp line)
  +              (every #'sera:whitespacep line))
  +          (:br)
  +          (:pre line)))))
   
   (defmethod line->html ((line cl-gopher:submenu))
     (spinneret:with-html-string
  
positive.code:         (spinneret:*html-style* :tree))
      (values (spinneret:with-html-string
                (:style (style (current-buffer)))
                (:style (when (find-submode 'small-web-mode)
                          (style (find-submode 'small-web-mode))))
                (loop for line in (cl-gopher:lines contents)
                      collect (:raw (line->html line))))
              "text/html;charset=utf8")))
  
negative.code:         (:b "[SEARCH] ") (cl-gopher:display-string line))))
  
  (defmethod line->html ((line cl-gopher:html-file))
    (let ((selector (cl-gopher:selector line)))
      (spinneret:with-html-string
        (:a :class "button"
            :href (if (str:starts-with-p "URL:" selector)
                      (sera:slice selector 4)
                      selector)
            (cl-gopher:display-string line))
        (:br))))
  
  (defmethod line->html ((line cl-gopher:text-file))
    (spinneret:with-html-string
      (:a :class "button"
          :href (cl-gopher:uri-for-gopher-line line)
          (cl-gopher:display-string line))
      (:br)))
  
  (defun file-link->html (line)
  