aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorStefan Monnier <[email protected]>2007-02-18 20:36:06 +0000
committerStefan Monnier <[email protected]>2007-02-18 20:36:06 +0000
commit700b8e66472752e3709bf3cae08cc82be70432a7 (patch)
tree457da6fa062a8ecbb61ee6f2c7cc04979a719f4f /lisp
parentdfee9538a14db844e318393dd87985941526841f (diff)
Revert the accidental commit of unrelated patches in the previous commit.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/font-lock.el38
1 files changed, 11 insertions, 27 deletions
diff --git a/lisp/font-lock.el b/lisp/font-lock.el
index 1e27daa89e..ecd4dd56d9 100644
--- a/lisp/font-lock.el
+++ b/lisp/font-lock.el
@@ -350,7 +350,7 @@ Each element in a user-level keywords list should have one of these forms:
(MATCHER . SUBEXP)
(MATCHER . FACENAME)
(MATCHER . HIGHLIGHT)
- (MATCHER . HIGHLIGHTS)
+ (MATCHER HIGHLIGHT ...)
(eval . FORM)
where MATCHER can be either the regexp to search for, or the function name to
@@ -1040,13 +1040,6 @@ The region it returns may start or end in the middle of a line.")
Useful for things like RMAIL and Info where the whole buffer is not
a very meaningful entity to highlight.")
-(defvar font-lock-syntax-props-depend-on-themselves nil
- "If non-nil, syntax-table changes may influence syntactic keywords.
-If the syntax-table properties set by syntactic-keywords themselves depend
-on syntax-table properties set on the text before it by syntactic-keywords,
-this variable should be set to non-nil, so that whenever syntaxtic-keywords
-is applied, the subsequent text is marked for syntactic re-fontification.")
-
(defvar font-lock-beg) (defvar font-lock-end)
(defvar font-lock-extend-region-functions
@@ -1131,25 +1124,11 @@ Put first the functions more likely to cause a change and cheaper to compute.")
(setq beg font-lock-beg end font-lock-end))
;; Now do the fontification.
(font-lock-unfontify-region beg end)
- (let ((sbeg beg))
- (cond
- ((< font-lock-syntactically-fontified sbeg)
- ;; Ensure the syntax-table prop is properly set on the text
- ;; before beg.
- (setq sbeg (max font-lock-syntactically-fontified (point-min)))
- (setq font-lock-syntactically-fontified end))
- ((and font-lock-syntax-props-depend-on-themselves
- (> font-lock-syntactically-fontified end))
- ;; If the syntax-table properties set by
- ;; font-lock-syntactic-keywords themselves depend on
- ;; syntax-table props set in the text above it, then we'll
- ;; need to update all the syntax-table props below end.
- (setq font-lock-syntactically-fontified end)))
- (when font-lock-syntactic-keywords
- (font-lock-fontify-syntactic-keywords-region sbeg end)))
- (unless font-lock-keywords-only
- (font-lock-fontify-syntactically-region beg end loudly))
- (font-lock-fontify-keywords-region beg end loudly))
+ (when font-lock-syntactic-keywords
+ (font-lock-fontify-syntactic-keywords-region beg end))
+ (unless font-lock-keywords-only
+ (font-lock-fontify-syntactically-region beg end loudly))
+ (font-lock-fontify-keywords-region beg end loudly))
;; Clean up.
(set-syntax-table old-syntax-table))))
@@ -1439,6 +1418,11 @@ LIMIT can be modified by the value of its PRE-MATCH-FORM."
(defun font-lock-fontify-syntactic-keywords-region (start end)
"Fontify according to `font-lock-syntactic-keywords' between START and END.
START should be at the beginning of a line."
+ ;; Ensure the beginning of the file is properly syntactic-fontified.
+ (when (and font-lock-syntactically-fontified
+ (< font-lock-syntactically-fontified start))
+ (setq start (max font-lock-syntactically-fontified (point-min)))
+ (setq font-lock-syntactically-fontified end))
;; If `font-lock-syntactic-keywords' is a symbol, get the real keywords.
(when (symbolp font-lock-syntactic-keywords)
(setq font-lock-syntactic-keywords (font-lock-eval-keywords