Tôi đang chạy XMonad với XQuartz trên Macbook Prop Retina 11,3. Ngoại hình của tôi .xinitrcnhư sau:
[[ -f ~/.Xdefaults ]] && xrdb -load ~/.Xdefaults
export LANG="en_CA.UTF-8"
xmodmap /Users/xxxxxxx/.xmodmarc
cd $HOME
/Users/xxxxxxxx/Library/Haskell/bin/xmonad
Tôi đã nhận thấy rằng cả LANGxuất khẩu và xmodmapđang được gọi, nhưng tác dụng của chúng không còn tồn tại. Nếu tôi ném một số env >> tmp.txtvào đó tôi có thể thấy rằng đó là một môi trường khác với khi cuối cùng tôi đến một thiết bị đầu cuối và tôi nghi ngờ có lẽ ngay cả một người dùng khác đang gọi xinit.
Những câu hỏi của tôi
- Người dùng hoặc môi trường nào thực sự gọi
xinitkhi bạn khởi động XQuartz? - Đâu là nơi thích hợp để đặt
xmodmapnó một lần và chỉ một lần, khi XQuartz được bắt đầu? - Làm cách nào để tôi lấy
LANGtập hợp một lần và chỉ một lần, dưới dạng biến môi trường khi tôi khởi động XQuartz (Tôi cần nó để hỗ trợ unicode)
Cảm ơn bạn!
cd $HOMEtrong của bạn~/.xinitrc? Nếu có, sau đó loại bỏ dòng đó. Ngoài ra, đặtexectrước cuộc gọi của bạnxmonad, như thế này :exec .../bin/xmonad. Ngoài ra, lưu ý rằngexportchỉ thay đổi môi trường của quy trình hiện tại và quy trình con của quy trình hiện tại. Nó không có tác dụng đối với các tiến trình đã chạy, chẳng hạn như một thể hiện khác của thiết bị đầu cuối.