Make js-jsx-regexps case-sensitive
The regexp in this list used a capitalized “React” because it actually should be capitalized like that. Otherwise, the following code would produce a false positive match: import Thing from './react/Thing' * lisp/progmodes/js.el (js-jsx-regexps): Update docstring. (js-jsx--detect-and-enable): Match case-sensitively when determining whether JSX should be enabled.
This commit is contained in:
parent
2f600e97e7
commit
ee89c1cdb5
1 changed files with 4 additions and 2 deletions
|
@ -4484,7 +4484,7 @@ their `mode-name' updates to show enabled syntax extensions."
|
|||
|
||||
(defvar js-jsx-regexps
|
||||
(list "\\_<\\(?:var\\|let\\|const\\|import\\)\\_>.*?React")
|
||||
"Regexps for detecting JSX in JavaScript buffers.
|
||||
"Case-sensitive regexps for detecting JSX in JavaScript buffers.
|
||||
When `js-jsx-detect-syntax' is non-nil and any of these regexps
|
||||
match text near the beginning of a JavaScript buffer,
|
||||
`js-jsx-syntax' (which see) will be made buffer-local and set to
|
||||
|
@ -4504,7 +4504,9 @@ is non-nil. Return t after enabling, nil otherwise."
|
|||
(catch 'match
|
||||
(mapc
|
||||
(lambda (regexp)
|
||||
(if (re-search-forward regexp 4000 t) (throw 'match t)))
|
||||
(when (let (case-fold-search)
|
||||
(re-search-forward regexp 4000 t))
|
||||
(throw 'match t)))
|
||||
js-jsx-regexps)
|
||||
nil))))
|
||||
(js-jsx-enable)
|
||||
|
|
Loading…
Add table
Reference in a new issue