sub/superscript character has to follow a non-blank character
authorNicolas Goaziou <n.goaziou@gmail.com>
Mon, 25 Feb 2013 20:30:16 +0000 (25 21:30 +0100)
committerNicolas Goaziou <n.goaziou@gmail.com>
Mon, 25 Feb 2013 20:53:14 +0000 (25 21:53 +0100)
* lisp/org.el (org-match-substring-regexp,
  org-match-substring-with-braces-regexp): Update regexp.
  A sub/superscript cannot start anymore at the beginning of the line
  or after a space.

lisp/org.el
testing/lisp/test-org-element.el

index cdcb7df..f61acc7 100644 (file)
@@ -5413,7 +5413,7 @@ stacked delimiters is N.  Escaping delimiters is not possible."
 
 (defvar org-match-substring-regexp
   (concat
-   "\\([^\\]\\|^\\)\\([_^]\\)\\("
+   "\\(\\S-\\)\\([_^]\\)\\("
    "\\(" (org-create-multibrace-regexp "{" "}" org-match-sexp-depth) "\\)"
    "\\|"
    "\\(" (org-create-multibrace-regexp "(" ")" org-match-sexp-depth) "\\)"
@@ -5423,7 +5423,7 @@ stacked delimiters is N.  Escaping delimiters is not possible."
 
 (defvar org-match-substring-with-braces-regexp
   (concat
-   "\\([^\\]\\|^\\)\\([_^]\\)\\("
+   "\\(\\S-\\)\\([_^]\\)\\("
    "\\(" (org-create-multibrace-regexp "{" "}" org-match-sexp-depth) "\\)"
    "\\)")
   "The regular expression matching a sub- or superscript, forcing braces.")
index c979715..5a08b9e 100644 (file)
@@ -1684,12 +1684,6 @@ Outside list"
   (should
    (org-test-with-temp-text "a_{b}"
      (org-element-map (org-element-parse-buffer) 'subscript 'identity)))
-  ;; At the beginning of an item.
-  (should
-   (eq 'subscript
-       (org-test-with-temp-text "- _b"
-        (progn (search-forward "_")
-               (org-element-type (org-element-context))))))
   ;; Multiple subscripts in a paragraph.
   (should
    (= 2
@@ -1710,12 +1704,6 @@ Outside list"
   (should
    (org-test-with-temp-text "a^{b}"
      (org-element-map (org-element-parse-buffer) 'superscript 'identity)))
-  ;; At the beginning of an item.
-  (should
-   (eq 'superscript
-       (org-test-with-temp-text "- ^b"
-        (progn (search-forward "^")
-               (org-element-type (org-element-context))))))
   ;; Multiple superscript in a paragraph.
   (should
    (= 2