是的,always-ensure不会自动跳过内置包,只会生硬的报错
设置之后默认对于所有包都会先检查下载。对于 built-in 或者本地第三方 package,加上 :ensure nil
或者 :load-path
就行了。
之后的 package 都不用写
:ensure t
了。 请问是这样的么?
是的。既然不用写 :ensure 的包是极少数,那使用这个全局变量能让我更专注于其它东西的定义上。
这个
:type 'sexp
是什么?
defcustom
用来定义一个变量,这个变量你可以在 (customize-variable)
里覆盖它的默认值。定义这个变量需要指定它的类型,这里这个变量的值的类型期望为 sexp
,也就是Lisp表达式。
请问 nykma 在需求的情况下会用到?
我的配置文件在这儿 ,不嫌丑的话随便拿随便用(
我的意思是:use-package除了使分类清晰之外还有没有别的用途(因为分类也可以用注释的方式)。比如:他能加快启动速度?
因为写法上看起来没有区别,那么它优化的点在哪里?
比如: require-package
是当没有安装的时候自动下载安装,use-package的 :ensure nil
也是同样的意思(从这个角度它肯定不能做什么优化)
再比如:还有我现在对每一个package都要require
一下,use-package不需要require?
Centaur 好帅啊。一开始以为你不用 use-package
, 后来发现都藏在 lisp 里面。已经加入我的学习列表里面啦。
设置之后默认对于所有包都会先检查下载。对于 built-in 或者本地第三方 package,加上
:ensure nil
或者:load-path
就行了。
我会试试这个建议的。
另外:
为什么要单用一个 site-lisp 文件夹来放 robot-mode?
========================================================================
是的。既然不用写 :ensure 的包是极少数,那使用这个全局变量能让我更专注于其它东西的定义上。
像你学习了。我先试一试,或许给 ~ bbatsov ~ 提个 PR
我的配置文件在这儿 ,不嫌丑的话随便拿随便用(
not-so-hurt-yet-still-make-kind-of-sense
帅。
cd ~
mv .emacs.d .emacs.d.old
这个不错了。我自己的话,会用 git 建立一个新分支,然后慢慢学习。
=========================================================================
可能
(use-package isearch)
也会试图安装isearch
,但压根就没这个包
有意思,这个算是 拼写错误 么?
很久以前 Centaur 也是不用use-package
的,可以查看 legacy branch。后来发现用它组织配置文件更简洁,lazy loading 也很合理,大大加快启动速度。
这个文件夹用来存放一些不在 melpa 和 elpa 上的第三方库或者自己写的一些库,方便管理。robot-mode
是目前唯一留下的,其他的尽量采用 melpa 和 elpa 上的官方库。当然你也可以像懒猫一样用submodule等方式管理这些库。
对 Use-package 感兴趣的话,自己看看文档、亲自试试就清楚了,至少比别人解释效果好。
我使用 use-package 是因为它有两个功能:
- 自动安装 package 功能
- 让缺少某个包的时候,不报错而是忽略这个包的配置