GNU 화면에서 vim 구문 강조 색상 변경


6

GNU 화면 세션에서 vim을 사용하려고하지만 화면에서 vim을 열 때마다 구문 강조 표시가 GNU 화면 외부에서 vim을 열 때와는 완전히 다른 색상을 사용합니다.

vim이 화면에서 열 때 구문 강조 색상을 변경하는 이유는 무엇이며 어떻게 수정합니까?

참고 : iTerm2 (OS X)에서 spf13-vim을 사용하고 있습니다.

편집 :이 두 이미지는 일반 bash에서 vim을 사용할 때와 화면에서 사용할 때 차이점을 보여줍니다.

  • 표준: 일반 Vim

  • 내부 화면 : 화면 내부의 vim


여기에있는 지침을 따르십시오 : robotsrule.us/vim
Heptite

결과는 같습니다. 실제로,이 페이지의 지침은 모든 것이 색상 대신 ANSI 이스케이프 시퀀스로 나오도록합니다 =
RenatoUtsch

작동시킬 방법을 찾으셨습니까?
Sam

아니요, tmux를 사용하기 시작했으며 완벽하게 작동했습니다. 그리고 tmux는 화면보다 훨씬 우수하므로 실제로는 더 큰 이익을 얻었습니다.
RenatoUtsch

답변:


3

vim뿐만 아니라 모든 프로그램에서 발생한다는 점을 제외하고는 비슷한 증상이 나타났습니다. 나를위한 해결책은 최신 버전의 화면을 설치하는 것이 었습니다. (byobu의 백엔드로 GNU 화면을 사용하고있었습니다.) Macports "포트 설치 화면"을 사용하여 화면을 설치했지만 어떤 방법으로도 충분하다고 가정합니다.

내 시스템에서 /usr/bin/screen --version보고되었습니다 4.00.03 (FAU) 23-Oct-06. 그러나 새로운 스크린은보고한다 4.02.01 (GNU) 28-Apr-14. 버전 업그레이드가 핵심 단계인지 또는 Macports 화면이 어떻게 다르게 구성되었는지 확인할 수 없습니다.


1
이것은 homebrew 와도 함께 작동합니다. brew install screen
FelikZ

3

TERM환경 변수를 보았습니다 . 화면을 실행하면이어야합니다 screen-256color. 따라서이 명령을 실행 해보십시오.

$ TERM=screen-256color vim

그래도 도움이되면 자동으로 screen올바르게 설정되도록 설정을 변경해야합니다 TERM. ( screen구성에 대해 잘 모르겠고 사용 tmux하고 올바로 설정하여 해결 된 비슷한 문제가 발생했습니다 TERM)


TERM 변수를 iTerm2가 기본적으로 사용하는 것과 동일한 변수 ( xterm)로 변경하려고 시도했지만 작동하지 않았습니다. screen-256color작동하지 않았다.
RenatoUtsch

@RenatoUtsch, Linux 컴퓨터에서 몇 가지 테스트를 수행하여 더 많은 아이디어를 얻었습니다. screen터미널이 256 색상을 지원하지 않는다고 생각하면 동작이 다릅니다. 따라서 먼저 screen다음 명령으로 실행 을 시도한 TERM=xterm-256color screen다음 화면에서 vim을 다음과 같이 실행하십시오 TERM=screen-256color vim.
Dmitry Frank

결과는 같습니다. 강조 표시는 내 질문에 추가 한 이미지에서 변경되지 않았습니다.
RenatoUtsch

흠, 내 컴퓨터에, 내가 가진 화면을 실행하면 TERM=xterm screen, 다음 TERM=screen-256color vim, 색상은 못생긴. screen터미널이 256 색을 지원한다고 생각하도록 실행 하면 색상이 좋습니다. 더 이상 정확한 아이디어가 없습니다. : 나는 이미이 쉽게 googleable 링크를 본 적이 가정 askubuntu.com/questions/87169/using-gnu-screen-with-256-colorsrobotsrule.us/vim
드미트리 프랭크

1
내 문제는 달랐다 screen자체가 약간의 색상을 변경 (예를 들어, 사용자 정의 배쉬 프롬프트가 오렌지색에서 빨간색으로 갔다)하지만 이상한 실행 vim에있는 것은 screen내 사용자 지정 색상을 사용했다. 답이 아닌 의견 만 : 제안 된 명령 TERM=xterm-256color screen이 저에게 효과적이었습니다. 이 파일을 화면 구성 파일에 추가하는 방법을 찾을 수 없으므로 별명을 지정했습니다 alias screen='TERM=xterm-256color screen'. 화면 버전의 4.00.03 (FAU) 23-Oct-06오라클 리눅스 2.6.32-431.5.1.el6.x86_64
lessthanideal

0

너무 늦지 않기를 바랍니다.

일반적으로 ~ / .vimrc에 줄이있을 수 있습니다

colorscheme yourColorScheme

여기서 yourColorScheme은 / usr / share / vim / vim80 / colors /에서 .vim 확장자없이 찾을 수있는 .vim 색상 구성 파일 중 하나입니다. 예, / usr / share / vim / vim80 / colors / blue를 사용하고 싶습니다 .vim 구성 파일

colorscheme blue

이 줄이 .vimrc로 작성되지 않은 경우 vim은 기본 색상 구성 파일을 선택하므로 화면을 사용하는 동안 선택 항목이 다를 수 있습니다.

파일 끝에이 줄을 추가하면서 동일한 문제가 발생하여 해결했습니다.

유일한 불쾌한 점은 / usr / share / vim / vim80 / colors /에 나열된 모든 구성을 시도하여 좋아하는 것을 찾아야한다는 것입니다 (~ / .vimrc를 열어서 터미널을 여는 것이 좋습니다 다른 색소를 테스트하기 위해, 당신이 좋아하는 좋은 구문 색을 보여주는 파일을 vim하는 두 번째 터미널, 그리고 화면을 시작하고 같은 파일을 vim하여 새로운 구문 색을보고 비교하는 세 번째와 세 번째)

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