es的环境怎么搭建?

jam*_*rty 10 shell gdm environment-variables profile

过去几天我一直在玩es,它(如 rc)有一个怪癖/功能,它只.esrc在登录时运行其启动脚本 ( )。在每个交互式会话中运行代码的常用方法是将该代码放入%prompt函数中。

当然,%prompt如果es -l从未运行过,则没有任何功能。

所以,问题是:当你通过 gdm 或类似的方式进入时,你如何设置登录环境,它只提供 .profile(或 .xprofile、.xsession 等)?我想出的最好的是:

if [ -f "$HOME/.esrc" ]; then
    eval "`es -l <<-x
        sh <<<'export -p'
    x`"
fi
Run Code Online (Sandbox Code Playgroud)

这看起来……太可怕了。有什么更好的方法吗?

Sar*_*use 1

由于没有人有真正的答案,这是我的可怕的黑客。某些 shell(例如 *rxvt)具有允许强制登录 shell 的设置。因此,在您的 中.Xdefaults,您可以添加类似于

urxvt256c-ml:loginShell: true
Run Code Online (Sandbox Code Playgroud)

这意味着urxvt256c-ml您启动的所有终端默认都会有一个登录 shell。

这些帮助有用?