터미널에서 유니코드 문자를 표시하는 데 문제가 있습니다. LOCALE/LANG 환경 변수를 en_US.utf8로 설정했습니다.
locale
LANG=en_US.utf8
LC_CTYPE=en_US.utf8
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=
echo -e '\xe2\x82\xac'
���
내가 찾은 모든 것은 내가 수행한 LANG 및 LOCALE 변수를 설정하는 것이라고 말했지만 문제는 지속됩니다. locale -a
올바른 로캘을 사용할 수 있음을 표시합니다.
Laptop:~:0:2030$ locale -a | grep utf
de_AT.utf8
de_BE.utf8
de_CH.utf8
de_DE.utf8
de_LI.utf8
de_LU.utf8
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN.utf8
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM.utf8
en_ZW.utf8
es_AR.utf8
es_BO.utf8
es_CL.utf8
es_CO.utf8
es_CR.utf8
es_DO.utf8
es_EC.utf8
es_ES.utf8
es_GT.utf8
es_HN.utf8
es_MX.utf8
es_NI.utf8
es_PA.utf8
es_PE.utf8
es_PR.utf8
es_PY.utf8
es_SV.utf8
es_US.utf8
es_UY.utf8
es_VE.utf8
fr_BE.utf8
fr_CA.utf8
fr_CH.utf8
fr_FR.utf8
fr_LU.utf8
ga_IE.utf8
nl_AW.utf8
nl_BE.utf8
nl_NL.utf8
pl_PL.utf8
또한 이것이 CLI에만 국한되지 않는다는 것도 확인했습니다. 예를 들어 u+2713
VIM(내가 많이 사용하는)에서 작업을 수행하면 <?>
문자 출력도 제공됩니다.
gnome-terminal 옵션에서 기본 시스템 글꼴을 사용하도록 설정했지만 도움 없이 목록에 있는 모든 글꼴을 시도했으며 "터미널 유니코드 글꼴"을 검색하면 LOCALE의 loop/lang 을 설정하라는 메시지만 계속 표시됩니다.
--
편집: 아래 제안된 대로 로케일/언어를 en_US.UTF-8로 변경했지만 문제가 해결되지 않았습니다.
Laptop:~:0:2013$ locale
LANG=en_US.UTF-8
LANGUAGE=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=
Laptop:~:0:2014$ echo -e '\xe2\x82\xac'
���
답변1
해결책은 훨씬 간단합니다. gnome-terminal의 GUI 설정으로 이동하여 터미널 -> 문자 인코딩 설정 -> UTF-8에 액세스해야 했습니다.
-- 기본값으로 두세요우분투(슬프게도 이것이 SE 포럼에서 배포판 관련 솔루션이라는 사실을 알게 되었습니다.)
gconftool --set --type=string /apps/gnome-terminal/profiles/Default/encoding en_US.UTF-8
답변2
나는 또한 같은 문제에 직면했다.터미널->문자 인코딩 설정->유니코드(UTF-8)올바른 설정. 인코딩을 다른 것으로 설정한 다음 다시 UTF-8로 설정하여 문제를 해결했습니다. 보이는 문자는 즉시 변경되지 않았지만 새로 입력한 문자가 올바르게 표시되기 시작했습니다. 아무것도 다시 시작할 필요가 없습니다.