Function: org-table-field-info
org-table-field-info is an autoloaded, interactive and byte-compiled
function defined in org-table.el.gz.
Signature
(org-table-field-info ARG)
Documentation
Show info about the current field, and highlight any reference at point.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/org/org-table.el.gz
;;;###autoload
(defun org-table-field-info (_arg)
"Show info about the current field, and highlight any reference at point."
(interactive "P")
(unless (org-at-table-p) (user-error "Not at a table"))
(org-table-analyze)
(save-excursion
(let* ((pos (point))
(col (org-table-current-column))
(cname (car (rassoc (number-to-string col) org-table-column-names)))
(name (car (rassoc (list (count-lines org-table-current-begin-pos
(line-beginning-position))
col)
org-table-named-field-locations)))
(eql (org-table-expand-lhs-ranges
(mapcar
(lambda (e)
(cons (org-table-formula-handle-first/last-rc (car e))
(cdr e)))
(org-table-get-stored-formulas))))
(dline (org-table-current-dline))
(ref (format "@%d$%d" dline col))
(ref1 (org-table-convert-refs-to-an ref))
;; Prioritize field formulas over column formulas.
(fequation (or (assoc name eql) (assoc ref eql)))
(cequation (assoc (format "$%d" col) eql))
(eqn (or fequation cequation)))
(let ((p (and eqn (get-text-property 0 :orig-eqn (car eqn)))))
(when p (setq eqn p)))
(goto-char pos)
(ignore-errors (org-table-show-reference 'local))
(message "line @%d, col $%s%s, ref @%d$%d or %s%s%s"
dline col
(if cname (concat " or $" cname) "")
dline col ref1
(if name (concat " or $" name) "")
;; FIXME: formula info not correct if special table line
(if eqn
(concat ", formula: "
(org-table-formula-to-user
(concat
(if (or (string-prefix-p "$" (car eqn))
(string-prefix-p "@" (car eqn)))
""
"$")
(car eqn) "=" (cdr eqn))))
"")))))