julia in comint is not respecting TERM=dumb? In inferior julia, TERM=vt50 instead reddit / emacs ---------------------------------------------------------------------- 1nc0ns1st3nt · 2022-12-08 15:56 I was investigating why inferior julia is showing no prompt at all. My investigation leads to me submit this issue: https://github.com/JuliaLang/julia/issues/47837. The solution is to set TERM = dumb, however, I have used `setenv` `process-environment` to set TERM to dumb, still inside the inferior julia, `ENV["TERM"]` is `vt50`. Opening a terminal and type `TERM=linux julia`, this change is reflected inside the process, i.e. `ENV["TERM"]` is `linux`. Is this a case of processes started with comint not respecting TERM environmental variable?? I am confused about this behaviour. ---------------------------------------------------------------------- ieure · 2022-12-08 16:36 The environment of a child process is inherited from the parent process *at the time the process is started.* You have to set `TERM` before starting Julia, using `process-environment`. ---------------------------------------------------------------------- 1nc0ns1st3nt · 2022-12-08 16:50 The bizarre things is `TERM=dumb` is in `process-environment` before starting julia, yet inside julia `TERM` is `vt50`. This is beyond reasons and logic at this point. ---------------------------------------------------------------------- 1nc0ns1st3nt · 2022-12-09 01:41 The culprit is `comint-terminfo-terminal`, setting that to `dumb` fixes the issue. See my comment here for a bit more information: https://github.com/JuliaEditorSupport/julia- emacs/issues/144#issuecomment-1343722278 ---------------------------------------------------------------------- 1nc0ns1st3nt · 2022-12-09 01:43 Hey, I just figured that it was `comint-terminfo-terminal`, its `vt50` and that overrides the emacs `TERM` environmental variable setting ---------------------------------------------------------------------- 7890yuiop · 2022-12-09 11:55 startup.el sets `TERM` to `dumb` because that's the sane default for inferior processes started by Emacs.