Vim으로 파이썬 코드를 편집 합니다.
tab키를 사용하면 들여 쓰기를 위해 4 개의 공백이 삽입됩니다. 하나의 “Backspace”(?) 스트로크를 사용하여 공백을 삭제하려면 어떻게해야합니까?
그것에 대한 “설정”옵션이 있어야합니다 …
내 .vimrc는 다음과 같습니다.
set autoindent
set ts=4
set sw=4
set et
답변
Ctrl+D하나의 탭 정지를 백업하는 데 사용할 수 있습니다 . 이것은 실제로 전체 줄을 왼쪽의 탭 정지로 이동시킵니다. Ctrl+T오른쪽에도 같은 일을합니다. 참고 삽입 모드에서 (사용이 키 입력에만 작업 <<
및 >>
명령 모드에서 등가물은).
답변
set softtabstop=4
답변
tl; dr : set tabstop=4 softtabstop=-1 shiftwidth=0 expandtab
짧은 형식: set ts=4 sts=-1 sw=0 et
설명
로 설정하면 softtabstop
(또는 sts
) -1
자동으로 tabstop
( ts
) 와 동일하게 동작하므로 탭을 많이 변경하면 번거 로움이 줄어 듭니다. shiftwidth
( sw
)를 설정 0
하면 효과적으로 동일하게 만들어야합니다 tabstop
.
상세히
shiftwidth
sw
(자동) 들여 쓰기의 각 단계에 사용할 공간 수입니다. 에 사용
cindent
, >>, <<, 등
제로 때tabstop
값이 사용됩니다.
tabstop
ts
파일에서 a가 계산하는 공간 수입니다. : retab 명령 및
softtabstop
옵션 도 참조하십시오
.
softtabstop
sts
자리의 수있는 Tab삽입과 같은 편집 동작들을 수행하기위한 계산하는 동안 Tab또는 사용 BS. 그것은
느낌 처럼 TabS가 삽입되는 사실 공간과의 혼합 사용하는 동안. 이tabs
설정을 표준 값 으로 유지하면서 로 설정 한대로 편집 할 수 있으면 유용 합니다sts
. 때는
sts
음수의 값이shiftwidth
사용된다. tabstops를 많이 변경하면 번거 로움을 덜어줍니다. 때는expandtab
설정되지 않으며, 공간의 수는 사용함으로써 최소화 Tab들.
expandtab
et
삽입 모드에서 : 적절한 수의 공백을 사용하여을 삽입하십시오. 공백은 >및 <명령과 함께 들여 쓰기에 사용
autoindent
됩니다.expandtab
켜져 있을 때 실제 탭을 삽입하려면 Ctrl-를 사용하십시오 V Tab. 참조
: retab
답변
나는 이것을 원했던 누군가를 위해 GreedyBackspace.vim 을 썼습니다 . 개인적으로 사용하지 않으므로 업데이트한지 오래되었습니다. 그래도 최근에 버그 보고서를받지 못했습니다.
답변
몇 가지 옵션 :
- 모든 공백을 ‘리탭’하여 탭으로 대체 할 수 있습니다. 그렇게하면 쉽게 삭제할 수 있습니다.
- 당신은 (테스트되지 않았으므로 여기서 아이디어를 제안하고 있습니다) 일반 모드에서 백 스페이스 키의 4 배를 ‘실행하는’기능을 만들 수 있습니다. 그런 다음 무언가에 매핑하십시오. 그러나 공백이나 중요한 문자를 삭제할지 여부를 알 방법이 없으므로 잠재적으로 안전하지 않습니다.
- ‘4X’는 마지막 4자를 삭제합니다 (작고 크지 않은 X는 작고 Del 키처럼 작동합니다).
답변
가장 쉬운 방법은 <<
, A를 반복.
답변
VIM 의 확장 탭 설정을 사용하여 확인 했습니까 ?
:set noet
파일 작업을하는 동안 탭을 유지하는 것이 좋습니다.
필요할 때 탭을 4 칸 또는 필요한만큼 교체합니다.
:%s/<ctrl+V><tab>/ /g
----
작은 보너스로 소스 파일은 탭당 3 자씩 짧아집니다 :-)