├── .eslintrc.json ├── .github └── workflows │ ├── ci.yml │ ├── docs.yml │ └── npm-publish.yml ├── .gitignore ├── .prettierignore ├── .prettierrc.json ├── LICENSE ├── README.md ├── README.zh-CN.md ├── bin └── index.js ├── deploy.sh ├── docs ├── .vitepress │ └── config.ts ├── PlaygroundCore.vue ├── contribute.md ├── design.md ├── index.md ├── inspector │ ├── block.vue │ ├── group.vue │ ├── inspector.vue │ ├── labels.css │ ├── legends.vue │ ├── non-block.vue │ ├── single.vue │ └── status.vue ├── playground.md ├── public │ ├── CNAME │ └── zhlint.svg ├── screenshot-browser.png ├── screenshot-cli.png ├── zhlint.es.js ├── zhlint.es.js.map └── zhlint.svg ├── package.json ├── pnpm-lock.yaml ├── scripts └── gen-readme.mjs ├── src ├── hypers │ ├── hexo.ts │ ├── ignore.ts │ ├── md.ts │ ├── types.ts │ └── vuepress.ts ├── ignore.ts ├── index.ts ├── join.ts ├── options.ts ├── parser │ ├── char.ts │ ├── index.ts │ ├── messages.ts │ ├── parse.ts │ ├── travel.ts │ ├── types.ts │ └── util.ts ├── rc │ └── index.ts ├── replace-block.ts ├── report.ts ├── rules │ ├── case-abbrs.ts │ ├── case-html-entity.ts │ ├── case-linebreak.ts │ ├── case-pure-western.ts │ ├── case-zh-units.ts │ ├── index.ts │ ├── messages.ts │ ├── punctuation-unification.ts │ ├── punctuation-width.ts │ ├── space-bracket.ts │ ├── space-code.ts │ ├── space-hyper-mark.ts │ ├── space-letter.ts │ ├── space-punctuation.ts │ ├── space-quotation.ts │ ├── space-trim.ts │ └── util.ts └── run.ts ├── test ├── basic.test.ts ├── debug.test.ts ├── example-article.md ├── example-debug.md ├── example-disabled.md ├── example-ignore.md ├── example-units-fixed.md ├── example-units.md ├── example-vuepress-fixed.md ├── example-vuepress.md ├── examples.test.ts ├── hexo.test.ts ├── lint.test.ts ├── md.test.ts ├── prepare.ts ├── report.test.ts ├── rules.test.ts ├── uncategorized.test.ts └── vuepress.test.ts ├── tsconfig-build.json ├── tsconfig.json └── vite.config.ts /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/docs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/.github/workflows/docs.yml -------------------------------------------------------------------------------- /.github/workflows/npm-publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/.github/workflows/npm-publish.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/.prettierignore -------------------------------------------------------------------------------- /.prettierrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/.prettierrc.json -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/README.md -------------------------------------------------------------------------------- /README.zh-CN.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/README.zh-CN.md -------------------------------------------------------------------------------- /bin/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/bin/index.js -------------------------------------------------------------------------------- /deploy.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/deploy.sh -------------------------------------------------------------------------------- /docs/.vitepress/config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/.vitepress/config.ts -------------------------------------------------------------------------------- /docs/PlaygroundCore.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/PlaygroundCore.vue -------------------------------------------------------------------------------- /docs/contribute.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/contribute.md -------------------------------------------------------------------------------- /docs/design.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/design.md -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/index.md -------------------------------------------------------------------------------- /docs/inspector/block.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/inspector/block.vue -------------------------------------------------------------------------------- /docs/inspector/group.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/inspector/group.vue -------------------------------------------------------------------------------- /docs/inspector/inspector.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/inspector/inspector.vue -------------------------------------------------------------------------------- /docs/inspector/labels.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/inspector/labels.css -------------------------------------------------------------------------------- /docs/inspector/legends.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/inspector/legends.vue -------------------------------------------------------------------------------- /docs/inspector/non-block.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/inspector/non-block.vue -------------------------------------------------------------------------------- /docs/inspector/single.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/inspector/single.vue -------------------------------------------------------------------------------- /docs/inspector/status.vue: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/inspector/status.vue -------------------------------------------------------------------------------- /docs/playground.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/playground.md -------------------------------------------------------------------------------- /docs/public/CNAME: -------------------------------------------------------------------------------- 1 | zhlint.jinjiang.dev 2 | -------------------------------------------------------------------------------- /docs/public/zhlint.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/public/zhlint.svg -------------------------------------------------------------------------------- /docs/screenshot-browser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/screenshot-browser.png -------------------------------------------------------------------------------- /docs/screenshot-cli.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/screenshot-cli.png -------------------------------------------------------------------------------- /docs/zhlint.es.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/zhlint.es.js -------------------------------------------------------------------------------- /docs/zhlint.es.js.map: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/zhlint.es.js.map -------------------------------------------------------------------------------- /docs/zhlint.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/docs/zhlint.svg -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /scripts/gen-readme.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/scripts/gen-readme.mjs -------------------------------------------------------------------------------- /src/hypers/hexo.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/hypers/hexo.ts -------------------------------------------------------------------------------- /src/hypers/ignore.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/hypers/ignore.ts -------------------------------------------------------------------------------- /src/hypers/md.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/hypers/md.ts -------------------------------------------------------------------------------- /src/hypers/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/hypers/types.ts -------------------------------------------------------------------------------- /src/hypers/vuepress.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/hypers/vuepress.ts -------------------------------------------------------------------------------- /src/ignore.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/ignore.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/join.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/join.ts -------------------------------------------------------------------------------- /src/options.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/options.ts -------------------------------------------------------------------------------- /src/parser/char.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/parser/char.ts -------------------------------------------------------------------------------- /src/parser/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/parser/index.ts -------------------------------------------------------------------------------- /src/parser/messages.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/parser/messages.ts -------------------------------------------------------------------------------- /src/parser/parse.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/parser/parse.ts -------------------------------------------------------------------------------- /src/parser/travel.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/parser/travel.ts -------------------------------------------------------------------------------- /src/parser/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/parser/types.ts -------------------------------------------------------------------------------- /src/parser/util.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/parser/util.ts -------------------------------------------------------------------------------- /src/rc/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rc/index.ts -------------------------------------------------------------------------------- /src/replace-block.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/replace-block.ts -------------------------------------------------------------------------------- /src/report.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/report.ts -------------------------------------------------------------------------------- /src/rules/case-abbrs.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/case-abbrs.ts -------------------------------------------------------------------------------- /src/rules/case-html-entity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/case-html-entity.ts -------------------------------------------------------------------------------- /src/rules/case-linebreak.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/case-linebreak.ts -------------------------------------------------------------------------------- /src/rules/case-pure-western.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/case-pure-western.ts -------------------------------------------------------------------------------- /src/rules/case-zh-units.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/case-zh-units.ts -------------------------------------------------------------------------------- /src/rules/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/index.ts -------------------------------------------------------------------------------- /src/rules/messages.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/messages.ts -------------------------------------------------------------------------------- /src/rules/punctuation-unification.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/punctuation-unification.ts -------------------------------------------------------------------------------- /src/rules/punctuation-width.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/punctuation-width.ts -------------------------------------------------------------------------------- /src/rules/space-bracket.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/space-bracket.ts -------------------------------------------------------------------------------- /src/rules/space-code.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/space-code.ts -------------------------------------------------------------------------------- /src/rules/space-hyper-mark.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/space-hyper-mark.ts -------------------------------------------------------------------------------- /src/rules/space-letter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/space-letter.ts -------------------------------------------------------------------------------- /src/rules/space-punctuation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/space-punctuation.ts -------------------------------------------------------------------------------- /src/rules/space-quotation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/space-quotation.ts -------------------------------------------------------------------------------- /src/rules/space-trim.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/space-trim.ts -------------------------------------------------------------------------------- /src/rules/util.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/rules/util.ts -------------------------------------------------------------------------------- /src/run.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/src/run.ts -------------------------------------------------------------------------------- /test/basic.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/basic.test.ts -------------------------------------------------------------------------------- /test/debug.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/debug.test.ts -------------------------------------------------------------------------------- /test/example-article.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/example-article.md -------------------------------------------------------------------------------- /test/example-debug.md: -------------------------------------------------------------------------------- 1 | hello world 2 | -------------------------------------------------------------------------------- /test/example-disabled.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/example-disabled.md -------------------------------------------------------------------------------- /test/example-ignore.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/example-ignore.md -------------------------------------------------------------------------------- /test/example-units-fixed.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/example-units-fixed.md -------------------------------------------------------------------------------- /test/example-units.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/example-units.md -------------------------------------------------------------------------------- /test/example-vuepress-fixed.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/example-vuepress-fixed.md -------------------------------------------------------------------------------- /test/example-vuepress.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/example-vuepress.md -------------------------------------------------------------------------------- /test/examples.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/examples.test.ts -------------------------------------------------------------------------------- /test/hexo.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/hexo.test.ts -------------------------------------------------------------------------------- /test/lint.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/lint.test.ts -------------------------------------------------------------------------------- /test/md.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/md.test.ts -------------------------------------------------------------------------------- /test/prepare.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/prepare.ts -------------------------------------------------------------------------------- /test/report.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/report.test.ts -------------------------------------------------------------------------------- /test/rules.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/rules.test.ts -------------------------------------------------------------------------------- /test/uncategorized.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/uncategorized.test.ts -------------------------------------------------------------------------------- /test/vuepress.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/test/vuepress.test.ts -------------------------------------------------------------------------------- /tsconfig-build.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/tsconfig-build.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/tsconfig.json -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhlint-project/zhlint/HEAD/vite.config.ts --------------------------------------------------------------------------------