【问题标题】:Is there a way to install ELPA packages from command line?有没有办法从命令行安装 ELPA 包?
【发布时间】:2023-04-01 00:23:01
【问题描述】:

我对标准化我们中的一些人(约 5 人)使用的 emacs 配置很感兴趣。

如果我们知道我们想要的包集,有没有办法从可以包含在脚本中的 lisp 函数安装 ELPA 包?我能找到的只是如何调用list-packages 并以图形方式安装各个包。

【问题讨论】:

    标签: emacs elisp elpa


    【解决方案1】:

    你需要的是使用package-install函数,比如:

    (mapc 'package-install install-list)
    

    install-list 变量应包含您要安装的软件包的名称列表。

    【讨论】:

      【解决方案2】:

      您可以做的另一件事是制作自己的软件包,该软件包取决于您要安装的其他软件包。然后安装那个包。

      可以从以下文件安装软件包:

      M-x package-install-from-file

      或者您可以使用包含的包制作自己的包存档,您可以使用 elpakit 来做到这一点。

      您也可以从命令行执行此操作:

      emacs -e "(progn (package-initialize)(package-install 'packagename))"

      如果您愿意,可以从操作系统命令行安装。

      【讨论】:

        【解决方案3】:

        您可能还想看看cask。它允许您使用描述为here 的DSL 在名为Cask 的文件中声明要安装的包。然后从命令行转到目录并运行cask。它将安装Cask 文件中声明的所有包。

        在您的初始化文件中,您需要添加以下行以使用 cask 安装的软件包。

        (require 'cask "~/.cask/cask.el")
        (cask-initialize)
        

        【讨论】:

          【解决方案4】:

          此外,您还可以通过

          获取已安装的 ELPA 软件包列表
          (defun eab/print-0 (body)
            "Insert value of body in current-buffer."
            (let ((print-length nil)
                  (eval-expression-print-length nil))
              (prin1 `,body (current-buffer))))
          
          (defun eab/package-installed ()
            "Get the list of ELPA installed packages."
            (mapcar (lambda (x) (car x)) package-alist))
          
          (eab/print-0 (eab/package-installed))
          

          el-get 包也是如此

          (defun eab/el-get-installed ()
            "Get the list of el-get installed packages."
            (mapcar 'intern
                (el-get-list-package-names-with-status "installed")))
          
          (eab/print-0 (eab/el-get-installed))
          

          【讨论】:

            猜你喜欢
            • 2012-01-01
            • 1970-01-01
            • 1970-01-01
            • 2023-01-03
            • 1970-01-01
            • 2018-12-31
            • 1970-01-01
            • 2015-03-12
            • 2014-10-28
            相关资源
            最近更新 更多