$ TERM 환경 변수에 따른 emacs 색상


9

gnu 화면 또는 tmux 세션에서 실행할 때 when과 동일한 색상을 사용하여 emacs를 만들 수 있는지 알고 싶습니다 TERM=xterm. GNU 화면 또는 tmux 세션에서 TERM=screenemacs는 when 과 다른 색상 세트를 사용합니다 TERM=xterm.

예를 들어이면 TERM=xterm-256color전경색 font-lock-comment-face은 'Firebrick'입니다. 그러나이면 TERM=screen-256color'chocolate1'로 설정됩니다.

tmux가 제대로 작동하려면 TERM 변수 를 screen 또는 일부 파생물로 설정 해야 하므로 TERM을 재설정하는 옵션이 아닙니다.


(내 의견을 말하고 싶습니다 ...) emacs를 실행하려고 시도했는지 여부는 분명하지 않습니다 .emacs에 TERM=xterm emacs대한 TERM변수 설정 을 강제하십시오 . 그렇게하면 어떻게됩니까?
verdammelt

나는 지금 그것을 실험하고 있습니다. 아직 나쁜 일이 감지되지 않았습니다. tmux가 xterm 키 시퀀스를 내보내도록 구성 할 수있는 것 같습니다 (TERM = xterm은 여전히 ​​지원되지 않음). tmux FAQ를 기반으로 tmux는 나중에 화면 대신 xterm을 지원할 수 있습니다.
ALiX

답변:


3

의 정의는font-lock-comment-face 컬러 지원을 다양한 사례에 대한 많은 변종이 포함되어 있습니다.

  • chocolate1가 적어도 88 개 색상을 사용할 수 있으며 "배경" "어두운"인 경우 변형이 사용됩니다.
  • Firebrick가 적어도 88 개 색상을 사용할 수 있으며 "배경" "빛"인 경우 변형이 사용됩니다.

차이는 시작 TERM 값에 특별한 의미를 부여하는 코드로 인해 발생 xterm, rxvt, dtterm,과 eterm: 그것은 "빛"배경이 그들을 생각한다.

당신은 사용자 정의 할 수 있어야한다 frame-background-mode*를 그에게 light항상에 값 "빛"색이 변형 사용합니다.

Emacs가 자신 만의 고유 term/screen.el한 기능을 갖추지 못한 경우 적절한 색상 조정 호출을 수행 할 수 있도록 직접 조정해야합니다. 당신의 하나를 사용할 수 이맥스 트렁크 , 또는 나는이 요지 포함 .emacs.d/lisp/term/screen.el(일부 여분의 비트에 의해 제공되는 수정 + 화살표 / 홈 / 엔드 시퀀스 인식 TMUXxterm-keys옵션을)하고, .emacs필요한 변경이 자동으로 부하를 수 있도록 .

물론 TERM 값을 직접 확인 screen하고 xterm비슷한 값 과 다른 값을 수행하는 다른 코드 비트가 여전히있을 수 있습니다 .

* Mx 사용자 정의 변수 프레임 배경 모드

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.