Function: ibtypes::annot-bib

ibtypes::annot-bib is a byte-compiled function defined in hibtypes.el.

Signature

(ibtypes::annot-bib)

Documentation

Display annotated bibliography entries referenced internally.

References must be delimited by square brackets, must begin with a word constituent character, not contain @ or # characters, must not be in buffers whose names begin with a space or asterisk character, must not be in a programming mode, Markdown or Org buffer and must have an attached file.

Source Code

;; Defined in ~/.emacs.d/elpa/hyperbole-20260414.325/hibtypes.el
;;; ========================================================================
;;; Handles internal references within an annotated bibliography, delimiters=[]
;;; ========================================================================

(defib annot-bib ()
  "Display annotated bibliography entries referenced internally.
References must be delimited by square brackets, must begin with a word
constituent character, not contain @ or # characters, must not be
in buffers whose names begin with a space or asterisk character, must
not be in a programming mode, Markdown or Org buffer and must have an
attached file."
  (and (not (bolp))
       (hypb:buffer-file-name)
       (let ((chr (aref (buffer-name) 0)))
         (not (or (eq chr ?\ ) (eq chr ?*))))
       (not (apply #'derived-mode-p
                   '(c++-mode c++-ts-mode c-mode c-ts-mode java-mode java-ts-mode
                              markdown-mode objc-mode org-mode prog-mode)))
       (unless (ibut:label-p t "[[" "]]" t) ;; Org link
	 (let ((ref (hattr:get 'hbut:current 'lbl-key))
	       (lbl-start (hattr:get 'hbut:current 'lbl-start))
	       lbl-start-end)
           (and ref
		lbl-start
		(eq ?w (char-syntax (aref ref 0)))
		(not (string-match "[#@]" ref))
		(save-excursion
		  (goto-char lbl-start)
		  (setq lbl-start-end (ibut:label-p t "[" "]" t)))
		(apply #'ibut:label-set lbl-start-end)
		(hact 'annot-bib ref))))))