emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r112864: * lisp/autorevert.el (auto-r


From: Stefan Monnier
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r112864: * lisp/autorevert.el (auto-revert-notify-handler): Use memq.
Date: Wed, 05 Jun 2013 15:57:10 -0400
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 112864
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Wed 2013-06-05 15:57:10 -0400
message:
  * lisp/autorevert.el (auto-revert-notify-handler): Use memq.
  Hide assertion failure.
  * lisp/skeleton.el: Use cl-lib.
  (skeleton-further-elements): Use defvar-local.
  (skeleton-insert): Use cl-progv.
modified:
  lisp/ChangeLog
  lisp/autorevert.el
  lisp/skeleton.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2013-06-05 18:30:47 +0000
+++ b/lisp/ChangeLog    2013-06-05 19:57:10 +0000
@@ -1,3 +1,12 @@
+2013-06-05  Stefan Monnier  <address@hidden>
+
+       * autorevert.el (auto-revert-notify-handler): Use memq.
+       Hide assertion failure.
+
+       * skeleton.el: Use cl-lib.
+       (skeleton-further-elements): Use defvar-local.
+       (skeleton-insert): Use cl-progv.
+
 2013-06-05  Teodor Zlatanov  <address@hidden>
 
        * progmodes/prog-mode.el (prog-prettify-symbols)

=== modified file 'lisp/autorevert.el'
--- a/lisp/autorevert.el        2013-06-03 13:03:05 +0000
+++ b/lisp/autorevert.el        2013-06-05 19:57:10 +0000
@@ -578,7 +578,7 @@
             ((featurep 'w32notify) (nth 2 event)))))
 
 (defun auto-revert-notify-handler (event)
-  "Handle an event returned from file notification."
+  "Handle an EVENT returned from file notification."
   (when (auto-revert-notify-event-p event)
     (let* ((descriptor (auto-revert-notify-event-descriptor event))
           (action (auto-revert-notify-event-action event))
@@ -591,10 +591,12 @@
        (cl-assert descriptor)
        (cond
         ((featurep 'gfilenotify)
-         (cl-assert (or (eq 'attribute-changed action)
-                        (eq 'changed action)
-                        (eq 'created action)
-                        (eq 'deleted action))))
+         (cl-assert (memq action '(attribute-changed changed created deleted
+                                    ;; FIXME: I keep getting this action, so I
+                                    ;; added it here, but I have no idea what
+                                    ;; I'm doing.  --Stef
+                                    changes-done-hint))
+                     t))
         ((featurep 'inotify)
          (cl-assert (or (memq 'attrib action)
                         (memq 'create action)

=== modified file 'lisp/skeleton.el'
--- a/lisp/skeleton.el  2013-01-01 09:11:05 +0000
+++ b/lisp/skeleton.el  2013-06-05 19:57:10 +0000
@@ -31,6 +31,8 @@
 
 ;;; Code:
 
+(eval-when-compile (require 'cl-lib))
+
 ;; page 1:     statement skeleton language definition & interpreter
 ;; page 2:     paired insertion
 ;; page 3:     mirror-mode, an example for setting up paired insertion
@@ -84,13 +86,11 @@
   "When non-nil, indent rigidly under current line for element `\\n'.
 Else use mode's `indent-line-function'.")
 
-(defvar skeleton-further-elements ()
+(defvar-local skeleton-further-elements ()
   "A buffer-local varlist (see `let') of mode specific skeleton elements.
 These variables are bound while interpreting a skeleton.  Their value may
 in turn be any valid skeleton element if they are themselves to be used as
 skeleton elements.")
-(make-variable-buffer-local 'skeleton-further-elements)
-
 
 (defvar skeleton-subprompt
   (substitute-command-keys
@@ -260,8 +260,10 @@
          skeleton-modified skeleton-point resume: help input v1 v2)
       (setq skeleton-positions nil)
       (unwind-protect
-         (eval `(let ,skeleton-further-elements
-                  (skeleton-internal-list skeleton str)))
+         (cl-progv
+              (mapcar #'car skeleton-further-elements)
+              (mapcar (lambda (x) (eval (cadr x))) skeleton-further-elements)
+            (skeleton-internal-list skeleton str))
        (run-hooks 'skeleton-end-hook)
        (sit-for 0)
        (or (pos-visible-in-window-p beg)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]