Odpowiedzi:
Możesz użyć Ctrl+Ddo utworzenia kopii zapasowej jednego tabulatora. To faktycznie przesuwa całą linię do lewego tabulatora; Ctrl+Trobi to samo po prawej stronie. Zauważ, że te naciśnięcia klawiszy działają tylko w trybie Wstaw (użyj <<
i >>
dla odpowiednika w trybie Polecenia).
tl; dr: set tabstop=4 softtabstop=-1 shiftwidth=0 expandtab
skrócona forma: set ts=4 sts=-1 sw=0 et
Jeśli ustawisz softtabstop
(lub sts
) -1
, automatycznie zachowa się tak samo jak tabstop
( ts
), co zaoszczędzi ci kłopotów, jeśli często zmienisz tabulację. Ustawienie shiftwidth
( sw
) na 0
powinno również sprawić, że będzie to samo tabstop
.
shiftwidth
sw
Liczba spacji do użycia dla każdego kroku (automatycznego) wcięcia. Używany do
cindent
, >>, <<, itd.
Kiedy wyzerowaćtabstop
zostanie wykorzystana wartość.
tabstop
ts
Liczba spacji, dla których liczy się a. Zobacz także : polecenie retab i
softtabstop
opcja.
softtabstop
sts
Liczba spacji, dla których Tabliczy się podczas wykonywania operacji edycji, takich jak wstawianie a Tablub używanie BS. To uważa jak Taby są wkładane, podczas gdy w rzeczywistości połączenie przestrzeni i S stosowane. Jest to przydatne, aby utrzymać
tabs
ustawienie na standardowej wartości, a jednocześnie móc edytować tak, jak jest ustawionests
. Gdysts
jest ujemna,shiftwidth
używana jest wartość . Pozwoli ci to zaoszczędzić trochę kłopotów, jeśli często zmieniasz tabstopsy. Gdyexpandtab
nie jest ustawiony, liczba spacji jest minimalizowana za pomocą Tabs.
expandtab
et
W trybie wstawiania: Użyj odpowiedniej liczby spacji, aby wstawić. Przestrzenie są wykorzystywane w tiret z >i <poleceń, a kiedy
autoindent
jest włączone. Aby wstawić prawdziwą kartę, gdyexpandtab
jest włączona, użyj Ctrl- V Tab. Zobacz także : retab
Napisałem GreedyBackspace.vim dla kogoś, kto chciał czegoś takiego. Nie używam go osobiście, więc minęło trochę czasu, odkąd go zaktualizowałem. Jednak ostatnio nie otrzymałem żadnych raportów o błędach.
Kilka opcji:
najprostszym sposobem jest <<
powtórzenie za pomocą.
Czy sprawdziłeś za pomocą ustawienia kart rozwijanych w VIM?
:set noet
Zwykle wolę trzymać karty podczas pracy nad plikami.
Gdy jest to wymagane, zamieniam tabulatory na 4 spacje lub tyle, ile potrzeba.
:%s/<ctrl+V><tab>/ /g
----
Jako niewielki bonus, plik źródłowy jest krótszy o 3 znaki na zakładkę :-)
Nie sądzę, że jest jakiś sposób. Gdy klawisz tabulacji zostanie rozszerzony do czterech spacji, vim nie będzie wiedział, że kiedykolwiek był tabulatorem.