我的.bash_env
文件设置了几个环境变量,包括PATH
and EMAIL
,但是在从 Gnome 面板(命令:“ /usr/bin/emacs23 %F
”)启动的 Emacs 会话中,这些变量没有预期值。我以前遇到过这个问题(请参阅此博客文章)。.bash_env
然后我通过在我的.xsession
文件中采购来修复它。显然,这不再有效。
如果我从终端手动启动 Emacs,则变量设置正确。奇怪的是,如果我将面板启动器更改为在终端中执行 Emacs(我认为这会在启动 Emacs 之前启动 Bash),它们并没有设置。
如何确保为 Emacs 会话设置了常规 Bash 环境?
将环境变量设置为
~/.profile
(如果您使用 a~/.profile
,则设置来源)。这样,它们将随处可用,因为它们将在您登录时设置。~/.xsession
.xsession
~/.bash_env
不是环境变量的正确位置(尽管名称)。(尽管它存在(那是$BASH_ENV
,对吗?)我还没有找到它的好用处。)在终端中运行 Emacs 时,它是终端模拟器的子进程。没有理由在两者之间有一个外壳。
/usr/bin/zsh -c emacs
为我工作。只需将 bash 添加到您的启动器命令中,例如
bash codecodecode emacs %stuff
(也就是在行首添加 bash),它应该可以工作。