Automatisches Einrücken (autoindent) in vim ausschalten

Leider ist in vim per Default autoindent aktiviert. Nervt allerdings gewaltig, vor allem wenn man per Copy & Paste einen Text aus einer anderen Quelle einfügt. Dann macht vim nämlich in jeder bereits eingerückten Zeile noch eine Einrückung hinzu. Noch dazu per Default keinen Tab – wie sich das gehört – sondern 8 Leerzeichen. (Aber das ist ein anderes Thema ...)

autoindent permanent ausschalten

Man öffnet die /etc/vim/vimrc (natürlich mit vim :-) und ersetzt die Zeile
set autoindent
durch
set noautoindent

autoindent von Fall zu Fall ein-/ausschalten

Zum Aktivieren in vim benutzt man den Befehl
:set autoindent
bzw. zum Deaktivieren
:set noautoindent


Tobias Klausmann schrieb dazu:

Es geht (wie immer) kürzer:
:set noai

Aber halt! Es geht auch *besser*! Manchmal beim Coden ist autoindent durchaus angnehm und gewünscht. Und deswegen gibt's pastetoggle:
:set pastetoggle <F11>

Jetzt kann man mit F11 vim sagen, dass man grade pastet und er nicht umformatieren soll. Mit nochmal F11 ist es wieder aus. Praktischerweise geht das in jedem Modus (also auch im Insertmode). Und man kann natürlich auch eine andere Taste als Key benutzen Und es gehört sowieso in die vimrc.


http://vim.wikia.com/wiki/Toggle_auto-indenting_for_code_paste
http://vim.wikia.com/wiki/Category:VimTip