如何确定配置文件的载入顺序?

我准备写自己的配置了…… 一般来说肯定是用一个文件夹结构化配置。 那么问题来了,我该如何确定这些配置文件的载入顺序? 现在我就知道,被依赖很多的项目应该先启动(比如elpa设置之类)……那么如果是没有任何依赖的项目,是否也要遵循一定的顺序?还是说真的全看个人喜好了?

只要没冲突,关系不大。只要在配置之前 package-initialize ,依赖的部分会基本自动根据 autoload 加载。

那么我真的要从头写 (chao) 一份配置文件的话,关于加载顺序有没有什么比较好的guide之类的?

比如两个文件既不互相依赖,也不冲突,还属于同一类的,那么该咋确定这个顺序?

或者类似"耗时长和耗时短的配置哪个应该放前面?"这种问题

我真的有点强迫症……所以只好旧事重提了……

我觉得光文件的话比较容易,把文件路径放在一个排好序的列表里面依次load就行。

在列表里排序我能想到的最简单的方法就是直接用文件名排序,(direcotry-file)nosort然后用一个自己的函数根据文件名排序。这是不知道文件夹里有多少文件的方法。

我在自己的配置里是像spacemacs一样列出我想要启用的模组的,这样这些模组本身就带顺序啊,我只要依次load就可以了。

你要不要看看我的配置?模仿了doom-emacs但是实现非常简单。

P.S. 之前为了多线程取消了对Emacs25的支持,我现在正在往回改……

请千万不要往回改谢谢……毕竟26也快了……

我现在的问题似乎并不是技术问题,而是心理问题……

对于有依赖关系的项目我都会按照依赖关系排序,比如要用use-package的配置不可能放在package配置之前……

但是对于那种「既不沾亲,也不带故」的文件,我是真的没什么好的想法……

也许真像你说的,按a-z排序就好……

我以前也是分文件夹组织的配置的文件的,但是后来还是发现直接都写在init.el中比较好,毕竟自己写的配置并不多。如果非要分文件夹组织的话,我觉得可以使用use-package 来解决这个问题:https://github.com/jwiegley/use-package#loading-packages-in-sequence

你需要的是放弃,然后去医院治疗强迫症

1 个赞

我觉得强迫症对我来说是一个feature而不是bug

1 个赞

放怕是已经弃治疗了

不要你以为你以为的就是你以为的

1 个赞

然而我从来如此…

……不过还是找人把这主题关了吧……反正不管最后怎么解决,都很没营养……