VcXsrv를 사용하는 urxvt에서 utf-8 문자 세트의 누락된 부분

VcXsrv를 사용하는 urxvt에서 utf-8 문자 세트의 누락된 부분

저는 VcXsrv를 사용하여 몇 대의 Windows 컴퓨터에 연결하는 Arch Linux 서버를 실행하고 있으므로 그래픽 응용 프로그램(그리고 PuTTY 등으로 얻을 수 있는 것보다 더 많은 사용자 정의 터미널)을 실행할 수 있습니다. 그러나 UTF-8 Dingbats 섹션의 urxvt 및 UTF-8 문자에 문제가 있습니다. 즉, 렌더링되지 않습니다. 저는 Dingbats를 사용하여 쉘 프롬프트에 git 상태를 표시하고 명령의 종료 상태도 표시합니다.

locale.conf:

LANG=en_US.UTF-8

로케일 출력:

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=

urxvt 구성(~/.Xdefaults):

URxvt*scrollTtyOutput: false
URxvt*scrollWithBuffer: true
URxvt*scrollTtyKeypress: true
URxvt*scrollBar: false
URxvt*cursorBlink: true
URxvt*background: black
URxvt*foreground: green
URxvt*font: xft:Hack:size=10, xft:Unifont:size=10
URxvt*locale: true
URxvt*skipBuiltinGlyphs: true
URxvt*xftAntialias: true
URxvt*saveLines: 10000
URxvt*eightBitInput: false

urxvt 버전 정보:

rxvt-unicode (urxvt) v9.22 - released: 2016-01-23
options: perl,xft,styles,combining,blink,iso14755,unicode3,encodings=eu+vn+jp+jp-ext+kr+zh+zh-ext,
         fade,transparent,tint,XIM,frills,selectionscrolling,wheel,slipwheel,cursorBlink,
         pointerBlank,scrollbars=plain+rxvt+NeXT+xterm

라틴어, 가타카나, 히라가나, 한글, 중국어(번체, 간체), 키릴 문자, 페르시아어(대부분), 조지아 문자 등을 모두 볼 수 있습니다. 하지만 Dingbats를 인쇄하면 다음과 같이 보입니다.

Dingbat가 렌더링되지 않음

중요한 경우 vim-mode에서 zsh를 사용하고 있습니다.
Google에서 내가 찾을 수 있는 유일한 조언은 내 로케일이 UTF-8로 설정되어 있고 글꼴에 필요한 글리프가 있는지 확인하는 것입니다. 나는 둘 다 보장했다고 믿습니다.

내가 어디에서 잘못되었을 수 있습니까?

답변1

문제는 유니코드의 개인 사용 영역에 있는 문자를 사용하는 데서 발생하며, 그 안에 특별한 내용이 있다는 보장은 없습니다. Windows XP 시스템에서는 다음 명령을 사용하여 글꼴을 명시적으로 편집할 수 있습니다 eudcedit. Mac의 경우 해당 평면의 6400자 중 하나에 Apple 로고가 있으며 간단히 말해서 잘못된 딩뱃을 사용하고 있는 것입니다.

올바른 dingbats는 10진수 9985에서 10175(16진수 2701에서 27bf)입니다.

관련 정보