emacs 启动shell不同,环境变量PATH居然会不同msys2+win10。

我用的配置中调用 python 的 os.environ.items 获取系统 PATH变量设置 exec-path. 我发现os.environ.items 在

  • cmd powershell 中 PATH的样子是/c/msys/mingw64/bin:/c/msys/usr/local/bin:/c/msys/usr/bin:/c/msys/usr/bin:
  • 在msys 的 bash中 是C:\\msys\\mingw64\\bin;C:\\msys\\usr\\local\\bin;C:\\msys\\usr\\bin;C:\\msys\\usr\\bin;

所以,导致只有在 msys的 shell下才能正确设定exec-path. python是msys下的python3. python的os.environ模块是通过什么途径和os交互的呢?

1 个赞

如果用的是doom-emacs,每次更改系统环境变量之后,都要从新生成一遍环境。 运行 doom sync。

不是doom。是 radian。 straight管理包作者的配置。

原来我调用的是两个不同的Python文件,一个是windows native的,一个是unix style的。真是蠢哭了 :sweat_smile: