[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r99556: (i) Remove any hard syntax-ta
From: |
Alan Mackenzie |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r99556: (i) Remove any hard syntax-table properties for <, > inserted by C-y. |
Date: |
Thu, 25 Feb 2010 21:21:25 +0000 |
User-agent: |
Bazaar (2.0.3) |
------------------------------------------------------------
revno: 99556
committer: Alan Mackenzie <address@hidden>
branch nick: trunk
timestamp: Thu 2010-02-25 21:21:25 +0000
message:
(i) Remove any hard syntax-table properties for <, > inserted by C-y.
(ii) Remove category text props, not syntax-table ones in unmarking <, >.
modified:
lisp/ChangeLog
lisp/progmodes/cc-engine.el
lisp/progmodes/cc-mode.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2010-02-24 15:30:49 +0000
+++ b/lisp/ChangeLog 2010-02-25 21:21:25 +0000
@@ -1,3 +1,13 @@
+2010-02-25 Alan Mackenzie <address@hidden>
+
+ * progmodes/cc-engine.el (c-clear-<-pair-props)
+ (c-clear->-pair-props): Correct to wipe category text props, not
+ syntax-table ones.
+
+ * progmodes/cc-mode.el (c-after-change): Remove any hard
+ syntax-table properties for <, > which, e.g., C-y has
+ inopportunely converted from category properties.
+
2010-02-24 Chong Yidong <address@hidden>
* files.el (hack-local-variables-filter): For eval forms, also
=== modified file 'lisp/progmodes/cc-engine.el'
--- a/lisp/progmodes/cc-engine.el 2010-02-04 21:15:37 +0000
+++ b/lisp/progmodes/cc-engine.el 2010-02-25 21:21:25 +0000
@@ -4929,8 +4929,8 @@
(c-go-list-forward))
(when (equal (c-get-char-property (1- (point)) 'syntax-table)
c->-as-paren-syntax) ; should always be true.
- (c-clear-char-property (1- (point)) 'syntax-table))
- (c-clear-char-property pos 'syntax-table))))
+ (c-clear-char-property (1- (point)) 'category))
+ (c-clear-char-property pos 'category))))
(defun c-clear->-pair-props (&optional pos)
;; POS (default point) is at a > character. If it is marked with
@@ -4946,8 +4946,8 @@
(c-go-up-list-backward))
(when (equal (c-get-char-property (point) 'syntax-table)
c-<-as-paren-syntax) ; should always be true.
- (c-clear-char-property (point) 'syntax-table))
- (c-clear-char-property pos 'syntax-table))))
+ (c-clear-char-property (point) 'category))
+ (c-clear-char-property pos 'category))))
(defun c-clear-<>-pair-props (&optional pos)
;; POS (default point) is at a < or > character. If it has an
=== modified file 'lisp/progmodes/cc-mode.el'
--- a/lisp/progmodes/cc-mode.el 2010-02-06 13:01:43 +0000
+++ b/lisp/progmodes/cc-mode.el 2010-02-25 21:21:25 +0000
@@ -642,11 +642,9 @@
(widen)
(save-excursion
(if c-get-state-before-change-functions
- (let ((beg (point-min))
- (end (point-max)))
- (mapc (lambda (fn)
- (funcall fn beg end))
- c-get-state-before-change-functions)))
+ (mapc (lambda (fn)
+ (funcall fn (point-min) (point-max)))
+ c-get-state-before-change-functions))
(if c-before-font-lock-function
(funcall c-before-font-lock-function (point-min) (point-max)
(- (point-max) (point-min))))))
@@ -1042,6 +1040,14 @@
(when (> beg end)
(setq beg end)))
+ ;; C-y is capable of spuriously converting category properties
+ ;; c-</>-as-paren-syntax into hard syntax-table properties. Remove
+ ;; these when it happens.
+ (c-clear-char-property-with-value beg end 'syntax-table
+ c-<-as-paren-syntax)
+ (c-clear-char-property-with-value beg end 'syntax-table
+ c->-as-paren-syntax)
+
(c-trim-found-types beg end old-len) ; maybe we don't need all of these.
(c-invalidate-sws-region-after beg end)
(c-invalidate-state-cache beg)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r99556: (i) Remove any hard syntax-table properties for <, > inserted by C-y.,
Alan Mackenzie <=