ViM을 사용합니다. CursorLine을 강조 표시하면 현재 행의 bg 색상이 변경됩니다. 그러나 때로는 텍스트가 읽을 수 없습니다.ViM에서 CursorLine 강조 표시, 행의 시작/끝 부분에서 행 번호 및 공백/탭만 강조 표시합니다.
텍스트 (문자 사이의 공백/탭 수를 텍스트로 계산)를 제외한 전체 줄의 배경색 만 변경할 수있는 강조 표시를 원합니다.
가능합니까? 그렇다면 어떻게?
ViM을 사용합니다. CursorLine을 강조 표시하면 현재 행의 bg 색상이 변경됩니다. 그러나 때로는 텍스트가 읽을 수 없습니다.ViM에서 CursorLine 강조 표시, 행의 시작/끝 부분에서 행 번호 및 공백/탭만 강조 표시합니다.
텍스트 (문자 사이의 공백/탭 수를 텍스트로 계산)를 제외한 전체 줄의 배경색 만 변경할 수있는 강조 표시를 원합니다.
가능합니까? 그렇다면 어떻게?
내가 아는 한, 커서 라인이 어떻게 강조 표시되는지 설정하는 직접적인 지원이 없을 수도 있습니다.
하지만, 원하는 것을하기위한 트릭이 있습니다. 즉, 커서 라인을 강조 표시 한 후 현재 "배경"및 "전경"으로 한 줄의 제목/후행 공백의 색상 설정을 변경할 수 있습니다.
:match NoHighLight /^\s\+|\s\+$/
:highlight NoHighLight guibg=background guifg=foreground
명백한 단점은 "Vim은 윈도우의 경계"에서 "줄의 끝"에서 일부 여전히 cursorline의 설정의 색상으로 페인트됩니다. 당신을 위해 추한 경우, 당신은 단지처럼 그 guifg를 설정하여 cursorline의 하이라이트 설정을 변경할 수 있습니다
:highlight CursorLine guifg=red guibg=background
아마 다른 깔끔한 솔루션은 존재가 있습니다,하지만 그건 내가 지금 가지고 올 수있는 것입니다. :)
희망이 조금 있습니다.
가 나는 해결책 발견 -
@ Zhaojun의 대답에 관하여를 : 그것은 내가 발견 한 솔루션입니다
(도 /^\s\+|\s\+$/
많은, 어쩌면 /^\s\+\|\s\+$/
해야하지 않음) 원하는 것을 아니다 (elflord 색상 단지 예를 들어 컬러)
:highlight CursorLine gui=none guibg=grey10
:set CursorLine
:highlight NoHighLight guibg=background
:match NoHighLight /\S\+\(\s\+\|$\)/
는 그러나 라인의 그 말에 후행 공백을 잘 작동하지 않습니다,하지만 나는 보통 그들에게
삭제 6,는 다음과 내가 사용하는 그들을 볼 수 있도록
:highlight EndSpaces guibg=green
:match EndSpaces /\s\+$/
/^ \ s의 \ + | \ S \ + $ /는 선행 공백과 후행 공백 모두 일치하는 것을 의미한다. "|" "OR"이므로 "\ |"로 이스케이프 처리 할 수 없습니다. 솔루션을 게시하기 전에 몇 가지 기본 테스트를 수행했으며 이는 선행 공백과 후미 공백 모두를 잘 맞 춥니 다. 그래서 왜 그것이 당신을 위해 작동하지 않습니다 모르겠어요. 어쩌면 여기에 텍스트 일부만 붙여 넣을 수 있기 때문에 이유를 알아낼 수 있습니다. – Zhaojun
'|' (예 : help regex,/|,/\\ |) 일부 예제 코드 : "os.environ.keys()에서 e에 대해 os \ – pingi
"|"에 대한 잘못된 진술을 한 것을 유감스럽게 생각합니다. 귀하의 질문에 대한 좀 더 간단한 해결책은 "guifg"를 다른 색으로 설정하고 "guibg"를 손대지 않게 할 수 있습니다. like : : highlight CursorLine guifg = red guibg = background 이 솔루션에서는 모든 공백이 배경색으로 표시되므로 모든 공백이 무시되므로 공백은 전혀 일치하지 않습니다. – Zhaojun