端末は、正しい文字を表示する他の端末と同じ設定で誤った文字を表示します。

端末は、正しい文字を表示する他の端末と同じ設定で誤った文字を表示します。

リモートコンピュータでNerdTreeを使用してvimを設定しました。 2つのローカルコンピュータがあります。ローカルコンピュータ(Aなど)からリモートコンピュータでsshを実行すると、NerdTreeのすべてのシンボルが正しく表示されます。ただし、他のローカルコンピュータ(Bなど)からリモートコンピュータにsshを実行すると、シンボルはいくつかの無効な文字として表示されます。私はこれについて検索を試み、見つけることができるさまざまなロケールとエンコーディングを試しました。以下は、ローカルコンピュータとリモートコンピュータの両方の設定です。

ローカルマシンA:

$ stty
speed 38400 baud; line = 0;
eol = M-^?; eol2 = M-^?; swtch = M-^?;
ixany iutf8

$ echo $LANG
en_US.UTF-8

$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.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="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

ローカルマシンB:

$ stty
speed 38400 baud; line = 0;
eol = M-^?; eol2 = M-^?; swtch = M-^?;
ixany iutf8

$ echo $LANG
en_US.UTF-8

$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.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="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

ローカルコンピュータの設定が同じようです。どちらもCentOSスタイルのオペレーティングシステムを実行します。どちらの端末もGnome端末で、文字エンコードUTF-8を使用するように設定されています。私が見ることができる唯一の違いは、コンピュータAがCourierフォントを含むバージョン2.16.0を使用し、コンピュータBが固定幅フォントを含むバージョン2.31.3を使用することです。したがって、マシンBは実際に最新バージョンを使用しています。

リモートシステム:

λ echo $LANG
en_US.UTF-8

λ stty
speed 38400 baud; line = 0;
eol = M-^?; eol2 = M-^?;
-brkint ixany

λ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.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="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

λリモートシステムのマイシンボルが両方の$PS1端末に正しく表示されます。

どうやって進めますか?ローカルコンピュータにどのフォントがインストールされているかが重要ですか?ありがとう

答え1

私はこれを理解しています。これはフォント問題のようです。コンピュータAからコンピュータBにフォントをインストールすると、正常に動作し始めました。

フォントをインストールするために、/usr/share/fontsコンピュータAからコンピュータBにすべてをコピーし、fc-cache /usr/share/fonts説明に従って実行しました。ここ

関連情報