Risposte:
Puoi anche inserirlo nel tuo .vimrc:
au BufReadPost *.ezt set syntax=html
.myspecialdotfile
. Ha bisogno di una stella da qualche parte su cui lavorare, anche se teoricamente non è necessario.
.vimrc
file per Dockerfile che hanno estensioni per scopi diversi. autocmd BufNewFile, BufRead Dockerfile * set filetype = docker Il solo utilizzo Dockerfile*
impedisce il funzionamento dell'evidenziazione della sintassi durante l'utilizzo vi Dockerfile
- l'aggiunta della barra rovesciata consente di funzionare per Dockerfile
/ Dockerfile.something
eDockerfilesomething
:set syntax=html
:set syntax
restituirà l'evidenziazione del file attualmente applicata
Dai un'occhiata a questo argomento della wiki di Vim . Alcuni consigli utili:
Come accennato in altre risposte, è possibile utilizzare il comando vim set per impostare la sintassi. :set syntax=<type>
dove <type>
è qualcosa di simile perl
, html
, php
, etc.
C'è un altro meccanismo che può essere utilizzato per controllare l'evidenziazione della sintassi chiamato filetype
, o ft
in breve. Simile a sintassi, si dà un tipo come questo: :set filetype=html
. Altri tipi di file sono perl
, php
, etc.
A volte vim "dimentica" quale sintassi usare, specialmente se stai mescolando cose come php e html insieme. Usa la scorciatoia da tastiera Ctrl+ L( <C-L>
) per fare in modo che vim aggiorni l'evidenziazione.
In un file .php (o un file html), puoi usare un Vim Modeline per forzare determinati comandi o impostazioni:
1 /* vim: syntax=javascript
2 *
3 * .submit_norefresh()
~
~
au ...
impostazioni relative alla sintassi nel mio ~/.vimrc
vengono ignorate per determinati file (presumibilmente a causa di metadati modificati?). Oltre a copiare il contenuto di quel file in un nuovo file, l'impostazione di una modeline all'inizio di quel file funziona. Ad esempio, per uno script BASH, l'aggiunta di una seconda riga, # vim: syntax=sh
dopo lo shebang (prima riga :) #!/bin/bash
sembra funzionare, in modo affidabile. Poiché è fondamentalmente un "commento", includo semplicemente entrambe le righe nel mio sbb
frammento ("shebang bash").
Per renderlo automatico, aggiungi questa riga a ~/.vimrc
:
autocmd BufNewFile,BufRead *.ezt set filetype=html
Se vuoi farlo solo per il file corrente, digita:
:set filetype=html
Puoi anche sostituire syntax
invece di filetype
, ma filetype
influisce su più cose disyntax
(inclusa l'evidenziazione della sintassi, le regole di rientro e i plugin), quindi in genere dovresti usare a filetype
meno che tu non voglia solo influenzare syntax
.