2011-03-08 5 views
7

Ubuntu 10.04 데스크탑 컴퓨터에 GNU Emacs 23 (패키지 emacs23)이 설치되어 있고 Ubuntu 10.04 헤드리스 서버 (X가 설치되지 않음)에 설치된 패키지 emacs23-nox이 있습니다. 두 설치 모두 동일한 ~/.emacs 파일을 사용합니다. 두 컴퓨터에서 이멕스를 -nw으로 실행합니다. 두 컴퓨터에 python-mode이 설치되어 있지 않습니다. 내 생각에이 컴퓨터가 Emacs 23에 포함되어 있습니다.Emacs 파이썬 모드 구문 강조 표시

데스크톱 컴퓨터에서는 Python의 주석 (#으로 시작)이 빨간색으로 강조 표시됩니다. 서버에서 주석은 다른 모든 강조 표시되지 않은 텍스트처럼 일반 흰색 텍스트로 나타납니다. 의견이 서버 (nox) 설치에서 올바르게 강조 표시되지 않는 이유에 대한 제안 사항이 있습니까?

업데이트 : 이것은 터미널 관련 문제인 것으로 보입니다. 서버 컴퓨터에 sshterminator에서 화면 교체 byobu 통해. TERM="xterm-256color" emacs으로 서버에서 이맥스를 실행하면 주석이 강조 표시되지만 다른 모든 색상은 매우 이상하게 보입니다.

업데이트 :`export TERM = "xterm-256color" "를"추가했습니다. "해결했습니다. 구문 하이라이팅은 이제 매우 이상한 색상을 가지고 있습니다 : 보라색 라일락과 밝은 갈색. 내 녹색 현재 줄 강조 표시 줄이 이제는 연한 노란색/녹색입니다. 댓글은 빨간색으로 강조 표시되어 있습니다.

업데이트 : 해결. 설정 TERM="xterm-color"은 주석의 강조를 포함하여 "적절한"색상을 생성합니다. 서버가 주석을 강조 표시하지 않은 TERM에 대해 "screen-bce"값을 기본값으로 사용하고있었습니다.

업데이트 : 미해결.byobu은 다양한 기능 키에 대한 키 바인딩을 제공하여 새 화면 세션을 쉽게 만들고 그 사이를 전환 할 수 있습니다. TERMxterm-color으로 설정하면이 기능 키가 더 이상 작동하지 않습니다. 그래서 나는 이맥스의 파이썬 코드에서 비할 데없는 주석에 만족해야만 할 것이라고 생각한다.

+0

@Michael : 감사합니다 (그것에 대해 몰랐습니다). 하지만 추가 테스트를 거친 후 "미해결"했습니다. 따라서 누군가가 여전히 답을 얻을 수 있습니다. – SabreWolfy

+2

일반적으로 원격 시스템에서 파일을 편집하는 경우 emacs TRAMP 모드를 사용합니다. 그런 식으로 모든 로컬 편집 설정을 사용하고 있습니다. 그것이 당신을위한 선택이 될 것입니까? –

+0

@Jeff : 일반적으로 파일을 편집 할뿐만 아니라 다른 작업을하기 위해 서버에'ssh'를 사용하기 때문에 "클라이언트"의 파일을 편집하여 클라이언트 설정을 사용하는 것은 내가 원하는 것이 아닙니다. 생각해 줘서 고마워. 그것은 내가 좀 더 철저하게 살펴볼 것입니다. – SabreWolfy

답변

2

내부에서 을 으로 실행하는 경우 구문 강조 표시에 올바른 색이 표시됩니다 (파이썬 및 bash의 주석은 #뿐 아니라 모두 빨간색 임). 그리고 기능 키가 작동합니다.

alias emacs='TERM=xterm; emacs -nw'

참조 또한이 게시물 : 내가 이맥스를 실행하기보다는 .bashrc에서 일반적으로 설정에 대한 별칭의 일환으로 TERM을 설정 참고 Terminal emacs colors only work with TERM=xterm-256color

+0

고마워, 방금 다시 확인해 본 결과 확인할 수 있습니다. 색상에 대한 파이썬 구문 강조 표시가 byobu (TERM = xterm)에 올바르게 나타납니다. byobu의 기능 키도 잘 작동합니다. – SabreWolfy

2

테스트를 위해 설치된 프로그램이 없지만 screen-bce와 xterm-color 사이에 기능 키가 정의되는 방식에 약간의 차이점이 있습니다. 아래 단계를 사용하여 screen-bce에서 xterm-color로 설정을 복사 해보십시오. 경우, infocmp 프로그램을 사용

, 두 조건 설정에 대한 terminfo의 설정 사이의 차이를 볼 수 있습니다

infocmp -d screen-bce xterm-color 

당신은 시도 할 변경 사항을 소스로 terminfo 파일을 디 컴파일하고 할 경우, infocmp 사용할 수 있습니다 다른 터미널의 동작을 모방합니다. xterm-color terminfo 파일을 디코딩하여 시작하십시오. kf19의 필드를 통해

infocmp xterm-color > xterm-color.src 

편집의 xterm-color.src과 KF1의 정의를 수정 화면-BCE의 값과 일치합니다. infocmp를 사용하면 screen-bce의 정의를 볼 수 있습니다.

infocmp screen-bce 

마지막으로 tic 프로그램을 사용하여 컴파일하십시오.

tic xterm-color.src 

루트가 아닌 사용자로 실행하면 컴파일 된 terminfo 파일을 $ HOME/.terminfo 디렉토리에 저장합니다.내 시스템에서는 우분투가 자동으로 이것을 선택하는 것처럼 보입니다. 만족 스러우면 표준/usr/share/terminfo에 설치할 수도 있습니다. root로 tic을 실행하면됩니다.

행운을 빈다.

1

난 그냥에

(set-face-foreground 'font-lock-comment-face "red") 

추가 내 .emacs