言い訳
最近の案件はIE7がほとんど淘汰されてIE8以上になりましたが、まだまだHTML5にはいけませんね。
会社ではHTML4.01 Strictを原則使用するポリシーになっていますが、一方でスマホ向け案件ではHTML5+CSS3が使い放題で色々と迷います。
HTML 4.01StrictにはAnother HTML Lintを使っていますが、こいつはHTML5に対応してくれていません。
一方、有志がHTML5のバリデータを叩いてくれるものを作ってくれているので、自動判別するようにしました。
といっても、HTML5独特のDOCTYPE HTML
を検索してるだけです。
ちなみにBufWritePostで連動してるため、保存したらすぐにチェックされます。
需要があるかはわかりませんが。
注意
- Windowsベースで使ってるので、適当にパス等は変えて下さい。
- NeoBundle使わないやり方は適当になんとかしてください
vimrc
"vimrc上部
NeoBundle 'https://github.com/hokaccha/vim-html5validator.git'"下のほうau!BufWritePost *.html call TypeHTML()function! TypeHTML()let html = search('<!DOCTYPE HTML>')if(html<1)"for XHTML
autocmd!BufWritePost<buffer> :silentmakeelse"for HTML5au!BufWritePost *.html :HTML5Validate
endifendfunction
$vim/compiler/htmllint.vim
if exists("current_compiler")finishendiflet current_compiler ="htmllint"if exists(":CompilerSet")!=2" older Vim always used :setlocal
command -nargs=* CompilerSet setlocal<args>endif
CompilerSet makeprg=perl\ c:\htmllint.sjis\htmllint\ %
CompilerSet errorformat=%f(%l):%m