anchor.diff:                                                   (when (equal-url (url b) url)
                                                      (setf entry b)))
                                                  bookmarks))
  -             (tags (if (stringp tags) (str:split " " tags :omit-nulls t) tags)))
  +             (tags (mapcar (lambda (tag)
  +                             (if (stringp tag) tag (tag-name tag)))
  +                           ;; TODO: We should not need ensure-list.  Make sure
  +                           ;; prompter does not return "" on empty input.
  +                           (uiop:ensure-list tags))))
           (unless entry
             (setf entry (make-instance 'bookmark-entry
                                        :url url)))
           (unless (str:emptyp title)
             (setf (title entry) title))
  +        (delete "" tags :test #'string=)
           (setf tags (delete-duplicates tags :test #'string=))
           (setf (tags entry) (sort tags #'string<))
           (when date
  
positive.code:                                        :test #'string-equal)))
                        #'string-lessp
                        :key #'tag-name)))
        (when with-empty-tag
          (push "" tags))
        tags
        ;; (lambda (minibuffer)
        ;;   (fuzzy-match (text-buffer::word-at-cursor (input-cursor minibuffer)) tags))
        )))
  
  (define-class tag-source (prompter:source)
    ((prompter:name "Tags")
     (extra-tags '())
     (prompter:multi-selection-p t)
     (prompter:constructor (lambda (source)
                             (tag-suggestions :extra-tags (extra-tags source)))))
  
negative.code:         (let* ((body (with-current-buffer buffer
                         (ffi-buffer-get-document buffer)))
                 (tags (prompt
                        :prompt "Tag(s)"
                        ;; :default-modes '(set-tag-mode minibuffer-mode) ; TODO: Replace completion.
                        :input (url-bookmark-tags (url buffer))
                        :sources (list
                                  (make-instance 'prompter:word-source
                                                 :name "New tags"
                                                 :multi-selection-p t)
                                  (make-instance 'tag-source
                                                 :extra-tags (make-tags (extract-keywords body 5)))))))
            (bookmark-add (url buffer)
                          :title (title buffer)
                          :tags tags)
  