]> git.eshelyaron.com Git - emacs.git/commitdiff
don't use obsolete flet
authorJonas Bernoulli <jonas@bernoul.li>
Sat, 27 Apr 2013 15:09:12 +0000 (17:09 +0200)
committerJonas Bernoulli <jonas@bernoul.li>
Sat, 27 Apr 2013 15:19:43 +0000 (17:19 +0200)
Unfortunately there isn't a proper dynamically scoped
replacement, so we have to resort to using funcall.

lisp/use-package/use-package.el

index 46b46278c07ff522a43c9d95e6a610d9cb59a393..f4db4e3259a7892da869165a017830bc93a6aed6 100644 (file)
@@ -482,35 +482,38 @@ For full documentation. please see commentary.
                    ,init-body)))
 
 
-      (flet ((init-for-commands
-              (func sym-or-list)
-              (let ((cons-list (if (and (consp sym-or-list)
-                                        (stringp (car sym-or-list)))
-                                   (list sym-or-list)
-                                 sym-or-list)))
-                (if cons-list
-                    (setq init-body
-                          `(progn
-                             ,init-body
-                             ,@(mapcar #'(lambda (elem)
-                                           (push (cdr elem) commands)
-                                           (funcall func elem))
-                                       cons-list)))))))
-
-        (init-for-commands #'(lambda (binding)
-                               `(bind-key ,(car binding)
-                                          (quote ,(cdr binding))))
-                           (plist-get args :bind))
-
-        (init-for-commands #'(lambda (mode)
-                               `(add-to-list 'auto-mode-alist
-                                             (quote ,mode)))
-                           (plist-get args :mode))
-
-        (init-for-commands #'(lambda (interpreter)
-                               `(add-to-list 'interpreter-mode-alist
-                                             (quote ,interpreter)))
-                           (plist-get args :interpreter)))
+      (let ((init-for-commands
+             (lambda (func sym-or-list)
+               (let ((cons-list (if (and (consp sym-or-list)
+                                         (stringp (car sym-or-list)))
+                                    (list sym-or-list)
+                                  sym-or-list)))
+                 (if cons-list
+                     (setq init-body
+                           `(progn
+                              ,init-body
+                              ,@(mapcar #'(lambda (elem)
+                                            (push (cdr elem) commands)
+                                            (funcall func elem))
+                                        cons-list))))))))
+
+        (funcall init-for-commands
+                 #'(lambda (binding)
+                     `(bind-key ,(car binding)
+                                (quote ,(cdr binding))))
+                 (plist-get args :bind))
+
+        (funcall init-for-commands
+                 #'(lambda (mode)
+                     `(add-to-list 'auto-mode-alist
+                                   (quote ,mode)))
+                 (plist-get args :mode))
+
+        (funcall init-for-commands
+                 #'(lambda (interpreter)
+                     `(add-to-list 'interpreter-mode-alist
+                                   (quote ,interpreter)))
+                 (plist-get args :interpreter)))
 
       `(progn
          ,@(mapcar