summaryrefslogtreecommitdiff
path: root/lisp/font-lock.el
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2021-05-11 13:19:50 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2021-05-11 13:19:50 -0400
commitfa9f61e0f60c3f8fcc74e1b318e4113a1248b918 (patch)
tree956784eee7e9e52eef13605af6d0bcc464d194fb /lisp/font-lock.el
parent63df3372be19dd8686631260714112a4b0c1099f (diff)
downloademacs-fa9f61e0f60c3f8fcc74e1b318e4113a1248b918.tar.gz
emacs-fa9f61e0f60c3f8fcc74e1b318e4113a1248b918.tar.bz2
emacs-fa9f61e0f60c3f8fcc74e1b318e4113a1248b918.zip
* lisp/font-lock.el: Fix `font-lock-comment-end-skip` fallback (bug#34088)
(font-lock-fontify-syntactically-region): Use `comment-end-skip` as fallback for `font-lock-comment-end-skip`, as is done for `font-lock-comment-start-skip` (and as the name suggests). * lisp/progmodes/opascal.el (opascal-mode): Revert last change, made unnecessary.
Diffstat (limited to 'lisp/font-lock.el')
-rw-r--r--lisp/font-lock.el13
1 files changed, 6 insertions, 7 deletions
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index 82915d8c8b0..4dc42d9cf6a 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -1604,18 +1604,15 @@ START should be at the beginning of a line."
"If non-nil, Font Lock mode uses this instead of `comment-start-skip'.")
(defvar font-lock-comment-end-skip nil
- "If non-nil, Font Lock mode uses this instead of `comment-end'.")
+ "If non-nil, Font Lock mode uses this instead of `comment-end-skip'.")
(defun font-lock-fontify-syntactically-region (start end &optional loudly)
"Put proper face on each string and comment between START and END.
START should be at the beginning of a line."
(syntax-propertize end) ; Apply any needed syntax-table properties.
(with-syntax-table (or syntax-ppss-table (syntax-table))
- (let ((comment-end-regexp
- (or font-lock-comment-end-skip
- (regexp-quote
- (replace-regexp-in-string "^ *" "" comment-end))))
- ;; Find the `start' state.
+ (when (and comment-start (not comment-end-skip)) (comment-normalize-vars))
+ (let (;; Find the `start' state.
(state (if (or syntax-ppss-table
(not font-lock--syntax-table-affects-ppss))
(syntax-ppss start)
@@ -1648,7 +1645,9 @@ START should be at the beginning of a line."
comment-start-skip))
(put-text-property beg (match-end 0) 'face
font-lock-comment-delimiter-face)))
- (if (looking-back comment-end-regexp (point-at-bol) t)
+ (if (looking-back (or font-lock-comment-end-skip
+ comment-end-skip)
+ (point-at-bol) t)
(put-text-property (match-beginning 0) (point) 'face
font-lock-comment-delimiter-face))))
(< (point) end))