어떤 이유로 Vim은 모든 내 의견이 모든 들여 쓰기를 제거해야한다고 생각합니다. #
줄의 시작 부분에 추가 하면 갑자기 모든 선행 공백이 제거됩니다. 이걸 어떻게 막을 수 있습니까?
나는 Janus와 NERDtree를 설치했습니다 .vimrc
.
답변
나는 “만약 모든 경우를 대비하여”대답에 만족하지 않습니다. 나는 어떤 것들이 잘못되었는지, 어떻게 설정되었는지를 고집합니다. 여기에 언급 된 모든 관련 설정의 값과 마지막 설정 위치를 보여주는 명령이 있습니다. Last set from
다음 줄 이 없으면 기본값입니다. set
올바른 기본값을 지정할 필요가 없습니다 .
:verbose set autoindent? smartindent? cindent? cinkeys? indentexpr?
noautoindent
nosmartindent
cindent
Last set from ~/.vim/vimrc
cinkeys=0{,0},0),:,!^F,o,O,e
Last set from ~/.vim/vimrc
indentexpr=
Press ENTER or type command to continue
참조 : http://vimdoc.sourceforge.net/htmldoc/options.html#:set-verbose
set smartindent
플러그인에서 제거 하고 내 작업에 추가하기 위해해야 할 일은 다음 과 ~/.vim/vimrc
같습니다.
set cindent cinkeys-=0#
set expandtab shiftwidth=4 tabstop=4 softtabstop=4
답변
이것은 또한 싸웠고, 마침내 이겼다고 생각합니다. 문제는 (플러그인 / 구문으로) 동작을 재정의 할 수있는 12 가지 방법이 있다는 것입니다.
전투에서 승리하기 위해 사용했던 모든 설정은 다음과 같습니다.
set nosmartindent
set cindent
filetype plugin indent on
set cinkeys-=0#
set indentkeys-=0#
autocmd FileType * set cindent "some file types override it
를 사용하면 autocmd
첫 번째 set cindent
는 필요하지 않지만 동작이 사라질 때까지 줄을 계속 추가 한 것 중 하나입니다.
답변
당신은 체크 아웃 할 수 있습니다 빔 위키 들여 쓰기 소스 코드 페이지 체크 아웃 방법 ‘자동 들여’작품.
답변
이 답변을 참조하십시오 :
http://vim.wikia.com/wiki/Restoring_indent_after_typing_hash
다음과 같이 수정하십시오.
set nosmartindent
set cindent
set cinkeys-=0#
set indentkeys-=0#
또는:
:inoremap # X<BS>#
답변
댓글을 달아 문제를 해결했습니다 set smartindent
.