내 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 콘솔에는 유니코드가 있는 다이아몬드 모양(글꼴에 따라 다름)이 표시됩니다.문자 바꾸기표시하려는 코드가 합법적인 UTF-8이 아니기 때문에 표시됩니다.
ISO-8859-1 등을 사용하면 이 동작을 얻을 수 있습니다. ISO-8859-1 코드를 기억하실 것입니다.0xa0
도착하다0xff
유니코드에 매핑0x00a0
도착하다0x00ff
. 그러나 UTF-8에서는 바이트가 다르게 보입니다.
"유형" 파일(사용될 수 있음 cat
)은 로케일 설정의 영향을 받지 않습니다. 이것코딩데이터와모델터미널(UTF-8 여부)은 문자가 정상적으로 인쇄되는지 여부를 결정합니다.
흥미로운(잘못된) 기능rxvt-유니코드UTF-8이 아닌 데이터를 발견하고 ISO-8859-1이라고 가정하고 (자동으로) 유니코드로 변환한다는 것입니다. 폴란드어는 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 모드를 사용하는 제한된 글꼴 문자 집합입니다. 하지만 폴란드어(다른 문자 집합)는 잘 다루어진 것 같습니다.