Jak zmusić Vima do składni-podświetlić plik jako html?

Jak ustawić podświetlanie składni Vima, aby traktować rozszerzenie pliku jako plik html?

Używam szablonu ez, więc rozszerzenie pliku to .ezt. Ale wiele z nich to normalny kod html.

Author: Eric Leschinski, 2010-10-04

6 answers

Możesz również umieścić to w swoim .vimrc:

au BufReadPost *.ezt set syntax=html
 78
Author: Benoit,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-13 10:20:36
:set syntax=html
 131
Author: Amber,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-10-04 05:22:03

[[11]}spójrz na ten temat vim wikia . Kilka przydatnych wskazówek:

  • Jak już wspominały inne odpowiedzi, możesz użyć polecenia vim set do Ustawienia składni. :set syntax=<type> gdzie <type> jest czymś w rodzaju perl, html, php, itd.

  • Istnieje inny mechanizm, który może być używany do kontrolowania podświetlania składni o nazwie filetype, w skrócie ft. Podobnie jak składnia, nadajemy jej typ taki jak: :set filetype=html. Inne typy plików to perl, php, itd.

  • Czasami vim "zapomina" jakiej składni użyć, zwłaszcza jeśli mieszasz rzeczy takie jak php i html razem. Użyj skrótu klawiaturowego Ctrl+L (<C-L>) aby vim odświeżył podświetlenie.

 19
Author: slm,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-05 16:08:33

Zauważ, że :set syntax=xml podświetla poprawnie, ale wydaje się, że nie powiedzie się, gdy ktoś próbuje autoindentować plik (np. uruchamia gg=G).

Kiedy przełączyłem się na :set filetype=xml, podświetlenie działało poprawnie, a plik został odpowiednio wcięty.

 9
Author: Daniel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-05 16:09:40

W a .plik php (lub plik html), możesz użyć Vim Modeline , aby wymusić pewne polecenia lub ustawienia:

 1 /* vim: syntax=javascript
 2  *
 3  * .submit_norefresh()
 ~
 ~
 9
Author: Ярослав Рахматуллин,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-13 18:19:18

Aby uczynić go automatycznym, dodaj tę linię do swojego ~/.vimrc:

autocmd BufNewFile,BufRead *.ezt set filetype=html

Jeśli chcesz to zrobić dla bieżącego pliku, wpisz:

:set filetype=html

Można też zastąpić syntax zamiast filetype, Ale filetype wpływa na więcej rzeczy niż syntax (w tym podświetlanie składni, reguły wcięcia i wtyczki), więc generalnie powinieneś używać filetype, chyba że chcesz wpływać tylko na syntax.

 4
Author: wisbucky,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-23 04:43:34