vim 에서 블럭내에 tab 을 space 4칸으로 변경하려면??

trymp의 이미지

vim 에서 코딩할때 tab을 쓰지 말고 space 로 indent 를 해야 하는 경우가 있을때

곧바로 특정 불럭만 tab 을 space 4칸으로 변경하고 싶습니다.

이렇게 runtime 시에 곧바로 적용할 수 있는 방법이 있을까요?

조언해주시면 감사하겠습니다.

세벌의 이미지

해보지는 않았습니다. 구글 검색해보니 아래 링크 나오네요.
도움되시길.
https://www.lesstif.com/system-admin/vim-tab-space-4-18220149.html

김정균의 이미지

:set et si sw=4 ts=4

하신 후에, block 잡으시고 = key 눌러 주시면 됩니다.
다만 auto indent 가 잘 되는 언어에 한해서 입니다. c, c++ 이런 건 잘 되는데 bash 처럼 auto index 가 잘 안되는 경우도 있습니다.

jick의 이미지

위의 김정균님 답변과 비슷한데, 이미 tab을 이용해 작성된 코드(의 일부)를 space로 바꾸고 싶으신 거라면,

:set et ts=4

한 다음, V로 블럭을 잡고 :ret 하시면 해당 부분의 tab이 모두 네 칸짜리 space로 바뀝니다.