Come creare un file con estensione .PT, con la sintassi XML evidenziazione e pt.snippets carico plug snipmate di vim?
Domanda
Ho il seguente nel mio .vimrc
:
au BufNewFile,BufRead *.pt set filetype=xml
Questo è necessario perché anche se sto modificando un file con estensione *.pt
, è effettivamente un file XML valido:. Impostazione del tipo di file in questo modo posso avere l'evidenziazione della sintassi
di vim snipmate plug , e ha cercato di creare pt.snippets alle esigenze specifiche dal momento che questi file sono Zope Page Templates (ZPT con TAL).
Ora, ho un problema: io non voglio creare questi frammenti in xml.snippets, dal momento che non sono snippet XML molto generici, ma i miei file *.pt
sono impostati a XML, in modo che quando definisco i miei frammenti pt essi non vengono caricati se non corro :set filetype=pt
sul mio file pt su vim -. ma poi ho perso l'evidenziazione della sintassi
Mi piacerebbe essere in grado di avere un file pt, con evidenziazione della sintassi XML, per essere in grado di caricare un file pt.snippets da snipmate. Come posso fare?
(vorrei evitare di mettere i miei frammenti in un file frammento di generica, vorrei che fosse presente solo in pt.snippets per essere più facile da mantenere.)
Soluzione
Snipmate permette tratteggiata 'filetype' la sintassi, provare:
au BufNewFile, BufRead * .pt set filetype = xml.pt
Altri suggerimenti
la sintassi è notoriamente finnicky per non voler sostenere due tipi di file simultanei (in realtà, qualcuno ha chiesto questa stessa domanda ieri)
au BufRead *.pt set filetype=xml.pt
au BufNewFile *.pt set filetype=xml.pt
La risposta di jinfield è in realtà spot-on, ma ho avuto la virgola-sintassi di fallire su alcune versioni di vim
Che ne dite:?
autocmd BufNewFile,BufRead *.pt setlocal filetype=pt
autocmd BufNewFile,BufRead *.pt setlocal syntax=xml