forked from mirrors/org-mode
org-table-justify-field-maybe: Do not allow newlines inside cells
* lisp/org-table.el (org-table-justify-field-maybe): Remove newlines from cell values, when present. Newlines will alter the table cell structure. Reported-by: Julien Palard <julien@palard.fr> Link: https://orgmode.org/list/638faf1b.050a0220.2bd96.904b@mx.google.com
This commit is contained in:
parent
3176ed9052
commit
97a780f0be
|
@ -4448,6 +4448,13 @@ FIELD is a string. WIDTH is a number. ALIGN is either \"c\",
|
||||||
(defun org-table-justify-field-maybe (&optional new)
|
(defun org-table-justify-field-maybe (&optional new)
|
||||||
"Justify the current field, text to left, number to right.
|
"Justify the current field, text to left, number to right.
|
||||||
Optional argument NEW may specify text to replace the current field content."
|
Optional argument NEW may specify text to replace the current field content."
|
||||||
|
;; FIXME: Prevent newlines inside field. They are currently not
|
||||||
|
;; supported.
|
||||||
|
(when (and (stringp new) (string-match-p "\n" new))
|
||||||
|
(message "Removing newlines from formula result: %S" new)
|
||||||
|
(setq new (replace-regexp-in-string
|
||||||
|
"\n" " "
|
||||||
|
(replace-regexp-in-string "\\(^\n+\\)\\|\\(\n+$\\)" "" new))))
|
||||||
(cond
|
(cond
|
||||||
((and (not new) org-table-may-need-update)) ; Realignment will happen anyway
|
((and (not new) org-table-may-need-update)) ; Realignment will happen anyway
|
||||||
((org-at-table-hline-p))
|
((org-at-table-hline-p))
|
||||||
|
|
Loading…
Reference in a new issue