␣(U+2423)와 같은 유니코드 문자를 각각 +2E24)로 바꿔서 잘림 방지 공백(U+00A0)과 좁은 잘림 방지 공백(U+202F)을 구별하기 위해 Vim에서 비표준 공백을 표시하고 싶습니다. .
조사한 후, 제가 할 수 있는 최선은 다음 명령을 사용하여 두 가지 금단어 없는 공백 유형 모두에 대해 동일한 대체 문자를 표시하는 것이었습니다.
:set list
:set listchars=tab:▸\ ,eol:¬,trail:\ ,nbsp:␣
따라서 listchars nbsp 매개변수는 표준 공백과 좁은 줄바꿈 방지 공백을 구분하지 않습니다. 또한 제대로 작동하려면 Trail 매개변수도 필요합니다.
해결책이 있나요?
답변1
구문 일치와 다음을 사용할 수 있습니다 conceal
.
set conceallevel=1
syn match NBSP '\%xa0' conceal cchar=␣
syn match NarrowNBSP '\%u202F' conceal cchar=⸤
효과:
을 사용할 수도 있습니다 set conceallevel=2
.
conceal
커서가 위치한 줄에는 대체 내용이 표시되지 않습니다. 해당 세트의 경우concealcursor
:
set concealcursor=n