Latar Belakang:
- Saya memiliki beberapa karakter unicode di prompt saya (penanda status git pada dasarnya)
- Saya menjalankan urxvt di bawah xfce di arch linux.
Saya menggunakan DejaVu Sans Mono untuk font Powerline, ditentukan melalui baris .Xresources:
URxvt*font: xft:DejaVu Sans Mono for Powerline:pixelsize=14
Ketika saya mulai urxvt karakter unicode tidak ditampilkan dengan benar.
Sebagai contoh
● diterjemahkan sebagai â
Namun, jika saya kemudian memulai yang baru urxvt
dari dalam terminal pertama semuanya membuat dengan benar.
Tampaknya tidak ada perbedaan dalam lingkungan antara kedua terminal.
Apa yang bisa menjadi perbedaan antara doa pertama dan doa bersarang? Saya menduga font tidak benar dalam contoh 'luar', tapi saya tidak yakin bagaimana memeriksa font dari X windows yang sedang berjalan
UPDATE : Tampaknya lokal tidak diatur dengan benar di peluncur aplikasi untuk xfce4, tetapi mungkin shell di dalam terminal pertama memiliki lokal itu sendiri, yang berarti bahwa kedua shell memiliki lokal yang sama.
menambahkan
export LANG=en_GB.UTF-8
ke .xinitrc sebelum xfce4 dimulai tampaknya untuk memperbaikinya. Saya curiga ini bukan cara yang benar , tetapi itu bekerja cukup baik untuk saya.
tangkapan layar menunjukkan masalah:
Catatan: Saya memindahkan pertanyaan ini dari serverfault.com - saya harap situs ini lebih tepat
LC_ALL=ru_RU.utf8 urxvt
dari sesi X saat ini. Jika karakter Rusia (dan Unicode lainnya) menjadi benar, Anda berada dalam kasus ketika lingkungan Anda telah berjalan di bawah C locale. Jadi periksa pengaturan lokal untuk xfce
. Misalnya jika Anda memulainya, .xinitrc
coba atur lokal sebelum dijalankan seperti LANG=ru_RU.utf8 exec startxfce4
.