使用Google的样式指南检查HTML5文件
项目描述
HTML Linter
HTML Linter是一个遵循Google定义的样式指南的HTML5代码检查工具。
动机
处理由许多人生成的HTML5文件是一项困难的任务,因为标准变化非常快,同时浏览器也相当开放,接受任何不完整、无效或错误的输入。
这就是我们决定有一个自动化的工具来检查我们的编码标准的原因。
我们从Google标准开始,并添加了一些由项目html-minifier定义的额外规则。你可以阅读他的详细文章。
我们添加的额外规则列表包括
布尔属性不应有显式值。
不要在标签中使用name属性。
不要在脚本标签中使用language属性。
当没有源时,不要在脚本标签中使用charset属性。
Javascript:void(0) 链接很糟糕。
onclick=’javascript: …’ 不是必需的。这也会引发分离错误。
meta http-equiv: 仅使用标准属性 + X-UA-compatible
在属性之间或打开或关闭标签之前不允许有额外的空白。
缺少什么?
检查文件是否有BOM。
使用工具 HTML5 tidy 验证HTML的能力,以及集成一些schema.org或microdata验证器。
然而,由于一些原因,我们没有短期计划来处理后者。
限制
html_linter 使用项目 template-remover 从文件中删除PHP和Jinja标记,而这个项目的工作有一些限制。
以下是一个不会工作的例子
<?php echo "?>" ?>
它不工作是因为当方法看到第一个‘?>’(字符串内的一个)时,它认为这是一个关闭标签。
示例用法
以下是如何使用 template_remover.py 的示例
$ html_lint.py filename.html
安装
您可以使用以下命令安装、升级或卸载 html-linter
$ pip install html-linter $ pip install --upgrade html-linter $ pip uninstall html-linter
Python 版本
支持 Python 2.7、3.3、3.4、3.5 和 3.6。
开发
欢迎对此项目提供帮助,因此请随时通过 http://github.com/deezer/html-linter 创建问题或发送拉取请求。
测试是使用 nose 运行的,可以使用
$ python -R setup.py nosetests $ nosetests
在任何提交之前使用工具 git-lint,以便尽早捕获错误和样式问题。
待办事项和可能的功能
使输出更简洁。
与 HTML5 tidy 集成。
与 schema.org/microdata 验证器集成。
贡献者
变更日志
v0.4 (2017-03-30)
v0.3 (2016-01-24)
支持多个文件(由 @di)
v0.2 (2015-12-13)
支持 Python 3.5
v0.1 (2014-05-07)
初始提交。
项目详情
html-linter-0.4.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 342dad677f2fc810a2562fde0959046ed0d8fa1387bd9e085869e908c1941191 |
|
MD5 | d25aeddc4dfde714aef38b34f4dfa577 |
|
BLAKE2b-256 | 0b4512b968a45d223bc9a3131022514eacdaeffd591973bb2025330057a7b7c6 |