私のDebian Jessieに問題があります。一般的に私はGUIでtty7を使用しますが、ここではすべてが大丈夫です。ただし、tty1では、ポーランド語文字(UTF-8ファイルから入力して読み取った文字の両方)が垂直ダイヤモンドまたは菱形で表示されます。同様に、すべて白(黒の背景)のみがあります。
◊
私の位置が良いと思います。
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=
tty7のGUIでも同じで、ここではすべてが正常です。私の知識と経験から見ると、tty1が機能するはずです。しかしそれは真実ではない。どのようなヒントがありますか?
答え1
GUIの有効化tty7
tty1
XフォントはLinuxコンソールフォント(512文字の他の文字に限定されています)と共に使用されます。 Linuxコンソールには、Unicodeのあるダイヤモンドの外観(フォントによって異なります)が表示されます。文字を置き換える表示したいコードが正当なUTF-8ではないために表示されます。
ISO-8859-1などを使用すると、この動作が得られます。 ISO-8859-1コードを覚えておきます。0xa0
到着0xff
Unicodeへのマッピング0x00a0
到着0x00ff
。しかし、UTF-8ではバイトが異なって見えます。
「タイプ」ファイル(使用することができますcat
)は、ロケール設定の影響を受けません。これコーディングデータとモデル端末(UTF-8かどうか)は、文字が正常に印刷されるかどうかを決定します。
興味深い(間違った)機能rxvt - UnicodeこれはUTF-8以外のデータを発見し、ISO-8859-1であると仮定して(自動的に)Unicodeに変換することです。ポーランド語はISO-8859-2で、基本的に同じように見えます。
rxvt-unicode を使用して UTF8 以外のポーランド語テキストを調べると、問題のすべての症状が説明されます。
このfile
ユーティリティは、テキストがUTF-8かどうかを合理的に推測できます。
説明が終わった後にコンテンツを表示できるスクリーンショットは次のとおりです。できるLinuxコンソールのデフォルトフォントから取得します。これは以下を使用します。呪いより多くまたは少ないコード0-255を表示するテストプログラム:
まず、UTF-8モードのLatin-1文字:
その後、Latin-1文字があります。いいえUTF-8モード:
UTF-8モードを使用しますが、実行luit
ISO8859-2エンコーディングを使用し、同じテスト手順を使用しますpl_PL
(少しバイパスですが、比較可能です)。
そしてそれを組み合わせるxterm
:
要約すると、いくつかのキャンディーラテン語1LinuxコンソールでUTF-8モードを使用する制限付きフォント文字セット。しかし、ポーランド語(他の文字セット)はうまく扱われているようです。