Saya telah menginstal bash shell baru di windows 10. Saya menggunakannya bersama dengan ZSH. Namun, tidak ada karakter utf8 yang berfungsi, mereka muncul sebagai blok persegi. Bagaimana cara mengaktifkan pengkodean karakter utf8 di shell sebagai default? Apakah itu mungkin?
36
chcp 65001
untuk mengubah codepage ke UTF-8 dan mengubah font ke ConsolasSimSun-Ext B
font dan semua karakter ditampilkan dengan benar.Jawaban:
Klik kanan pada bilah judul di bagian atas jendela bash, pilih properti entri. Di jendela pembuka adalah tab di mana Anda dapat mengubah font. Saya mengubah Font menjadi "Source Code Pro" dan ukuran 14.
Terlihat bagus dan semua karakter utf-8 berfungsi.
sumber
Untuk menambah jawaban Doctorj, ada beberapa font yang diinstal secara default yang dapat Anda gunakan (pada Windows 10 bash shell).
Bahasa yang diuji: Bulgaria, Ukraina, Cina Sederhana, Cina tradisional, Denmark, Prancis, Jerman, Italia, Jepang, Kazakh, Korea, Makedonia, Mongolia, Norwegia, Polandia, Portugis, Rusia, Serbia, Spanyol, Swedia.
Font default berikut menampilkan semua karakter yang diamati:
Baik MS Gothic maupun NSimSun
SumSun-ExtB (raster font):
Dengan salah satu font ini, baik Command Prompt dan PowerShell, hal-hal aneh terjadi ketika Anda mengklik karakter non-ASCII, meskipun kembali normal ketika Anda menyorot teks.
Untuk menginstal font: Perhatikan bahwa Anda perlu mengubah font untuk shell Windows yang Anda gunakan, seperti Command Prompt atau PowerShell, bukan cara Linux melalui bash. Tautan ini menjelaskan font mana yang dapat digunakan pada Command Prompt (font monospace, dan cara menginstal dan memilih font untuk Command Prompt): Menambahkan font ke Command Prompt
Untuk informasi tentang cara menginstal font melalui baris perintah pada Windows, lihat pertanyaan dan jawaban ini.
(Catatan: Saya belum memiliki reputasi yang cukup untuk memposting tautan).
sumber
Anda dapat mencoba DejaVu Sans Mono - ini bekerja untuk saya.
sumber
Ini benar-benar lebih banyak komentar daripada jawaban, tetapi karena SE tidak mengizinkan saya untuk berkomentar ...
Anda belum memberikan informasi yang cukup. Unicode menyediakan lebih dari satu juta karakter yang mungkin, yang lebih dari 100.000 karakter telah ditetapkan. (Yang tersisa adalah ketika kita menghubungi makhluk luar angkasa, atau lebih mungkin untuk sistem penulisan Earthlings yang belum dikodekan.) Ini dibagi di antara sekitar 150 skrip: Latin, Sirilik, Arab, Cina ... Tidak ada font yang muncul untuk memasok mesin terbang (gambar karakter) untuk semua karakter tersebut. (Ada satu atau dua yang memasok kotak dengan titik kode di dalamnya, tapi bukan itu yang Anda inginkan.)
Seperti kata grawity lebih dari dua tahun yang lalu, jika Anda mendapatkan kotak di mana Anda mengharapkan satu karakter, maka aplikasi Anda sudah menampilkan Unicode (mungkin pengkodean UTF-8 Unicode). Yang tidak Anda miliki adalah font yang memasok mesin terbang untuk skrip apa pun yang ingin Anda tampilkan. Jika Anda menampilkan bahasa Rusia, Anda ingin font dengan karakter Cyrillic; jika Anda ingin menampilkan bahasa Mandarin, maka Anda memerlukan font dengan karakter tersebut. (Kebanyakan font semacam itu juga akan menampilkan karakter Latin - jenis yang kami gunakan untuk bahasa Inggris - tetapi tidak harus cantik.)
Jadi pertanyaan saya untuk Anda adalah: skrip apa yang ingin Anda tampilkan? Sampai kita tahu itu, semua jawaban akan menjadi tebakan.
BTW, ada beberapa skrip yang cukup rumit, dan hanya beberapa program yang akan menampilkannya dengan benar, bahkan jika Anda memiliki font yang tepat. Di antaranya adalah Burma, beberapa skrip Indic (Devanagari, misalnya), dan Arab (yang ditulis kanan-ke-kiri, dan memiliki karakter yang harus ditampilkan secara berbeda tergantung pada karakter yang berdekatan).
sumber