Jaka jest różnica między autoindentem a smartindentem w vimrc?

36

Czytam wpis wiki na temat wcięcia kodu źródłowego vima

Nadal nie rozumiem różnicy między autoindentismartindent

Wygląda na to, że robią to samo, po naciśnięciu skopiuj poziom wcięcia do następnego wiersza enter.

Aaron Shen
źródło
6
Wiki jest bardzo mało użyteczna. Przeczytaj :help autoindenti :help smartindent.
romainl,
wiki ma całkiem przyzwoite wyjaśnienie twoich opcji: vim.wikia.com/wiki/…
ian5v 16.09.16

Odpowiedzi:

24

autoindentzasadniczo mówi vimowi, aby zastosował wcięcie bieżącej linii do następnego (utworzonego przez naciśnięcie enterw trybie wstawiania lub z Olub ow trybie normalnym .

smartindentreaguje na składnię / styl edytowanego kodu (szczególnie dla C). Gdy masz to na sobie, powinieneś także mieć autoindent na sobie .

:help autoindentwspomina także o dwóch alternatywnych ustawieniach: cindenti indentexproba powodują, że vim ignoruje wartość smartindent.

guntbert
źródło