Я попробовал обычную команду «gg = G», которую я использую для исправления отступов файлов кода. Однако, похоже, это не работает с файлами HTML. Он просто удалил все форматирование.
Если автоформат / отступ vim gg=G кажется "сломанным" (например, отступ слева от каждой строки), скорее всего, плагин отступа не включен / не загружен. Он действительно должен выдавать сообщение об ошибке, а не просто делать плохие отступы, иначе пользователи просто думают, что функция автоформатирования / отступов ужасна, хотя на самом деле она довольно хороша.
Чтобы проверить, включен / загружен плагин indent, запустите :scriptnames. Посмотрите, есть ли .../indent/html.vimв списке. Если нет, значит, плагин не загружен. В этом случае добавьте эту строку в ~/.vimrc:
filetype plugin indent on
Теперь, если вы откроете файл и запустите :scriptnames, вы должны увидеть .../indent/html.vim. Затем запустите gg=G, что должно сделать правильный автоформат / отступ. (Хотя он не будет добавлять новые строки, поэтому, если весь html-код находится в одной строке, он не будет иметь отступа).
Примечание: если вы работаете :filetype plugin indent onв командной строке vim вместо ~/.vimrc, вы должны повторно открыть файл :e.
Кроме того , вам не нужно беспокоиться о autoindentи smartindentнастройки, они не актуальны для этого.