Переглянути джерело

Revert "Alias `org-babel-trim' and `org-babel-chomp' to `org-trim' and `org-trim-trailing'."

This reverts commit 7925d42d43c35093c2a7b943fc44d36043f9786d.
Bastien Guerry 11 роки тому
батько
коміт
9e4113994c
3 змінених файлів з 26 додано та 14 видалено
  1. 19 8
      lisp/ob-core.el
  2. 2 1
      lisp/org-bibtex.el
  3. 5 5
      lisp/org.el

+ 19 - 8
lisp/ob-core.el

@@ -99,9 +99,6 @@
 (declare-function org-element-context "org-element" (&optional ELEMENT))
 (declare-function org-every "org" (pred seq))
 
-(defalias 'org-babel-trim 'org-trim)
-(defalias 'org-babel-chomp 'org-trim-trailing)
-
 (defgroup org-babel nil
   "Code block evaluation and management in `org-mode' documents."
   :tag "Babel"
@@ -2305,11 +2302,7 @@ file's directory then expand relative links."
 
 (define-obsolete-function-alias
   'org-babel-examplize-region
-  'org-babel-examplify-region "25.1")
-
-(defsubst org-trim-trailing (s)
-  "Strip trailing spaces and carriage returns from string S."
-  (replace-regexp-in-string "[ \f\t\n\r\v]+\\'" "" s))
+  'org-babel-examplify-region "24.5")
 
 (defun org-babel-examplify-region (beg end &optional results-switches)
   "Comment out region using the inline '==' or ': ' org example quote."
@@ -2747,6 +2740,24 @@ If the table is trivial, then return it as a scalar."
                            (match-string 1 cell))
                       cell) t))
 
+(defun org-babel-chomp (string &optional regexp)
+  "Strip trailing spaces and carriage returns from STRING.
+Default regexp used is \"[ \f\t\n\r\v]\" but can be
+overwritten by specifying a regexp as a second argument."
+  (let ((regexp (or regexp "[ \f\t\n\r\v]")))
+    (while (and (> (length string) 0)
+                (string-match regexp (substring string -1)))
+      (setq string (substring string 0 -1)))
+    string))
+
+(defun org-babel-trim (string &optional regexp)
+  "Strip leading and trailing spaces and carriage returns from STRING.
+Like `org-babel-chomp' only it runs on both the front and back
+of the string."
+  (org-babel-chomp (org-reverse-string
+                    (org-babel-chomp (org-reverse-string string) regexp))
+                   regexp))
+
 (defun org-babel-tramp-handle-call-process-region
   (start end program &optional delete buffer display &rest args)
   "Use Tramp to handle `call-process-region'.

+ 2 - 1
lisp/org-bibtex.el

@@ -120,6 +120,7 @@
 (declare-function bibtex-generate-autokey "bibtex" ())
 (declare-function bibtex-parse-entry "bibtex" (&optional content))
 (declare-function bibtex-url "bibtex" (&optional pos no-browse))
+(declare-function org-babel-trim "ob" (string &optional regexp))
 
 
 ;;; Bibtex data
@@ -311,7 +312,7 @@ and `org-exclude-tags-from-inheritence'."
                (org-entry-get (point) (upcase property))
                (org-entry-get (point) (concat org-bibtex-prefix
                                               (upcase property)))))))
-    (when it (org-trim it))))
+    (when it (org-babel-trim it))))
 
 (defun org-bibtex-put (property value)
   (let ((prop (upcase (if (keywordp property)

+ 5 - 5
lisp/org.el

@@ -21578,11 +21578,11 @@ N may optionally be the number of spaces to remove."
     (or (buffer-base-buffer buffer)
 	buffer)))
 
-(defsubst org-trim (s)
-  "Remove whitespace at the beginning and the end of string S."
-  (replace-regexp-in-string
-   "\\`[ \f\t\n\r\v]+" ""
-   (replace-regexp-in-string "[ \f\t\n\r\v]+\\'" "" s)))
+(defun org-trim (s)
+  "Remove whitespace at beginning and end of string."
+  (if (string-match "\\`[ \t\n\r]+" s) (setq s (replace-match "" t t s)))
+  (if (string-match "[ \t\n\r]+\\'" s) (setq s (replace-match "" t t s)))
+  s)
 
 (defun org-wrap (string &optional width lines)
   "Wrap string to either a number of lines, or a width in characters.