텍스트 터미널의 Emacs에서 이탤릭체(rxvt-unicode)

텍스트 터미널의 Emacs에서 이탤릭체(rxvt-unicode)

저는 urxvt에서 실행되는 Emacs를 사용하고 있습니다. 터미널에서는 기울임꼴이 지원되지만 Emacs에서는 기울임꼴을 사용할 수 없습니다.

이것은 내 현재 설정입니다.

  • 아직 설정하지 않았 $TERM으므로 모두 기본값입니다 rxvt-unicode-256color.
  • ~/.Xdefaults정의 URxvt.font: xft:Inconsolata:size=15는 터미널 글꼴입니다.
  • echo "\e[3mitalics\e[m"쉘에서 실행하면 생성됩니다.italics이므로 터미널에 이탤릭체로 표시됩니다.하다기본적으로 일하세요.

italic"기울임꼴" 글꼴을 사용자 정의할 때 oblique, normal, 또는 roman속성 값을 선택해도 아무런 차이가 없으며 Slant속성을 전혀 설정하지 않아도 아무런 차이가 없습니다. 나는 또한 그것을 내에서 Slant명시적인 정의와 결합하려고 시도했지만 아무 소용이 없었습니다.URxvt.italicFont~/.Xdefaults

굵은 글씨는 잘 작동하지만 이탤릭체는 전혀 작동하지 않습니다. 어떤 아이디어가 있나요?

답변1

즉, 현재 버전의 Emacs(23.2에서 확인)를 사용할 수 없지만 가능한 해결 방법은 아래를 참조하세요.

더 긴 이야기: 기울임꼴 지원은 다음과 같이 코딩되어 있습니다. 용어 정보sitm(이탤릭체 입력) 및 ritm(이탤릭체 종료) 기능 으로 데이터베이스 (termcap 호환성 ZH이라고도 함 ZR)는 다음을 통해 터미널이 이를 지원하는지 확인할 수 있습니다.

infocmp $TERM | egrep '(sitm|ritm)'

이것이 없으면 rxvt-unicode-256color터미널 설명은 ncurses 라이브러리에 터미널의 기울임꼴 기능에 대한 정보를 제공하지 않으며 이를 추가해야 할 수도 있습니다. 그렇지 않으면 TTY 응용 프로그램에서 기울임꼴을 사용할 수 없습니다.

그러나 터미널 디스플레이를 관리하는 기능 turn_on_face(Emacs 소스 코드의 파일 src/term.c1919--2012 라인)은 이탤릭체를 지원하지 않습니다. 즉, 얼굴의 굵게/흐리게/깜빡임/밑줄 속성을 확인합니다. 실제로 .txt 에는 "기울임꼴" 속성이 인코딩되어 있지 않습니다 struct face.

실제로 내 Emacs(Ubuntu 11.04 natty의 버전 23.1)는 기울임꼴 리터럴(X11에서는 올바르게 표시됨)을 다음과 같이 표시합니다.밑줄 친TTY에서. (즉, 밑줄을 신경쓰지 않는다면 터미널의 terminfo 설명을 변경하여 밑줄 입력/종료 대신 이탤릭체 입력/종료 이스케이프 시퀀스를 사용하고 이탤릭체를 얻을 수 있습니다.)

답변2

다른 답변이 오래되었기 때문에 이 답변을 추가하고 있습니다. Emacs 24.5는 터미널에 기울임꼴을 올바르게 표시합니다.

여기에 이미지 설명을 입력하세요.

이것은 emacs -nw터미널 ( )에서 실행되는 emacs 24.5입니다. 터미널은 이고 uxvrt내 설정은 .Xdefaults다음과 같습니다.

URxvt*termName: rxvt-unicode-256color
URxvt.font: xft:DejaVu Sans Mono:size=9

답변3

emacs 정보 이탤릭체는 이 기능을 제공하는 터미널 에뮬레이터에서 사용할 수 없습니다.이맥스 버그 #9652Chong Yidong이 2012년 6월 10일에 수정했습니다.

그러나 수정 사항은 출시된 emacs 버전에는 없지만 예를 들어 emacs-snapshot 패키지에는 있습니다.emacs.naquadah.org.

관련 정보