Ho provato il solito comando "gg = G", che è quello che uso per correggere il rientro dei file di codice. Tuttavia, non sembra funzionare correttamente sui file HTML. Ha semplicemente rimosso tutta la formattazione.
Se l'autoformat / indent di vim gg=G
sembra essere "rotto" (come lasciare il rientro su ogni riga), molto probabilmente il plugin di rientro non è abilitato / caricato. Dovrebbe davvero dare un messaggio di errore invece di fare solo un rientro errato, altrimenti gli utenti pensano semplicemente che la funzione di formattazione automatica / rientro sia terribile, quando in realtà è abbastanza buona.
Per verificare se il plug-in rientro è abilitato / caricato, eseguire :scriptnames
. Vedi se .../indent/html.vim
è nella lista. In caso contrario, significa che il plug-in non è caricato. In tal caso, aggiungi questa riga a ~/.vimrc
:
filetype plugin indent on
Ora se apri il file ed esegui :scriptnames
, dovresti vedere .../indent/html.vim
. Quindi eseguire gg=G
, che dovrebbe eseguire ora il formato automatico / rientro corretto. (Anche se non aggiungerà nuove righe, quindi se tutto il codice html è su una sola riga, non verrà indentato).
Nota: se si esegue :filetype plugin indent on
nella riga di comando di vim anziché ~/.vimrc
, è necessario riaprire il file :e
.
Inoltre, non devi preoccuparti autoindent
e le smartindent
impostazioni, non sono rilevanti per questo.