I'm trying to change encoding in the urxvt current session by changing LANG variable. Howerever, it seems like it doesn't apply immediately. Here is what I do:
Available locales:
$ locale -a
C
en_US.utf8
POSIX
ru_RU.koi8r
ru_RU.utf8
Before setting new locale:
$ echo "а" | od -t x1
0000000 d0 b0 0a # good! UTF-8
# | a ||NL|
After:
$ export LANG=ru_RU.KOI8-R
$ echo "а" | od -t x1
0000000 d0 b0 0a # hm..expect 'c1 0a'
Fork new urxvt instance by running $ urxvt & and finally get what I want:
$ echo "а" | od -t x1
0000000 c1 0a
Why doesn't LANG change the behavior in the first place?