답변:
예, listchars를 사용하십시오.
set list
set listchars=tab:>-
이 두 줄을 .vimrc에 넣으면 >
시작 위치와 -
나머지 탭을 통해 탭이 표시됩니다.
(Sidenote : listchars는 후행 공백을 표시 할 수도 있습니다 trail:x
( 후행 공백 x
에 사용하려는 문자로 대체 ).
set listchars=tab:!·,trail:·
하고 싶습니다 . IMHO ·
는 다음보다 훨씬 더 명확합니다 -
. btw (정확하게는 7.3.x라고 생각합니다)를 작동 시키려면 상당히 최근의 Vim 버전이 필요합니다 ...
▸
는보다 약간 작으므로 유니 코드 문자 를 사용하는 것이 좋습니다 >
. 현재 나는 eol을 표시하여 후행 공백을 봅니다 (위의 시도를 할 수도 있음). 내 설정은 다음 set listchars=eol:¬,tab:▸\
과 같습니다.
기본 답변은 :set list
입니다. 그러면 탭이로 표시됩니다 ^I
.
그러나 나는 그 이상을 권장합니다. 그냥 :set list
이 화면에 시각적 정렬을 유지하는 데 실패한다는 점에서 문제가있다. 예를 들면 다음과 같습니다.
%.o: %.cpp
^Ig++ -c $<
당신이 예상 특히, 잘 보이지 않는 g
의이 g++
첫 번째 아래에 표시 p
의 cpp
(가정 tabstop=8
).
따라서, 당신의 제안 .vimrc
이 같은 것을 넣어 :set listchars=tab:␉·
(명확하게하려면, 즉 유니 코드 문자의 수평 표 작성을위한 U가 + 2409 SYMBOL 다음에 U + 00B7 MIDDLE DOT ).
에서 설명했듯이 시각적 정렬이 유지되도록 :help listchars
하는 두 문자 설정입니다 tab:xy
.
tab:xy Two characters to be used to show a tab. The first char is used once. The second char is repeated to fill the space that the tab normally occupies. "tab:>-" will show a tab that takes four spaces as ">---". When omitted, a tab is show as ^I.
위의 예는 다음과 같이 화면에 나타납니다.
%.o: %.cpp
␉·······g++ -c $<
개인적으로, 나는 내 모든 것을 다 사용합니다 listchars
.
:set listchars=eol:⏎,tab:␉·,trail:␠,nbsp:⎵
eol
, 내가 사용 U + 23CE RETURN SYMBOL을trail
, 나는 공간에 U + 2420 심볼을 사용합니다nbsp
, 내가 사용 U + 23B5 BOTTOM 광장 브라켓을이 문자들은 문자 그대로 문서 텍스트에 거의 나타나지 않을 정도로 독특합니다.
이 특수 문자를에 입력하려면에 설명 된대로 삽입 모드에서 vimrc
입력 Ctrl-vu23CE
하십시오 :help utf-8-typing
.
set lcs=tab:├─
가끔 사용하려면 다음 검색 /
명령을 사용하여 문서의 모든 탭을 강조 표시하면됩니다 .
/\t
강조 표시를 제거하려면 간단히 높은 조명 :noh
이없는 짧게 입력하십시오 :nohlsearch
.
" Highlight tabs as errors.
" https://vi.stackexchange.com/a/9353/3168
match Error /\t/
후행 공백과 함께 사용하고이를 영구적으로 만드는 등의 유용한 강조 명령에 대한 자세한 내용은 Vim 위키를 참조하십시오 .
:match Error /\t/
검색 레지스터 및 hlsearch (탭 :match
을 지우려면 입력)와 독립적으로 탭 (또는 해당 사항의 다른 패턴)을 강조 표시 하는 데 사용할 수 있습니다 .
필자는 개인적 으로 들여 쓰기 수준에서 세로 줄을 표시하는 플러그인 indentLine 사용을 좋아합니다 .
들여 쓰기가 중요한 파이썬에서는 특히 큰 도움이됩니다.
무엇보다도 키 조합에 매핑 할 수있는 토글 명령을 제공하므로 필요할 때 끌 수 있습니다.
일반 터미널과 gvim에서 탭을 다르게 표시 할 수 있습니다.
set list!
if has('gui_running')
set listchars=tab:▶\ ,trail:·,extends:\#,nbsp:.
else
set listchars=tab:>.,trail:.,extends:\#,nbsp:.
endif
(다른 사람들이 유용하다고 생각하는 경우 완전성을 추가 함).
retab
파일을 저장할 때마다 모든 탭을 공백으로 변환하도록 구성 할 수 있습니다 .