繁体   English   中英

Emacs批量安装软件包

[英]Emacs Bulk install packages

我正在使用建议,试图让Emacs为我管理我的软件包。 我无法让Emacs评估这部分代码,该代码应安装我的所有软件包,但目前绝对不起作用。 elisp上有没有我看不到的错误吗?

;;; Emacs is not a package manager, and here we load its package manager!
(require 'package)
(dolist (source '(("marmalade" . "http://marmalade-repo.org/packages/")
                  ("elpa" . "http://tromey.com/elpa/")
                  ;; TODO: Maybe, use this after emacs24 is released
                  ;; (development versions of packages)
                  ("melpa" . "http://melpa.milkbox.net/packages/")
                  ))
  (add-to-list 'package-archives source t))
(package-initialize)

;;; Required packages
;;; everytime emacs starts, it will automatically check if those packages are
;;; missing, it will install them automatically
(when (not package-archive-contents)
  (package-refresh-contents))
(defvar tmtxt/packages
  '(evil git-gutter monokai-theme magit markdown-mode evil-leader jedi evil-surround arduino-mode evil-nerd-commenter zeal-at-point))

(dolist (p tmtxt/packages)
  (lambda () 
      (when (not (package-installed-p p))
        (package-install p))
      (require p)))

您的dolist的主体只是一个“ lambda表达式”,即它立即求值为立即丢弃的函数。 由于您希望函数的主体被执行,因此只需删除(lambda () ...)包装器即可:

(dolist (p tmtxt/packages)
  (when (not (package-installed-p p))
    (package-install p))
  (require p))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM