아.. softtabstop 이란 게 따로 있었군요. 처음 알았습니다. 감사 :D 그런데 help tabstop 했을 때 나오는 문구에서,
Quote:
1. Always keep 'tabstop' at 8, set 'softtabstop' and 'shiftwidth' to 4
(or 3 or whatever you prefer) and use 'noexpandtab'. Then Vim
will use a mix of tabs and spaces, but typing Tab and BS will
behave like a tab appears every 4 (or 3) characters.
이건 좀 문제가 있어 보이지 않나요? 이렇게 했더니만 4칸 들여 쓸 때는 스페이스를 삽입하고, 8칸 들여 쓸 때는 탭이 삽입되네요. (12칸이면 탭하나+스페이스4, 16칸이면 탭 둘...) 이 경우, tabstop=8 인 환경에서 보는 사람에게는 상관이 없겠지만, 별도로 tabstop 을 8이 아닌 다른 값으로 준 사람이 그 화일을 편집하는 경우 들여쓰기가 엉망이 되는군요.
차라리 noexpandtab 대신에 expandtab 을 설정하여서 모든 탭을 스페이스로 치환시켜 버리는게 누구의 편집기에서든 동일하게 보인다는 점에서는 더 나을 것 같습니다. 아니면 그냥 tabstop=4, shiftwidth=4 로 하는 게 위의 인용한 부분보다는 낫겠죠. tabstop 값이 다른 환경에서 봤을 때도 (cat 으로 출력하거나) 최소한 상대적인 들여쓰기는 유지될 테니까요. 제가 뭔가 잘못 짚고 있는 건지도?
아.. softtabstop 이란 게 따로 있었군요. 처음 알았습니다. 감사 :D 그런데 help tabstop 했을 때 나오는 문구에서,
Quote:
1. Always keep 'tabstop' at 8, set 'softtabstop' and 'shiftwidth' to 4
(or 3 or whatever you prefer) and use 'noexpandtab'. Then Vim
will use a mix of tabs and spaces, but typing Tab and BS will
behave like a tab appears every 4 (or 3) characters.
이건 좀 문제가 있어 보이지 않나요? 이렇게 했더니만 4칸 들여 쓸 때는 스페이스를 삽입하고, 8칸 들여 쓸 때는 탭이 삽입되네요. (12칸이면 탭하나+스페이스4, 16칸이면 탭 둘...) 이 경우, tabstop=8 인 환경에서 보는 사람에게는 상관이 없겠지만, 별도로 tabstop 을 8이 아닌 다른 값으로 준 사람이 그 화일을 편집하는 경우 들여쓰기가 엉망이 되는군요.
차라리 noexpandtab 대신에 expandtab 을 설정하여서 모든 탭을 스페이스로 치환시켜 버리는게 누구의 편집기에서든 동일하게 보인다는 점에서는 더 나을 것 같습니다. 아니면 그냥 tabstop=4, shiftwidth=4 로 하는 게 위의 인용한 부분보다는 낫겠죠. tabstop 값이 다른 환경에서 봤을 때도 (cat 으로 출력하거나) 최소한 상대적인 들여쓰기는 유지될 테니까요. 제가 뭔가 잘못 짚고 있는 건지도?
저같은 경우 expandtab도 써봤는데요. 누구의 편집기에서나 동일하게 보이긴 하는 점은 좋지만 makefile이나 python 프로그래밍할 경우는 또 탭이 반드시 들어가야 되기 때문에 더 불편해지더군요. -_-;;
지금은 그냥 다 8로 맞춰놓고 씁니다. depth도 가급적 적게 들어가게 프로그래밍하는게 바람직하고...
노루가 사냥꾼의 손에서 벗어나는 것 같이, 새가 그물치는 자의 손에서 벗어나는 것 같이 스스로 구원하라 -잠언 6:5
au BufNewFile,BufReadPost *.java set cindent shiftwidth=4
au BufNewFile,BufReadPost *.c set cindent shiftwidth=4
au BufNewFile,BufReadPost *.C set cindent shiftwidth=4
au BufNewFile,BufReadPost *.html set cindent shiftwidth=4
전 이렇게 하고있습니다.. 윗분들하고 같네요.. 예전에 어디서 보고 그대로 붙여놓고 쓰고 있습니다..
shiftwidth를 말하는 거 같네요. ^^;;
" 내가 설정해준 옵션
set nu
'*******************
set tabstop=4
set shiftwidth=4
'*******************
set nowrap
set nobackup
colors murphy
'** 사이의 명령을 .vimrc에 넣어주면, 탭과 블럭지정해서 미는 것이
전부 4칸이 됩니다. ^^
... Do It Now!!!
정말 감사합니다~잘 되네요..^^;
정말 감사합니다~
잘 되네요..^^;
참고로 :set sw=4로 줄여 쓸 수도 있습니다. :)
참고로 :set sw=4로 줄여 쓸 수도 있습니다. :)
tabstop은 바꾸지 않는 게 좋습니다.대신 sw(shiftwi
tabstop은 바꾸지 않는 게 좋습니다.
대신 sw(shiftwidth)와 sts(softtabstop) 값만 바꿔주세요.
자세한 설명은 vim에서 :help tabstop 이라고 하면 나옵니다.
저같은 경우도 sw와 sts만 바꿔서 사용합니다.set sts=4
저같은 경우도 sw와 sts만 바꿔서 사용합니다.
set sts=4
set sw=4
이런 식으로 해야 일반적으로 tabsize가 8인 것에도 맞출 수 있죠. :)
[quote="eungkyu"]저같은 경우도 sw와 sts만 바꿔서 사용
아.. softtabstop 이란 게 따로 있었군요. 처음 알았습니다. 감사 :D 그런데 help tabstop 했을 때 나오는 문구에서,
이건 좀 문제가 있어 보이지 않나요? 이렇게 했더니만 4칸 들여 쓸 때는 스페이스를 삽입하고, 8칸 들여 쓸 때는 탭이 삽입되네요. (12칸이면 탭하나+스페이스4, 16칸이면 탭 둘...) 이 경우, tabstop=8 인 환경에서 보는 사람에게는 상관이 없겠지만, 별도로 tabstop 을 8이 아닌 다른 값으로 준 사람이 그 화일을 편집하는 경우 들여쓰기가 엉망이 되는군요.
차라리 noexpandtab 대신에 expandtab 을 설정하여서 모든 탭을 스페이스로 치환시켜 버리는게 누구의 편집기에서든 동일하게 보인다는 점에서는 더 나을 것 같습니다. 아니면 그냥 tabstop=4, shiftwidth=4 로 하는 게 위의 인용한 부분보다는 낫겠죠. tabstop 값이 다른 환경에서 봤을 때도 (cat 으로 출력하거나) 최소한 상대적인 들여쓰기는 유지될 테니까요. 제가 뭔가 잘못 짚고 있는 건지도?
좋은 하루 되세요!
[quote]set expandtab[/quote]expa
expandtab을 세팅하면 <TAB>키에 대해 space를 넣어줍니다.
_____________________________
언제나 맑고픈 샘이가...
http://purewell.biz
[quote="raymundo"][quote="eungkyu"]저같은 경
저같은 경우 expandtab도 써봤는데요. 누구의 편집기에서나 동일하게 보이긴 하는 점은 좋지만 makefile이나 python 프로그래밍할 경우는 또 탭이 반드시 들어가야 되기 때문에 더 불편해지더군요. -_-;;
지금은 그냥 다 8로 맞춰놓고 씁니다. depth도 가급적 적게 들어가게 프로그래밍하는게 바람직하고...
노루가 사냥꾼의 손에서 벗어나는 것 같이, 새가 그물치는 자의 손에서 벗어나는 것 같이 스스로 구원하라 -잠언 6:5
[quote]저같은 경우 expandtab도 써봤는데요. 누구의 편집기에
syntax 폴더의 c.vim 에서만 세팅해주면 c/h/cpp/hpp 파일에만
적용이 됩니다. ^-^);
_____________________________
언제나 맑고픈 샘이가...
http://purewell.biz
[quote="purewell"]syntax 폴더의 c.vim 에서만
~/.vimrc에 autocmd 명령으로 넣으셔도 됩니다. syntax 폴더를 고치는 건 시스템 사용자 전체의 설정을 바꾸는 것이니깐요. 나중에 upgrade할 때마다 일일이 고쳐줘야 하는 것도 문제.
ㅎㅎ
au BufNewFile,BufReadPost *.java set cindent shiftwidth=4
au BufNewFile,BufReadPost *.c set cindent shiftwidth=4
au BufNewFile,BufReadPost *.C set cindent shiftwidth=4
au BufNewFile,BufReadPost *.html set cindent shiftwidth=4
전 이렇게 하고있습니다.. 윗분들하고 같네요.. 예전에 어디서 보고 그대로 붙여놓고 쓰고 있습니다..
그런데? au BufNewFile,BufReadPost 는 머죠?
댓글 달기