anchor.diff:  	       (or (mopu:reader-method-p m)
   		   (mopu:writer-method-p m)))
   	     (mopu:generic-function-methods (symbol-function symbol)))))
  +
  +(defextension (links-list :arguments ((kind-or-kinds :required)
  +				      index-kind))
  +  (setf kind-or-kinds (ensure-list kind-or-kinds))
  +  (unless index-kind
  +    (setf index-kind (first kind-or-kinds)))
  +  (when (eq phase :render)
  +    (bind ((items (%items-to-index kind-or-kinds)))
  +      (cond ((empty-p items)
  +	     (markdown-warning 
  +	      (if (length-1-list-p kind-or-kinds)
  +		  "There are no items of kind ~{~a~} documented."
  +		  "There are no itmes of kinds~{ ~a~^ or~} documented")
  +	      kind-or-kinds))
  +	    (t
  +	     (format *output-stream* 
  +		     "~&(" index-kind)
  +	     (loop for (item . real-kind) in items do
  +		  (output-links-list-item item real-kind item)))))))
  +
  +(defun output-links-list-item (item kind text)
  +  (let ((name (html-safe-name (format nil "~a.~a" item kind))))
  +    (format *output-stream*
  +	    "~&(#~a ~a)" 
  +	    name text)))
  
positive.code: 	     (format *output-stream* "<div class=\"doc name-and-args\">")
  	     (format *output-stream* "<span class=\"hidden\">X</span>")
  	     (format *output-stream*
  		     "~&<span class=\"documentation-name\">~a</span>" name)
  	     (when (symbol-may-have-arguments-p symbol)
  	       (let ((arguments (mopu:function-arglist symbol)))
  		 (when arguments
  
negative.code: 					    (cons symbol kind)))))))
  	      result))
  	   (t
  	    (loop for kind in kinds nconc
  		 (collect-keys (item-at-1 docs kind) 
  			       :transform (lambda (symbol)
  					    (cons symbol kind))))))
       #'string-lessp
       :key #'first)))
  
  