首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该为emacs使用哪个软件包管理器?

我应该为emacs使用哪个软件包管理器?
EN

Stack Overflow用户
提问于 2014-07-21 14:16:27
回答 1查看 3.3K关注 0票数 3

多年来,我一直是一个vim用户,最近我开始试用emacs。这个编辑器有很多可用的组件,比如邮件客户端、IRC客户端等等。所有这些组件都需要一个包管理器来更新它们,并使它们的处理在一般情况下更容易。

vim上,有大量插件管理人员(比如Vundle或病原体),不同的人使用不同的东西。

另一方面,emacs包含有最新版本的package.el (这开始很棒),但是也有el-getpackage.el包列表非常短。

我是否应该坚持使用package.el (或者用柑桔果酱扩展包列表)?还是我需要el-get来进行合理的包管理?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-21 15:02:06

如果您使用的是最近的Emacs版本,那么可以使用package.el将MELPA添加到存储库列表中。

而且,而不是--所有的“包”(或库)都需要一个包管理器来更新它们,并使它们的处理在一般情况下更容易。有一个有用的Emacs代码世界没有“打包”并上传到一个package.el存储库。

更重要的是,无论您是否使用package.el检索和“安装”包,您都应该学习加载、字节编译和使用Emacs代码的基础知识。不要盲目地使用package.el,而不了解Lisp代码。

手动“安装”Lisp代码的基础包括以下内容:

  1. 通常,您希望使用字节编译库,以获得更好的性能。请记住这个警告,如果你这样做的话: 1a.加载任何源程序文件(*.el),这些文件定义了您使用的任何其他Lisp库所需的Lisp 宏。 1b。然后是字节编译(宏定义库和)使用宏定义库的库。这一点很重要。使用宏库的最新版本很可能需要最新版本的宏,如果您没有首先加载最新的宏定义就编译它们,那么您就是自找麻烦了。
  2. 将您使用的任何库放在load-path中的目录中。换句话说:将init文件(~/.emacs)中的变量~/.emacs设置为包含所有包含您使用的Lisp代码的目录的值。
  3. 通常,您希望在自己的代码(例如init文件中)中使用(require 'foo)来加载库foo
  4. 但是,只有当库foo (文件foo.el)实际上提供了特性foo(provide 'foo)时,#3才能工作。如果没有,则可以使用(load-library "foo") (请注意这里使用'foo"foo"的区别:第一个是指特性foo,第二个是指文件foo.elfoo.elc
  5. 最后,在尝试使用库之前,请帮助自己并查看文件头的Commentary部分。通常,它会告诉您有关使用库的重要事情。即使它没有说出一些非常重要的东西,它也可能说一些有用的东西(例如,一两条提示)。

我之所以提到1-5,是因为我看到了太多的新用户(不,不是很多,但太多了),他们只是使用包管理器“安装”一些东西,而从来没有看过他们正在安装的代码是关于什么的:它的目的是什么,如何使用它等等。如果Commentary中有什么东西,然后阅读它;库作者把它放在帮助您的中。

除此之外,玩得开心点!

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24867376

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档