Linux sanal terminalinde Unicode nasıl görüntülenir?


19

Unicode'da herhangi bir verinin okunması Linux terminalinde (X pencereleri olmadan açılan sanal terminal anlamına gelir) düzgün görüntülenmez.

Okumayı burada bir tartışmaya gibi programlar yükleyerek bu JFBTERM , ve merak ettim bu yüzden yapılandırmak için herhangi bir yolu (consolefonts?) Düzgün herhangi bir ekstra yazılım olmadan unicode işlemek için, terminal yoksa o çalışır.

Windows terminallerinde (gnome terminali, xterm, vb.) Şöyle görünür:

gnome-terminal

Sanal terminalde şöyle görünür:

vt

JFBTERM ile sanal terminalde şöyle görünür:

jbfterm

İşte çıktı çıkışının bir ekran görüntüsü locale:

yerel ayar

İşte çıktı showconsolefont:

showconsolefont

Herkes sadece varsayılan sanal terminal ile bunu başarmanın mümkün olup olmadığını biliyor mu?

Yanıtlar:


5

Konsol yazı tipi, farklı gliflere 512'ye kadar (bence ya da buna benzer bir şey) kadar yazı tipi yükleyebilir; bununla birlikte genellikle sadece 256 gliftir.

200'den az karmaşık olmayan sembol kullanan Latin, Kiril veya diğer dilleri görüntülemek sorun değil.

Bununla birlikte, karmaşık komut dosyaları veya çok sayıda farklı simgeye (Japonca gibi) ihtiyaç duyan komut dosyaları için, bunu işlemek için fazladan bir düzen kullanmaktan başka şansınız yoktur.

512 sınırının ASCII ve her iki Kana seti için yeterli olması durumunda, genişlik sorunu olduğunu unutmayın.

CJK ve Kana bir kareye sığar, Latin harflerinin iki katı genişliğindedir. Bu, konsolun kutudan çıkabileceği bir şey değil.

Eski ve çirkin “Halfwidth Katakana” ya başvurabilirsiniz (ve hatta böyle bir şeyin eski bir yazı tipini bile bulabilirsiniz) veya konsolunuzu 40 sütun genişliğine ayarlayabilir ve Latin harfleri Kana kadar geniş olabilir.

Kana ile böyle bir konsol yazı tipi bilmiyorum; kendiniz çizmelisiniz (bunu yapmak için araçlar vardır ve sadece bitmap japon yazı tipinin noktalarını kopyalayabilirsiniz.

Ayrıca, iconvkana'yı ASCII'ye çevirmek için de kullanabilirsiniz .


3

Aslında bu karakterlere sahip bir yazı tipine ihtiyacınız var. Örneğin Arch Linux önerir Lat2-Terminus16.

Bunu denemek için, sadece sanal bir konsolda aşağıdaki komutu: setfont Lat2-Terminus16.

Geri kalanlara gelince, çoğu modern dağıtım zaten onu kutudan çıkarıyor.


2

Buna ek olarak LANG/LC_ALL, stty iutf8terminale ne yapacağını söylemek için gereklidir, setfontdaha sonra kullanışlı bir yazı tipi ve eşleme yüklemeniz gerekebilir . Hala sorunlarınız varsa çekirdek yapılandırmanızı CONFIG_NLS_xxayarlar için kontrol edin , modprobe nls_utf8otomatik olarak yüklenmezse yapmanız gerekebilir (bence bu sadece Unicode dosya adları için gereklidir).

Bazı Linux dağıtımları sağlamak unicode_startve unicode_stopkomut bu otomatikleştirmek için.

lessSorunlara neden olursa , ortam değişkeninin LESSCHARSETayarlanmasını (veya yanlışsa ayarlanmasını) gerektirebilir.

Markus Kuhn'un Unix / Linux için UTF-8 ve Unicode SSS değeri paha biçilemez.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.