Emacs环境变量

Emacs有一套自身的环境变量,可以通过getenv获取。很多插件会访问Emacs的环境变量,然后进行后续操作。

例:获取PATH变量

M-x getenv  --> PATH

可以通过setenv来设置一个Emacs环境变量,比如将FOO设置为BAR

M-x setenv --> FOO --> BAR

值得注意的是Emacs的环境变量不等同于Shell的环境变量,换句话说,假设在shell的PATH里配置了某些命令,发现在Emacs里找不到,很大程度是Emacs和Shell的PATH变量不一样造成的。(特别是默认使用的shell不是bash)

很多时候我们希望在SHELL里配置好环境变量,然后在Emacs里直接使用SHELL配好的,此时可以通过插件exec-path-from-shell来解决。

例:使用shell的PATH变量代替Emacs的PATH变量

(exec-path-from-shell-initialize)

也可以将指定shell变量拷贝到Emacs里,比如go的GOPATHGOROOT

(exec-path-from-shell-copy-env "GOPATH")
(exec-path-from-shell-copy-env "GOROOT")
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容