summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Goaziou <mail@nicolasgoaziou.fr>2015-10-08 16:25:29 +0200
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2015-10-08 16:25:29 +0200
commit348890f79befad7dce0913ff06c8e8cc09c1d15a (patch)
tree29eac9befcc1cd9b0793abbc3393b455c9f5ff6d
parent44cb8b16565f3a8f8d7472c2a7a779de8afacc27 (diff)
downloadorg-mode-348890f79befad7dce0913ff06c8e8cc09c1d15a.tar.gz
org-element: Remove now useless function
* lisp/org-element.el (org-element-remove-indentation): Mark as an obsolete replacement for `org-remove-indentation'. (org-element-example-block-parser): (org-element-example-block-interpreter): (org-element-src-block-parser): * lisp/ox.el (org-export-unravel-code): Apply obsolescence.
-rw-r--r--etc/ORG-NEWS6
-rw-r--r--lisp/org-element.el38
-rw-r--r--lisp/ox.el2
3 files changed, 13 insertions, 33 deletions
diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS
index ba7761e..185c7d4 100644
--- a/etc/ORG-NEWS
+++ b/etc/ORG-NEWS
@@ -43,12 +43,18 @@ details.
** New functions
~org-show-children~ is a faster implementation of
~outline-show-children~.
+** Removed functions
+*** ~org-element-remove-indentation~ in an obsolete alias for ~org-remove-indentation~
** Removed options
*** Remove ~org-list-empty-line-terminates-plain-lists~
Two consecutive blank lines always terminate all levels of current
plain list.
*** ~fixltx2e~ is removed from ~org-latex-default-packages-alist~
fixltx2e is obsolete, see LaTeX News 22.
+** Miscellaneous
+*** Function ~org-remove-indentation~ changes.
+The new algorithm doesn't remove TAB characters not used for
+indentation.
* Version 8.3
** Incompatible changes
diff --git a/lisp/org-element.el b/lisp/org-element.el
index d37bf6f..aee0943 100644
--- a/lisp/org-element.el
+++ b/lisp/org-element.el
@@ -1898,7 +1898,7 @@ containing `:begin', `:end', `:number-lines', `:preserve-indent',
(post-affiliated (point))
(block-ind (progn (skip-chars-forward " \t") (current-column)))
(contents-begin (progn (forward-line) (point)))
- (value (org-element-remove-indentation
+ (value (org-remove-indentation
(org-unescape-code-in-string
(buffer-substring-no-properties
contents-begin contents-end))
@@ -1933,7 +1933,7 @@ containing `:begin', `:end', `:number-lines', `:preserve-indent',
(if (or org-src-preserve-indentation
(org-element-property :preserve-indent example-block))
value
- (org-element-remove-indentation value))))
+ (org-remove-indentation value))))
"#+END_EXAMPLE")))
@@ -2404,7 +2404,7 @@ Assume point is at the beginning of the block."
;; Indentation.
(block-ind (progn (skip-chars-forward " \t") (current-column)))
;; Retrieve code.
- (value (org-element-remove-indentation
+ (value (org-remove-indentation
(org-unescape-code-in-string
(buffer-substring-no-properties
(progn (forward-line) (point)) contents-end))
@@ -5954,35 +5954,9 @@ end of ELEM-A."
(move-overlay (car o) (- (nth 1 o) offset) (- (nth 2 o) offset))))
(goto-char (org-element-property :end elem-B)))))
-(defun org-element-remove-indentation (s &optional n)
- "Remove maximum common indentation in string S and return it.
-When optional argument N is a positive integer, remove exactly
-that much characters from indentation, if possible, or return
-S as-is otherwise. Unlike to `org-remove-indentation', this
-function doesn't call `untabify' on S."
- (catch 'exit
- (with-temp-buffer
- (insert s)
- (goto-char (point-min))
- ;; Find maximum common indentation, if not specified.
- (setq n (or n
- (let ((min-ind (point-max)))
- (save-excursion
- (while (re-search-forward "^[ \t]*\\S-" nil t)
- (let ((ind (1- (current-column))))
- (if (zerop ind) (throw 'exit s)
- (setq min-ind (min min-ind ind))))))
- min-ind)))
- (if (zerop n) s
- ;; Remove exactly N indentation, but give up if not possible.
- (while (not (eobp))
- (let ((ind (progn (skip-chars-forward " \t") (current-column))))
- (cond ((eolp) (delete-region (line-beginning-position) (point)))
- ((< ind n) (throw 'exit s))
- (t (org-indent-line-to (- ind n))))
- (forward-line)))
- (buffer-string)))))
-
+;; For backward-compatibility with Org < 8.4
+(define-obsolete-function-alias
+ 'org-element-remove-indentation 'org-remove-indentation "25.1")
(provide 'org-element)
diff --git a/lisp/ox.el b/lisp/ox.el
index 39eedee..d140f17 100644
--- a/lisp/ox.el
+++ b/lisp/ox.el
@@ -4353,7 +4353,7 @@ reference on that line (string)."
(if (or org-src-preserve-indentation
(org-element-property :preserve-indent element))
value
- (org-element-remove-indentation value)))))
+ (org-remove-indentation value)))))
;; Get format used for references.
(label-fmt (regexp-quote
(or (org-element-property :label-fmt element)