From: Richard M. Stallman Date: Fri, 29 Aug 2003 16:07:16 +0000 (+0000) Subject: (blink-matching-open): Work correctly on chars that X-Git-Tag: ttn-vms-21-2-B4~8962 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=01ce617af9ffa87beaf24bf427f7246b13cbd2a8;p=emacs.git (blink-matching-open): Work correctly on chars that are designated as parens through the syntax-table text property. --- diff --git a/lisp/simple.el b/lisp/simple.el index 2a90fa6740c..508569d55fa 100644 --- a/lisp/simple.el +++ b/lisp/simple.el @@ -3500,7 +3500,8 @@ when it is off screen)." (point))))) (let* ((oldpos (point)) (blinkpos) - (mismatch)) + (mismatch) + matching-paren) (save-excursion (save-restriction (if blink-matching-paren-distance @@ -3514,12 +3515,20 @@ when it is off screen)." (setq blinkpos (scan-sexps oldpos -1))) (error nil))) (and blinkpos - (/= (char-syntax (char-after blinkpos)) - ?\$) - (setq mismatch - (or (null (matching-paren (char-after blinkpos))) + (save-excursion + (goto-char blinkpos) + (not (looking-at "\\s$"))) + (setq matching-paren + (or (and parse-sexp-lookup-properties + (let ((prop (get-text-property blinkpos 'syntax-table))) + (and (consp prop) + (eq (car prop) 4) + (cdr prop)))) + (matching-paren (char-after blinkpos))) + mismatch + (or (null matching-paren) (/= (char-after (1- oldpos)) - (matching-paren (char-after blinkpos)))))) + matching-paren)))) (if mismatch (setq blinkpos nil)) (if blinkpos ;; Don't log messages about paren matching.