В чем разница между autoindent и smartindent в vimrc?


36

Я прочитал запись вики на отступе исходного кода vim

Я до сих пор не могу понять разницу между autoindentиsmartindent

Кажется, они делают то же самое, копируя уровень отступа на следующую строку при нажатии enter.


6
Вики очень близка к бесполезной. Читайте :help autoindentи :help smartindent.
Ромен

вики на самом деле имеет довольно приличное объяснение ваших вариантов: vim.wikia.com/wiki/...
ian5v

Ответы:


24

autoindentпо сути, говорит vim применять отступ текущей строки к следующей (созданной нажатием enterв режиме вставки или с помощью Oили oв обычном режиме.

smartindentреагирует на синтаксис / стиль кода, который вы редактируете (особенно для C). При наличии его на вас также должен быть autoindent на .

:help autoindentтакже упоминает две альтернативные настройки: cindentи indentexpr, обе из которых заставляют vim игнорировать значение smartindent.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.