Mercurial > emacs
changeset 106323:233d17a2b6f0
(perl-font-lock-special-syntactic-constructs):
Don't signal an error when bumping into EOB in tr, s, or y.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Mon, 30 Nov 2009 13:43:51 +0000 |
parents | da01d19630f4 |
children | 279e568f6ec1 |
files | lisp/ChangeLog lisp/progmodes/perl-mode.el |
diffstat | 2 files changed, 16 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Sun Nov 29 23:57:18 2009 +0000 +++ b/lisp/ChangeLog Mon Nov 30 13:43:51 2009 +0000 @@ -1,3 +1,8 @@ +2009-11-30 Stefan Monnier <monnier@iro.umontreal.ca> + + * progmodes/perl-mode.el (perl-font-lock-special-syntactic-constructs): + Don't signal an error when bumping into EOB in tr, s, or y. + 2009-11-29 Juri Linkov <juri@jurta.org> * startup.el (fancy-about-text): Fix wording of Guided Tour. @@ -10,8 +15,7 @@ * ediff-util.el (ediff-minibuffer-with-setup-hook): New compatibility macro. - (ediff-read-file-name): Use it instead of - `minibuffer-with-setup-hook'. + (ediff-read-file-name): Use it instead of `minibuffer-with-setup-hook'. 2009-11-29 Juri Linkov <juri@jurta.org>
--- a/lisp/progmodes/perl-mode.el Sun Nov 29 23:57:18 2009 +0000 +++ b/lisp/progmodes/perl-mode.el Mon Nov 30 13:43:51 2009 +0000 @@ -273,8 +273,8 @@ ;; (or some similar separator), or by one of the special keywords ;; corresponding to builtin functions that can take their first arg ;; without parentheses. Of course, that presume we're looking at the - ;; *opening* slash. We can mis-match the closing ones, because they are - ;; treated separately later in + ;; *opening* slash. We can afford to mis-match the closing ones + ;; here, because they will be re-treated separately later in ;; perl-font-lock-special-syntactic-constructs. (,(concat "\\(?:\\(?:\\(?:^\\|[^$@&%[:word:]]\\)" (regexp-opt '("split" "if" "unless" "until" "while" "split" @@ -381,13 +381,14 @@ 'font-lock-multiline t) ;; (unless - (save-excursion - (with-syntax-table - (perl-quote-syntax-table (char-after)) - (forward-sexp 1)) - (put-text-property pos (line-end-position) - 'jit-lock-defer-multiline t) - (looking-at "\\s-*\\sw*e")) + (or (eobp) + (save-excursion + (with-syntax-table + (perl-quote-syntax-table (char-after)) + (forward-sexp 1)) + (put-text-property pos (line-end-position) + jit-lock-defer-multiline t) + (looking-at "\\s-*\\sw*e"))) (put-text-property (point) (1+ (point)) 'syntax-table (if (assoc (char-after)