給工程團隊用的繁中文件檢查工具v2.4.1

讓繁中文件也過得了 CI

說明文件裡的半形標點、中英文沒空格、大陸用語、同一個詞兩種寫法,在合併前就抓出來;能自動修的,直接修好。

~/invoice-api提交前,先檢查說明文件

npx quandian check README.zh-TW.md --fix

✓ 3:15 punct.fullwidth 「,」→「,」半形逗號換成全形

✓ 7:3 term.tw 「視頻」→「影片」大陸用語換成台灣用語

✓ 11:8 space.cjk-latin 「API文件」→「API 文件」中文和英文之間加空格

! 14:1 term.consistent 「登入」「登錄」混用同一個詞兩種寫法,留給人決定

已修正 3 處,1 處要人工確認

v2.4.1 · · Node.js 20 以上 · MIT 授權

npm i -D @quandian/cli

還不想安裝?先在網頁上檢查一段文字

quandian 是給台灣團隊的命令列工具,檢查 Markdown、MDX 和翻譯檔。開源 CLI 是 MIT 授權,接得進 GitHub Actions,另有 API。

團隊版與企業自架:導入諮詢

中文字佔 2 格、英數佔 1 格,欄位才對得齊

quandian rules

六條規則

標點規則參考教育部《重訂標點符號手冊》,用語規則照台灣軟體文件的慣用寫法;任何一條都能在 quandian.toml 裡關掉,或從 error 降成 warn。

quandian 的六條規則:名稱、預設等級、檢查內容與例子
規則預設檢查什麼改前 → 改後
punct.fullwidtherror中文句子裡的半形逗號、句號、冒號、問號和驚嘆號,換成全形開票,支援載具改成開票,支援載具
punct.ellipsiserror三個半形句點或三個句號,換成刪節號等一下...改成等一下……
quote.cornererror包著中文的直引號或彎引號,換成「」;英文句子裡的引號不動"設定"頁改成「設定」頁
space.cjk-latinwarn中文和英文、數字之間加一個半形空格,行內程式碼與網址不檢查;設成 never 就反過來抓多出來的空格見API文件改成見 API 文件
term.twerror中國大陸用語換成台灣用語;內建詞表之外,可以再加公司自己的詞表(CSV)默認數據庫改成預設資料庫
term.consistentwarn同一份文件裡同一個詞有兩種寫法時提醒;不自動修正,由寫的人決定登入…登錄改成要人工確認

quandian check docs/deploy.zh-TW.md --fix

部署說明的 16 處修正

docs/deploy.zh-TW.md 8 行、16 個問題:--fix 逐行標出問題、印出修正後的句子,行尾列出規則名稱與欄位,用的是上面 6 條規則的預設等級。

這份說明有 16 個問題,quandian 全部自動修正。下面是修正後的文字,每一行後面列出改了哪裡。

  1. # 部署到正式環境
  2. 正式環境的 API 金鑰要另外申請,不能共用。
    • 已修正: 2:6 space.cjk-latin 「的API金鑰」→「的 API 金鑰」
    • 已修正: 2:16 punct.fullwidth 「,」→「,」
  3. 申請前請先看過教學影片,大約需要 5 分鐘。
    • 已修正: 3:10 term.tw 「視頻」→「影片」
    • 已修正: 3:12 punct.fullwidth 「,」→「,」
    • 已修正: 3:17 space.cjk-latin 「要5分鐘」→「要 5 分鐘」
  4. 發票字軌是預設帶入的,通常不用改。
    • 已修正: 4:6 term.tw 「默認」→「預設」
    • 已修正: 4:11 punct.fullwidth 「,」→「,」
  5. 按下「重新產生」後,舊金鑰會立刻失效。
    • 已修正: 5:3 quote.corner "重新產生"→「重新產生」
    • 已修正: 5:10 punct.fullwidth 「,」→「,」
  6. 把伺服器的時區設成台北,再執行部署。
    • 已修正: 6:2 term.tw 「服務器」→「伺服器」
    • 已修正: 6:12 punct.fullwidth 「,」→「,」
  7. 部署約需 3 分鐘,請稍候……
    • 已修正: 7:5 space.cjk-latin 「需3分鐘」→「需 3 分鐘」
    • 已修正: 7:8 punct.fullwidth 「,」→「,」
    • 已修正: 7:12 punct.ellipsis 「...」→「……」
  8. 錯誤代碼對照表在文件附錄 B。
    • 已修正: 8:9 term.tw 「文檔」→「文件」
    • 已修正: 8:13 space.cjk-latin 「錄B」→「錄 B」

quandian check README.zh-TW.md

線上試用

網頁版規則,詞表精簡成 14 組;文字在你的瀏覽器裡檢查,不送到伺服器。調規則等級,檢查結果、exit 碼和 quandian.toml 跟著重算。

14 行

檢查結果

4 個問題:2 個錯誤、2 個警告,其中 3 個可以自動修正。

exit 1有 2 個錯誤,CI 不會通過。

✗ 錯誤:CI 不通過 ! 警告:只提醒,CI 照樣通過

規則等級

punct.fullwidth 半形標點
punct.ellipsis 刪節號
quote.corner 引號
space.cjk-latin 中英空格
term.tw 台灣用語
term.consistent 同詞一致
quandian.toml跟著規則等級產生
# 存成專案根目錄的 quandian.toml
[rules]
"punct.fullwidth" = "error"
"punct.ellipsis"  = "error"
"quote.corner"    = "error"
"space.cjk-latin" = "warn"
"term.tw"         = "error"
"term.consistent" = "warn"

都是預設等級。把這份存進專案根目錄,CLI、GitHub Actions 和 API 都會照它檢查。

quandian init --ci github

整合:CLI、Actions、API

本機用 CLI,PR 用 GitHub Actions,自己的系統用 API;三個入口讀同一份 quandian.toml 和詞表,檢查結果相同。

quandian.tomlTOML
# 放在專案根目錄;存檔後下一次檢查就照新設定
[files]
include = ["docs/**/*.md", "src/locales/zh-TW/*.json"]
exclude = ["docs/changelog/**"]

[rules]
"punct.fullwidth" = "error"
"quote.corner"    = "error"
"space.cjk-latin" = "warn"     # 不加空格的團隊改成 "never"
"term.tw"         = "error"
"term.consistent" = "warn"

[term.tw]
extra = "glossary/tw-terms.csv"  # 公司自己的詞表,一行一組

quandian changelog -n 3

更新紀錄

  1. v2.4.1修正

    「」裡面的英文引號不會再被 quote.corner 誤判,例如「按下 "Save"」

  2. v2.4.0新增

    新規則 term.consistent:同一份文件裡同一個詞有兩種寫法時提醒,例如登入和登錄

  3. v2.3.0新增

    API 批次端點 POST /v1/check/batch,一次最多送 50 份文件

方案

價格含 5% 營業稅,開統編發票;開源版 NT$0,沒有使用期限。

開源版

NT$0MIT 授權,不含 API

  • CLI 與 6 條規則
  • 自訂詞表與 quandian.toml
  • CI 輸出格式:GitHub Actions、GitLab CI
  • GitHub issue 回覆
回到安裝指令

團隊版

NT$1,500每月,年繳 NT$15,000

  • 開源版的全部功能
  • API:每月 50 萬字
  • 團隊共用詞表,自動同步到每個人的 CLI
  • 每週一寄出文件檢查報表
  • Email 支援
團隊版導入諮詢

企業版

依規模報價年約,自架主機由你提供

  • 自架 Docker 映像,文件不出公司網路
  • 離線詞表更新
  • SSO(SAML、OIDC)
  • 簽保密協議、開三聯式發票
企業版導入諮詢

導入諮詢

填公司、方案和文件放的地方,我們用 Email 回覆。團隊版與企業版導入前,可以約一次 1 小時的線上說明,拿你們的文件把規則調一遍。

8 碼數字,開發票用

想了解的方案 必填

圈點軟體有限公司收集上面的資料,只用來回覆這次諮詢與報價,保存 1 年後刪除。你可以隨時回信查詢、更正或要求刪除;不提供必填欄位,我們就沒辦法回覆你。