开源:hint - 中文 Markdown 格式检查,可以集成 Travis CI
ZanDykes
8年前
<h2>hint</h2> <p>A simple <strong>markdown</strong> lint / hint cli-tool , for markdown developer integrated with travis.</p> <p>一个简单的 <strong>markdown</strong> 静态检查的控制台 cli 工具,可以方便 markdown 开发者轻松集成 travis 自动检测。</p> <h2>一、安装</h2> <p>pip install hint</p> <p>然后在系统中会得到一个 hint 的命令 cli 工具。</p> <h2>二、使用</h2> <p>使用方法有两种:</p> <p>2.1 一种是 命令行 cli 方式 ,简单使用方法如下:</p> <p>hint markdown_file</p> <p>或者</p> <p>hint markdown_folder</p> <p>或者使用 hint --help 查看帮助信息和具体详细的使用方法。</p> <pre> $ hint --help Usage: hint-script.py [OPTIONS] FILE Options: -i, --ignore TEXT The error codes which will be ignored. -f, --format [text|json] The output format of error information. -m, --max-depth INTEGER The max depth for traverse the path. --help Show this message and exit.</pre> <p>可以用于直接集成到各种 ci 系统中,例如 travis-ci。</p> <p>2.2 另外一种是 代码 API 调用的方式 ,简单使用方法如下:</p> <pre> import hint text=''' hint 是一个简单的 **markdown** 静态检查的控制台 `cli` 工具。 可以方便 markdown 开发者轻松集成 travis 自动检测。 ''' errors = hint.check(text, ignore='E201') fn = 'README.md' errors = hint.check_file(fn, format='text')</pre> <p>可以方便的进行第三方扩展开发。</p> <h2>三、错误码</h2> <p>检查规则来源于 <a href="/misc/goto?guid=4959736792607047156" rel="nofollow,noindex">chinese-copywriting-guidelines</a> ,错误码命名方式参考于 flake8。目前支持的错误码如下所示:</p> <table> <thead> <tr> <th>错误码</th> <th>检查类型</th> <th>详细描述</th> <th>完成</th> </tr> </thead> <tbody> <tr> <td>E101</td> <td>空格</td> <td>中英文之间需要增加空格</td> <td>done</td> </tr> <tr> <td>E102</td> <td>空格</td> <td>中文与数字之间需要增加空格</td> <td>done</td> </tr> <tr> <td>E103</td> <td>空格</td> <td>全角标点与其他字符之间不加空格</td> <td>done</td> </tr> <tr> <td>E104</td> <td>空格</td> <td>除了%、℃、°、以及倍数单位(如 2x、3n)之外,数字与单位之间需要增加空格</td> <td>done</td> </tr> <tr> <td>E201</td> <td>标点</td> <td>不重复使用标点符号</td> <td>done</td> </tr> <tr> <td>E202</td> <td>标点</td> <td>只有中文或中英文混排中,一律使用中文全角标点</td> <td>done</td> </tr> <tr> <td>E203</td> <td>标点</td> <td>如果出现整句英文,则在这句英文中使用英文、半角标点</td> <td>done</td> </tr> <tr> <td>E204</td> <td>标点</td> <td>省略号请使用……标准用法</td> <td>done</td> </tr> <tr> <td>E205</td> <td>标点</td> <td>英文和后面的半角标点之间不需要空格</td> <td>done</td> </tr> <tr> <td>E301</td> <td>数字</td> <td>数字使用半角字符</td> <td>done</td> </tr> </tbody> </table> <p>关于各种错误码的正确、错误范例,可以参考 <a href="/misc/goto?guid=4959736792694521468" rel="nofollow,noindex">tests/md</a> 。 目前有了大概的代码结构,欢迎 PR 更多的检查错误类型和检查方式 。</p> <h2>LICENSE</h2> <p>MIT @ <a href="/misc/goto?guid=4959736792780795191" rel="nofollow,noindex">hustcc</a> .</p> <p> </p> <p> </p> <p> </p>