anchor.diff:  
   (define-class url-annotation (annotation)
     ((url nil))
  +  (:export-class-name-p t)
  +  (:export-accessor-names-p t)
  +  (:accessor-name-transformer (class*:make-name-transformer name)))
  +
  +(define-class snippet-annotation (url-annotation)
  +  ((snippet nil :documentation "The snippet of text being annotated."))
     (:export-class-name-p t)
     (:export-accessor-names-p t)
     (:accessor-name-transformer (class*:make-name-transformer name)))
  
positive.code:     annotations))
  
  (define-command annotate-current-url (&optional (buffer (current-buffer)))
    "Create/set the annotation of the URL of BUFFER."
    (let* ((data (first (prompt
                         :prompt "Annotation"
                         :sources (list (make-instance 'prompter:raw-source)))))
  
negative.code:                                     :url (url buffer)
                                      :data data)))
      (annotation-add annotation)))
  
  (define-command annotate-highlighted-text (&optional (buffer (current-buffer)))
    "Create a annotation for the highlighted text of BUFFER."
    (with-current-buffer buffer
      (print (url buffer))
      (let* ((snippet (%copy))
             (data (first (prompt
                           :prompt "Annotation"
                           :sources (list (make-instance 'prompter:raw-source)))))
             (annotation (make-instance 'snippet-annotation
                                        :snippet snippet
                                        :url (url buffer)
                                        :data data)))
        (annotation-add annotation))))
  
  (define-command show-annotations-for-current-buffer (&optional (source-buffer (current-buffer)))
    "Create a new buffer with the annotations of the current URL of BUFFER."
  