Saya ingin mengubah bahasa git (ke bahasa Inggris) di instalasi Linux saya tanpa mengubah bahasa untuk program lain dan tidak dapat menemukan pengaturannya. Bagaimana cara melakukannya?
Saya ingin mengubah bahasa git (ke bahasa Inggris) di instalasi Linux saya tanpa mengubah bahasa untuk program lain dan tidak dapat menemukan pengaturannya. Bagaimana cara melakukannya?
Jawaban:
Tambahkan baris ini ke Anda ~/.bashrcatau ~/.bash_profileuntuk memaksa git menampilkan semua pesan dalam bahasa Inggris:
# Set Git language to English
#alias git='LANG=en_US git'
alias git='LANG=en_GB git'
Alias perlu diganti LC_ALLpada beberapa sistem, ketika variabel lingkungan LC_ALLdisetel, yang didahulukan LANG. Lihat Spesifikasi UNIX - Variabel Lingkungan untuk penjelasan lebih lanjut.
# Set Git language to English
#alias git='LC_ALL=en_US git'
alias git='LC_ALL=en_GB git'
Jika Anda menambahkan baris ini ke ~/.bashrcalias akan ditentukan saat shell interaktif baru dimulai. Jika Anda menambahkannya ke ~/.bash_profilealias akan diterapkan saat masuk.
.bash.rcbukan .bashrc). Anda juga harus menutup dan memulai shell lagi .bashrcagar dapat dieksekusi. Saya juga menambahkan catatan tentang ini.
.bashrcbahkan dengan memulai ulang. Alias berfungsi. Hanya saja bahasanya tidak berubah.
.bashrcberhasil dieksekusi, Anda dapat menambahkan tes seperti echo "This is .bashrc"di akhir file. Anda juga dapat menjalankannya sesuai permintaan tanpa harus memulai ulang terminal atau seluruh sistem . .bashrc. Akhirnya, saya akan menyarankan untuk mencoba mengatur LC_ALLvariabel lingkungan daripada LANG, karena yang pertama lebih diutamakan.
.bashrc, sungguh. Jika LC_ALLdiutamakan maka ini akan menjadi masalah, ini diatur ke bahasa saya. Tetapi kemudian saya tidak ingin mengubah pengaturan bahasa umum ... Tidak bisakah saya menimpanya untuk satu program?
$ LC_ALL="en_US" mandan kemudian$ man
Jika Anda hanya ingin memiliki satu perintah dalam bahasa Inggris, Anda dapat menulis LC_ALL=Csebelum perintah, misalnya:
LC_ALL=C git status
akan menghasilkan
# On branch master
nothing to commit, working directory clean
Lokal yang digunakan dalam Cbahasa Inggris dan selalu tersedia tanpa menginstal paket bahasa tambahan
(lihat https://askubuntu.com/a/142814/34298 )
Untuk mengubahnya untuk seluruh sesi bash saat ini, cukup masuk
LANG=C
Untuk mengubahnya misalnya ke jerman enter
LANG=de_DE.UTF-8
LC_ALL=Csarannya, karena saya memiliki beberapa masalah dengan lokal, LC_ALL="en_US"akhir-akhir ini tidak berfungsi lagi.
Menambahkan baris ini memecahkan masalah bagi saya:
$ more ~/.bash_profile
export LANG=en_US
Catatan: sejak Git 2.3.1+ (Q1 / Q2 2015), Git akan menambahkan header Accept-Language jika memungkinkan.
Lihat komit f18604b oleh Yi EungJun ( eungjun-yi)
Tambahkan
Accept-Languagesundulan yang menunjukkan bahasa pilihan pengguna didefinisikan oleh$LANGUAGE,$LC_ALL,$LC_MESSAGESdan$LANG.Hal ini memberikan kesempatan kepada server git untuk menampilkan pesan kesalahan jarak jauh dalam bahasa pilihan pengguna.
Anda memiliki tempat untuk git gui atau GUI lainnya ,tetapi tidak untuk baris perintah, mengingat itu adalah salah satu pertanyaan GitSurvey 2010
localization of command-line messages (i18n) 258 3.6%
Tentu saja, sejak 2010, seperti yang po/READMEdijelaskan:
Sebelum string dapat diterjemahkan, string harus ditandai terlebih dahulu untuk diterjemahkan.
Git menggunakan antarmuka internasionalisasi yang membungkus
gettextpustaka sistem , sehingga sebagian besar saran dalam dokumentasi gettext Anda (pada sistem GNUinfo gettextdi terminal) berlaku.
Berlaku sejak git 1.7.9+ (Januari 2012):
Git menggunakan
gettextuntuk menerjemahkan pesan antarmuka yang paling umum ke dalam bahasa pengguna jika terjemahan tersedia dan lokalnya disetel dengan tepat .
Distributor dapat memasukkanPOfile barupo/untuk menambahkan terjemahan baru.
Jadi, jika pembaruan Anda mengacaukan terjemahan, periksa gettextkegunaannya:
Lihat, misalnya, " Variabel Lingkungan Lokal "
Lokal terdiri dari beberapa kategori lokal, lihat Aspek. Ketika sebuah program mencari nilai-nilai dependen lokal, ia melakukan ini sesuai dengan variabel lingkungan berikut, dalam urutan prioritas:
LANGUAGE
LC_ALL
LC_xxx, according to selected locale category: LC_CTYPE, LC_NUMERIC, LC_TIME, LC_COLLATE, LC_MONETARY, LC_MESSAGES, ...
LANG
Variabel yang nilainya ditetapkan tetapi kosong diabaikan dalam pencarian ini.
LANGadalah variabel lingkungan normal untuk menentukan lokal. Sebagai pengguna, Anda biasanya menyetel variabel ini (kecuali beberapa variabel lain telah disetel oleh sistem, di/etc/profileatau file inisialisasi serupa).
LC_CTYPE,LC_NUMERIC,LC_TIME,LC_COLLATE,LC_MONETARY,LC_MESSAGES, Dan sebagainya, adalah variabel lingkungan dimaksudkan untuk menimpaLANGdan mempengaruhi kategori lokal tunggal saja.
Misalnya, asumsikan Anda adalah pengguna Swedia di Spanyol, dan Anda ingin program Anda menangani nomor dan tanggal menurut konvensi Spanyol, dan hanya pesan yang harus dalam bahasa Swedia. Kemudian Anda dapat membuat lokal bernama 'sv_ES' atau 'sv_ES.UTF-8' dengan menggunakanlocaledefprogram. Tapi itu lebih sederhana, dan mencapai efek yang sama, untuk mengaturLANGvariabel kees_ES.UTF-8danLC_MESSAGESvariabel kesv_SE.UTF-8; kedua lokal ini sudah diinstal sebelumnya dengan sistem operasi.
LC_ALLadalah variabel lingkungan yang menggantikan semua ini. Ini biasanya digunakan dalam skrip yang menjalankan program tertentu. Misalnya, konfigurasikan skrip yang dihasilkan olehautoconfpenggunaan GNULC_ALLuntuk memastikan bahwa pengujian konfigurasi tidak beroperasi dengan cara yang bergantung pada lokal.Beberapa sistem, sayangnya, mengatur
LC_ALLdi/etc/profileatau di file inisialisasi yang sama. Sebagai pengguna, Anda harus meng-unset variabel ini jika ingin menyetelLANGdan secara opsional beberapaLC_xxxvariabel lainnya .
LANGdalam sesi bash / shell / DOS yang Anda gunakan git(atau meluncurkan git-guidari), hanya git(atau git-gui) yang akan menggunakan pengaturan khusus itu. Semua program lain akan mewarisi dari variabel lingkungan sistem / pengguna.
GIT default ke bahasa Inggris jika tidak dapat menemukan bahasa Lokal.
Jadi jika Anda ingin GIT dalam bahasa Inggris, cukup sabotase file bahasa yang sedang berjalan. Dalam kasus saya, itu selalu berjalan dengan bahasa Jerman (yaitu: de.msg ).
Jika saya menghapusnya atau mengganti namanya, maka defaultnya adalah bahasa Inggris.

Di sini saya mengganti nama file

C:\Program Files\Git\mingw64\share\locale\$LANG\LC_MESSAGES\git.mo.
/usr/local/Cellar/git/2.21.0/share/locale/.
Seperti yang disarankan Bengt: Tambahkan baris ini ke Anda ~/.bashrcatau ~/.bash_profileuntuk memaksa git menampilkan semua pesan dalam bahasa Inggris:
vim ~/.bashrc- untuk profil ini (jika Anda adalah pengguna ubuntudan Anda mengedit ini, ini hanya untuk pengguna ini); tambahkan baris ini:
# Set Git language to English
#alias git='LANG=en_US git'
alias git='LANG=en_GB git'
#you can add also
LANG=en_GB
dan setelah Anda menutup file, Anda perlu menulis di shell:
source ~/.bashrc
untuk memuat ulang pengaturan baru atau keluar dari terminal dan menghubungkan kembali :)
LANG=en_GBdi ~/.bashrclakukan? Bukankah itu hanya mendefinisikan variabel lokal LANG?
Inilah solusi saya untuk mengubah bahasa git ikuti jawaban ini dan ini
1) nano ~/.bashrc
2) tambahkan alias git='LANG=en_GB git'ke file
2) simpan file
4)source ~/.bashrc
Sekarang git Anda sudah mengubah bahasa. Namun, JIKA setelah terminal restart Anda dan tidak berfungsi lagi, Anda perlu
4.1) nano ~/.profile
4.2) tambahkan source ~/.bashrc
4.3) simpan file
itu akan source ~/.bashrcberjalan setiap kali Anda membuka terminal
Semoga membantu