]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/progmodes/js.el (js--regexp-literal): Accept regexps at the beginning
authorStefan Monnier <monnier@iro.umontreal.ca>
Fri, 5 Aug 2011 19:53:46 +0000 (15:53 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Fri, 5 Aug 2011 19:53:46 +0000 (15:53 -0400)
of statements and in a few more cases.

Fixes: debbugs:9183
lisp/ChangeLog
lisp/progmodes/js.el

index 16ba0d34f0251fab6c12e02efea155c40a1db2c0..7c1fa3a656b7a345ab9762b3fffa82234e5b8ee5 100644 (file)
@@ -1,5 +1,8 @@
 2011-08-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 
+       * progmodes/js.el (js--regexp-literal): Accept regexps at the beginning
+       of statements and in a few more cases (bug#9183).
+
        * emacs-lisp/cl-macs.el (cl--make-usage-var, cl--make-usage-args):
        New functions.
        (cl-transform-lambda): Use them (bug#9239).
index 1bdcb4cfa891a18267d82bee3760bbc4e30da820..4abbe3b895fd29f54dace2442b6e93fafeb7db88 100644 (file)
@@ -1658,15 +1658,19 @@ This performs fontification according to `js--class-styles'."
 ;; below.
 (eval-and-compile
   (defconst js--regexp-literal
-    "[=(,:]\\(?:\\s-\\|\n\\)*\\(/\\)\\(?:\\\\.\\|[^/*\\]\\)\\(?:\\\\.\\|[^/\\]\\)*\\(/\\)"
+    (concat
+     ;; We want to match regular expressions only at the beginning of
+     ;; expressions.
+     ;; FIXME: Should we also allow /regexp/ after infix operators such as +,
+     ;; /, -, *, >, ...?
+     "\\(?:\\`\\|[=([{,:;]\\)\\(?:\\s-\\|\n\\)*"
+     "\\(/\\)\\(?:\\\\.\\|[^/*\\]\\)\\(?:\\\\.\\|[^/\\]\\)*\\(/\\)")
   "Regexp matching a JavaScript regular expression literal.
 Match groups 1 and 2 are the characters forming the beginning and
 end of the literal."))
 
 (defconst js-syntax-propertize-function
   (syntax-propertize-rules
-   ;; We want to match regular expressions only at the beginning of
-   ;; expressions.
    (js--regexp-literal (1 "\"") (2 "\""))))
 
 ;;; Indentation