Function: org-html--reference
org-html--reference is a byte-compiled function defined in
ox-html.el.gz.
Signature
(org-html--reference DATUM INFO &optional NAMED-ONLY)
Documentation
Return an appropriate reference for DATUM.
DATUM is an element or a target type object. INFO is the
current export state, as a plist.
When NAMED-ONLY is non-nil and DATUM has no NAME keyword, return nil. This doesn't apply to headlines, inline tasks, radio targets and targets.
Source Code
;; Defined in /usr/src/emacs/lisp/org/ox-html.el.gz
(defun org-html--reference (datum info &optional named-only)
"Return an appropriate reference for DATUM.
DATUM is an element or a `target' type object. INFO is the
current export state, as a plist.
When NAMED-ONLY is non-nil and DATUM has no NAME keyword, return
nil. This doesn't apply to headlines, inline tasks, radio
targets and targets."
(let* ((type (org-element-type datum))
(user-label
(org-element-property
(pcase type
((or `headline `inlinetask) :CUSTOM_ID)
((or `radio-target `target) :value)
(_ :name))
datum)))
(cond
((and user-label
(or (plist-get info :html-prefer-user-labels)
;; Used CUSTOM_ID property unconditionally.
(memq type '(headline inlinetask))))
user-label)
((and named-only
(not (memq type '(headline inlinetask radio-target target)))
(not user-label))
nil)
(t
(org-export-get-reference datum info)))))