ฉลาดข้อความช่วยเหลือและข้อความในภาษาที่ไม่ถูกต้อง

Aug 19 2020

ฉันมีระบบที่มีภาษาผสมกัน ภาษาข้อความถูกตั้งค่าเป็นภาษาอังกฤษการจัดรูปแบบตัวเลขสกุลเงินและอื่น ๆ ถูกตั้งค่าเป็นภาษาเยอรมัน สิ่งนี้ใช้ได้ดีมากยกเว้น apt เท่านั้น ข้อความและข้อความช่วยเหลือทั้งหมดของคำสั่ง apt (apt-get, apt-cache ฯลฯ ) เป็นภาษาเยอรมันเสมอ:

เช่น:

apt-get --help                                                                                                                                                                                               
apt 1.6.12ubuntu0.1 (amd64)
Aufruf: apt-get [Optionen] befehl
        apt-get [Optionen] install|remove paket1 [paket2 ...]
        apt-get [Optionen] source paket1 [paket2 ...]

apt-get ist ein Befehlszeilenwerkzeug zum Herunterladen von Paketen (und
Informationen zu diesen Paketen) von authentifizierten Paketquellen sowie
für deren Installation, Aktualisierung und Entfernung zusammen mit ihren
Paketabhängigkeiten.
...

พฤติกรรมนี้เหมือนกันสำหรับบัญชีผู้ใช้ส่วนตัวของฉันและสำหรับผู้ใช้รูท

การตั้งค่าภาษาสำหรับบัญชีผู้ใช้ของฉันเป็นดังนี้:

LANG=en_US.UTF-8
LANGUAGE=en_US:de
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=de_DE.UTF-8
LC_TIME=de_DE.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=de_DE.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT=de_DE.UTF-8
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

ไม่ได้ตั้งค่า LC_ALL แต่แม้ว่าฉันจะตั้งค่า env var อย่างชัดเจน

export LC_ALL="en_US.UTF-8"   

ภาษาของเอาต์พุต apt ไม่เปลี่ยนแปลง

ตัวแปรโลแคลใดมีผลต่อคำสั่ง apt ฉันจะโน้มน้าวให้ฉลาดพูดภาษาอังกฤษได้อย่างไร?

คำตอบ

GunnarHjalmarsson Aug 19 2020 at 19:26

ฉันเห็น:

LANGUAGE=en_US:de

นั่นไม่ได้ทำในสิ่งที่คุณคิด เนื่องจากภาษาต้นฉบับคือ en_US โดยทั่วไปจึงไม่มีการแปล en_US ดังนั้นสำหรับแอปพลิเคชันที่เข้าใจLANGUAGEตัวแปรสภาพแวดล้อม gettext จะเลือกคำแปลภาษาเยอรมันแทน

เปลี่ยนเป็น:

LANGUAGE=en_US

ป.ล. คุณควรมีปัญหากับแอปพลิเคชั่นอื่น ๆ นอกเหนือจาก APT