Tags

커피스크립트 :: join 치환 VIM html function listchars vimrc LCS conceal JavaScript Prototype accessors RUBY pathogen VI 매개변수 Target replaceAll list replace Commonjs nbsp 자바스크립트 Trail Coffeescript SPLIT 루비 arguments

vim, 탭이나 개행문자를 보고싶어요.

list mode

List mode: Show tabs as CTRL-I is displayed, display $ after end of line.

즉, list mode로 들어가면, 탭문자와 줄바꿈 문자가 화면에 표시되게 됩니다. 그리고 list mode는 다음 명령으로 들어갈 수 있습니다.

:set list

'listchars'

list 모드에서, 탭 문자나, 개행문자를 '→' '↵' 와 같은 문자로... 나타나게 할 수 있습니다.(인코딩이 UTF-8인 경우, UTF-8 문자도 사용 가능.)

그리고 탭문자나 개행문자 이외에도 다음과 같은 문자들을 지원합니다.

eol:c 개행문자 'c'로 표시
tab:xy 탭문자 첫 글자는 'x'로 이후는 탭 너비에 따라 하나 이상의 'y'를 표시
trail:c 구문이 끝난뒤 들어간 불필요한 공백문자를 'c'로 표시
extends:c vim이 'nowrap' 상태에서 화면을 뚫고 넘어간 문장이 있는 라인 오른쪽에 'c'표시
precedes:c 마찬가지로 'nowrap' 상태에서 오른쪽으로 길게 편잡중일때 화면에 가려진 왼쪽 영역에 'c'를 표시
conceal:c 'conceallevel'이 1인경우, 숨김문자(?, Concealed Text)영역에 'c' 표시.
nbsp:c 줄 바꿈 없는 공백(Non-Breakable Space)를 'c'로 표시

위 설정들 중 몇몇을 복합적으로 설정하려면 다음과 같은 방법으로 설정합니다.

:set lcs=tab:>-,trail:-
:set lcs=tab:>-,eol:<,nbsp:%
:set lcs=extends:>,precedes:<

기존의 lcs 속성에 새로운 속성을 추가하려면 다음과 같이 입력하면 됩니다.

:set lcs+=nbsp:_

색을 다르게..

탭이나 줄바꿈 기호가 들어간 뒤로 코드가 더 지저분해진 경우 다음의 명령으로, 해당 기호의 색을 배경색과 비슷하게 수정할 수 있습니다.

hi NonText ctermfg=7 guifg=gray
hi SpecialKey ctermfg=7 guifg=gray

"eol", "extends" 그리고 "precedes"는 NonText으로 "nbsp", "tab" 그리고 "trail"은 SpecialKey로 화면 표시 전/배경 색을 수정해 주면 됩니다.

최종 모습

저작자 표시 변경 금지
Trackback 0: Comments 4