CI: add textlint

Instead of requesting changes in every pull requests and block them from merging,
we are trying to automate the process of adding missing spaces between half and
full-width characters using GitHub Actions.

The main idea is:

- Only run the workflow in the main repository (instead of other forks).
- Try to fix all files using textlint.
- Only commit files with .md extension.
- Directly push the change to the master branch.

Related projects:

- https://github.com/textlint/textlint
- https://github.com/textlint-ja/textlint-rule-preset-ja-spacing
- https://github.com/sparanoid/chinese-copywriting-guidelines

Related discussions:

- https://github.com/Anduin2017/HowToCook/pull/88
This commit is contained in:
Bobby Rong 2022-02-19 14:20:24 +08:00
parent 256755b858
commit f0ba452c85
No known key found for this signature in database
GPG Key ID: ED07364437C91161
4 changed files with 3795 additions and 0 deletions

27
.github/workflows/textlint.yml vendored Normal file
View File

@ -0,0 +1,27 @@
name: Textlint
on:
schedule:
- cron: '0 */6 * * *'
workflow_dispatch:
jobs:
lint-fix:
runs-on: ubuntu-latest
if: github.repository_owner == 'Anduin2017'
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: '16'
cache: 'npm'
- run: npm install
- run: ./node_modules/.bin/textlint . --fix
- uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: '[ci skip] Automatic textlint fixes'
branch: 'master'
file_pattern: ':/*.md'
commit_user_name: github-actions[bot]
commit_user_email: github-actions[bot]@users.noreply.github.com
commit_author: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
# Dependency directories
node_modules/

3760
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

6
package.json Normal file
View File

@ -0,0 +1,6 @@
{
"dependencies": {
"textlint": "^12.1.0",
"textlint-rule-ja-space-between-half-and-full-width": "^2.2.0"
}
}