2017-01-30 6 views
5

가능한 한 엄격한 70 자 여백을 유지하려고합니다. 이를 돕기 위해 현재 줄의 70 번째 문자가 강조되도록 vim을 구성하려고합니다. 이해할 수 있습니다.Vim에서 현재 줄의 70 번째 문자 강조하기

set cursorline 

현재 줄을 강조 표시하는 데 사용할 수 있습니다. 그러나 나는 강조 표시 될 라인의 끝 부분 ()만을 원한다. 이 일을 어떻게 성취 할 수 있습니까?

편집 : cursorcolumn은 내가 찾고있는 것이 아닙니다. 한 문자 (현재 줄의 70 번째 문자) 만 있으면됩니다.

편집 2 : 그림이 도움이 될 것입니다. enter image description here

+0

당신이 비슷한 [링크] (http://stackoverflow.com/을 수행하는 방법을 몇 가지 의도 있습니까 a/41232730/4392605) ([** DEMO **] (https://i.stack.imgur.com/spxxg.gif))? –

+0

@ Meninx- メ ネ ン ン ク ス 정말; 귀하의 예는 하이라이트 흔적을 남깁니다. 커서 커서보다 더 가깝습니다. – Justin

+0

내가하고 싶은 일은 현재 가능하지 않습니다. – mbjoe

답변

5

colorcolumn을 사용하여 "오른쪽 여백"막대를 설정할 수 있습니다.

이것은 Vim 7.3 이전에는 존재하지 않았으므로 기능을 사용할 수있는 경우에만 사용하는 것이 가장 바람직합니다.

if exists('&colorcolumn') 
    set colorcolumn=70 
endif 

나는이 만 삽입 모드에 표시 할 것을 선호하는, 그래서 이것을 사용 :

if exists('&colorcolumn') 
    autocmd InsertEnter * set colorcolumn=80 
    autocmd InsertLeave * set colorcolumn="" 
endif 
당신이 삽입 모드로 전환 할 때 옵션을 설정하고 때 그것을 꺼집니다

삽입 모드를 종료하십시오.

0

당신이 VIM 7.3을 사용하는 경우와 특정 컬럼의 색상으로 설정할 수 있습니다

set colorcolumn=70 
1
:call matchadd('Todo', '\%70c') 

을 당신은 하나의 문자로 하나 개의 탭을 계산하고 싶지 않지만, 당신이 원하는 경우 계정으로 모든 공간을하는 데 소요 :

:call matchadd('Todo', '\%70v') 

당신은 :hi 대신 Todo으로 나열 (색상을 변경, 예를 들어) 다른 하이라이트 그룹을 사용할 수 있습니다.

1
:autocmd CursorMoved * exe 'match IncSearch /\%70v\%' . line(".") . 'l./' 

하이라이트 색은 사용자의 색 구성표에 의해 결정됩니다.

당신은 입력하여 찾을 수 있습니다 하이라이트 그룹 중 하나에 IncSearch을 변경할 수 있습니다

:

:hi