tmux + 256colorで Emacsの見た目の調整

Ubuntu 22.10で環境変数 TERM=xterm-256colorEmacsを起動するとこんな感じなのだが

tmuxを起動すると以下のようになりめちゃ見づらい

これが嫌で TERM=xterm でここ 10年ぐらいやってきたのだが, さすがに 256colorの方が良いんじゃないって思って対応方法を調べていろいろ試したんだけど全部うまくいかなくて, 最終的に tmuxでシェルを起動したときだけ TERM=tmux-256color としてやると期待通りになることはわかった.

if [[ "$TERM_PROGRAM" == "tmux" ]]; then
  export TERM=tmux-256color
else
  export TERM=xterm-256color
fi

tmuxのなしの場合と同じような見た目にすることはできた. 原因とかはよくわかっていないがひとまずヨシということで。