页次: 1
如题,在Dolphin中通过Ark、WPS等打开文件时,应用显示的语言为英语。如何改为默认中文?并且希望终端模拟器的语言为英文。
环境为Archlinux + i3
相关配置:
~/.config/locale.conf
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN:en_US
~/.zshrc
...
export LANGUAGE=en_US:en:C
...
最近编辑记录 AllenWu233 (2024-04-17 12:50:44)
既自以心为形役,奚惆怅而独悲?
离线
单独打开Ark、WPS却不受影响,显示语言为中文
既自以心为形役,奚惆怅而独悲?
离线
你的 dolphin 和 i3 是怎么启动的嘛?「单独打开Ark、WPS」又是怎么打开的呢?
离线
你的 dolphin 和 i3 是怎么启动的嘛?「单独打开Ark、WPS」又是怎么打开的呢?
i3是通过SDDM启动的,Dolphin通过i3绑定的快捷键或rofi启动,单独打开是指通过rofi启动
既自以心为形役,奚惆怅而独悲?
离线
那好奇怪。你先看看各自的 LANG 环境变量的值吧。在 /proc/PID/environ 里,或者用 htop 对着进程按 e。
离线
那好奇怪。你先看看各自的 LANG 环境变量的值吧。在 /proc/PID/environ 里,或者用 htop 对着进程按 e。
Dolphin:
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN:en_US
在Dolphin中点击xlsx文件打开的WPS表格(et):
LANG=en_US.UTF-8
既自以心为形役,奚惆怅而独悲?
离线
好奇怪。et 是什么进程打开的呢?用 extrace 追踪一下看看?
离线
好奇怪。et 是什么进程打开的呢?用 extrace 追踪一下看看?
请问怎么操作呢?
既自以心为形役,奚惆怅而独悲?
离线
你要不就不要在 zshrc 里面加入 locale 的内容,只是修改终端程序对应的 desktop 文件,在 exec 一行添加 env LANG=en_US 这样的内容
离线
你要不就不要在 zshrc 里面加入 locale 的内容,只是修改终端程序对应的 desktop 文件,在 exec 一行添加 env LANG=en_US 这样的内容
注释了.zshrc中有关locale的部分,重新登录后跟之前一样
既自以心为形役,奚惆怅而独悲?
离线
好奇怪。et 是什么进程打开的呢?用 extrace 追踪一下看看?
在Dolphin中打开“CD.xlsx”:
14624 /usr/lib/kf6/kioworker /usr/lib/qt6/plugins/kf6/kio/thumbnail.so thumbnail '' local:/run/user/1000/dolphinPEiGbk.72.kioworker.socket
14625 /usr/lib/systemd/systemd-executor --deserialize 59 --log-level info --log-target auto
14625 /bin/bash /usr/bin/et /home/Allen/Documents/CD.xlsx
14626 dirname /usr/bin/et
14628 awk '/\[6.0\]/{print NR}' /home/Allen/.config/Kingsoft/Office.conf
14627 awk -v 'line=1' '-F=' '$1=="wpsoffice\\Application%20Settings\\AppComponentMode" {if(NR>=line){print $2}}' /home/Allen/.config/Kingsoft/Office.conf
14629 /usr/lib/office6/et /home/Allen/Documents/CD.xlsx
14640 sh -c -- 'gsettings get org.ukui.SettingsDaemon.plugins.tablet-mode tablet-mode 2>/dev/null'
14641 gsettings get org.ukui.SettingsDaemon.plugins.tablet-mode tablet-mode
打开“test.tar.gz”:
14991 /usr/lib/systemd/systemd-executor --deserialize 61 --log-level info --log-target auto
14991 /usr/bin/ark /home/Allen/Documents/test.tar.gz
15005 /bin/bash /usr/bin/ldd /usr/lib/qt6/plugins/kerfuffle/kerfuffle_libarchive.so
15006 ''
15007 /usr/lib64/ld-linux-x86-64.so.2 --verify /usr/lib/qt6/plugins/kerfuffle/kerfuffle_libarchive.so
15010 /usr/lib64/ld-linux-x86-64.so.2 /usr/lib/qt6/plugins/kerfuffle/kerfuffle_libarchive.so
15011 /bin/bash /usr/bin/ldd /usr/lib/libarchive.so
15012 ''
15013 /usr/lib64/ld-linux-x86-64.so.2 --verify /usr/lib/libarchive.so
15016 /usr/lib64/ld-linux-x86-64.so.2 /usr/lib/libarchive.so
既自以心为形役,奚惆怅而独悲?
离线
哦,用 systemd 了啊。那 systemctl --user show-environment 看看。
离线
哦,用 systemd 了啊。那 systemctl --user show-environment 看看。
确实有`LANG=en_US.UTF-8`
既自以心为形役,奚惆怅而独悲?
离线
依云 说:哦,用 systemd 了啊。那 systemctl --user show-environment 看看。
确实有`LANG=en_US.UTF-8`
运行`systemctl --user set-environment LANG=zh_CN.UTF-8`并重新登录后能达到预期效果。谢谢依云大大!
既自以心为形役,奚惆怅而独悲?
离线
AllenWu233 说:依云 说:哦,用 systemd 了啊。那 systemctl --user show-environment 看看。
确实有`LANG=en_US.UTF-8`
运行`systemctl --user set-environment LANG=zh_CN.UTF-8`并重新登录后能达到预期效果。谢谢依云大大!
不过这样的话重启后就失效了,可以创建配置文件:`~/.config/environment.d/locale.conf`,写入`LANG=zh_CN.UTF-8`即可
参考:https://wiki.archlinuxcn.org/wiki/Syste … 8%E9%87%8F
既自以心为形役,奚惆怅而独悲?
离线
页次: 1