i3からurxvtを立ち上げると日本語がちゃんと表示されない問題

i3でmod+Enterでターミナル(urxvt)を立ち上げると日本語がちゃんと出ない。でもすでに立ち上がってるurxvtからurxvtを起動するとちゃんと表示される。で結構悩んだ末urxvtの起動時点でロケールが正しくセットされてないことが判明。

適当なファイルに

#!/usr/bin/zsh
LANG=ja_JP.UTF8 urxvt

と書き込んで、i3のコンフィグファイルにbindsym $mod+Return exec /home/user/bin/start_terminalとするとうまくいった。

urxvtのデーモンを使ってる場合はデーモンの方に環境変数を渡してやる必要があるので注意。

でも普通こんなん必要ないよね?俺がロケールの設定間違えてんのかな?