Function: org-element-footnote-reference-parser

org-element-footnote-reference-parser is a byte-compiled function defined in org-element.el.gz.

Signature

(org-element-footnote-reference-parser)

Documentation

Parse footnote reference at point, if any.

When at a footnote reference, return a list whose car is footnote-reference and cdr a plist with :label, :type,
:begin, :end, :contents-begin, :contents-end and
:post-blank as keywords. Otherwise, return nil.

Source Code

;; Defined in /usr/src/emacs/lisp/org/org-element.el.gz
;;;; Footnote Reference

(defun org-element-footnote-reference-parser ()
  "Parse footnote reference at point, if any.

When at a footnote reference, return a list whose car is
`footnote-reference' and cdr a plist with `:label', `:type',
`:begin', `:end', `:contents-begin', `:contents-end' and
`:post-blank' as keywords.  Otherwise, return nil."
  (when (looking-at org-footnote-re)
    (let ((closing (with-syntax-table org-element--pair-square-table
		     (ignore-errors (scan-lists (point) 1 0)))))
      (when closing
	(save-excursion
	  (let* ((begin (point))
		 (label (match-string-no-properties 1))
		 (inner-begin (match-end 0))
		 (inner-end (1- closing))
		 (type (if (match-end 2) 'inline 'standard))
		 (post-blank (progn (goto-char closing)
				    (skip-chars-forward " \t")))
		 (end (point)))
	    (list 'footnote-reference
		  (list :label label
			:type type
			:begin begin
			:end end
			:contents-begin (and (eq type 'inline) inner-begin)
			:contents-end (and (eq type 'inline) inner-end)
			:post-blank post-blank))))))))