当前位置:首页 > 芯闻号 > 充电吧
[导读] Emacs的配置文件有三种格式:.emacs文件、_emacs文件或者.emacs.d目录下的init.el(22或者更高版本)文件,但是,不管哪种格式,必须放对正确的目录Emacs才能找到,这个正

Emacs的配置文件有三种格式:.emacs文件、_emacs文件或者.emacs.d目录下的init.el(22或者更高版本)文件,但是,不管哪种格式,必须放对正确的目录Emacs才能找到,这个正确的目录就是HOME目录。


熟悉Linux的朋友一般都知道home目录,简单的用~表示,或者用全路径表示为/home/,其中xxx表示用户名字,所以,在Linux下将.emacs和.emacs.d放到这个目录下就行了,但windows没有home目录的概念,所以,Emacs就按如下方式来查找配置文件:

如果设置了HOME环境变量,那么就用它的值作为home目录~如果存在注册表键值HKCUSOFTWAREGNUEmacsHOME,就用它的值作为home目录~如果存在注册表键值HKLMSOFTWAREGNUEmacsHOME,就用它的值作为home目录~(和2的区别是,2只是针对当前用户的注册表路径,3则是针对所有用户)如果存在C:.emacs,就用C:作为home目录~如果以上都不存在的话,就使用UsersAppDataRoaming作为home目录~(对于XP和较早windows用户,需要到Documents and Settings目录下去找)

 

从以上策略来看,1是比较好的做法,所以优先级也最高,应该是属于建议的方式,于是,新建一个HOME环境变量,将它的值设为想要放置Emacs配置文件的地方既可。

之前我是按以上方法设置的HOME目录,不过现在我后悔了,因为我发现不光是Emacs会使用HOME这个环境变量,会使用这个变量的至少还有以下程序或者插件:

VIM,VIM会把_viminfo文件放在这个目录;VIM的neocomplcache插件,它会放置一个.neocon目录进去;firefox的pentadactyl插件,它会放一个pentadactyl目录进去。

 

所以,个人建议:

如果你希望有一个公共的目录存放这些配置,就像Linux下的~目录一样,那么设置HOME这个环境变量最适合不过;如果你希望这个目录只存放Emacs的配置,那么,还是不要用HOME环境变量了,去注册表里面添加一个HOME键值吧。(至少我个人比较偏向于这个方式)
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭