Files
meta/references/ste100.md
jiantw83 19303ca555 feat(ste100): 語言規則納入適用範圍與編碼要求
What
- `references/ste100.md` 新增「適用範圍」與「編碼」兩節,並以表格列出各類輸出是否適用。
- 「機檢」一節補上新的類別清單與文件檔、程式碼檔的分流說明。
- `references/guidelines.md`「語言」第 1 條改寫成「所有非程式碼輸出一律繁體中文、UTF-8、
  無亂碼、無簡體字」,並以一行指引指回 `references/ste100.md`。
- 「審核檢查清單」新增一個可勾選項目,涵蓋非程式碼輸出的語言與編碼,且要求機檢全綠。

Why
- 舊條文只講「交談與輸出內容」用 STE100 繁中,沒有把程式碼註解、commit 訊息、PR 描述、
  wiki 頁這些實際會產出的東西點名,執行時容易各自解讀。
- 編碼要求原本只有基礎紀律裡的一句「UTF-8,無亂碼」,沒有說明什麼算亂碼,也沒有寫明
  不得出現簡體字,機檢與人工判讀對不上。

How
- 適用範圍用表格逐項標「是」或「否」,並明講程式碼識別字、關鍵字、API 名稱不受限,
  SKILL.md 維持整份英文。
- 編碼用表格寫要求、內容與常見違規,違規範例直接對應機檢的「亂碼」類別。
- 細節只寫在 `references/ste100.md` 一處,guidelines.md 只留摘要與指引,維持單一真實來源。

Who
- 影響所有 jsc 技能的輸出與審核;撰寫技能與跑 `jsc-meta:skill-check` 的人要照新清單檢查。
2026-08-27 09:43:20 +08:00

92 lines
4.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# STE100 — 擬人台灣感的簡化技術中文
jsc 技能組所有交談與文件的語言規則,唯一來源在這裡。基礎紀律沿用 STE100,擬人與在地化層改寫自 [speak-human-tw](https://github.com/Raymondhou0917/speak-human-tw)(MIT),並依技術文件情境剪裁。
上游版本:speak-human-tw v1.4.0(2026-07-18)。上游有新版時用 `jsc-meta:ste100-sync` 同步。
## 適用範圍
**所有非程式碼輸出一律適用**。程式碼本身不受限。
| 對象 | 適用 | 說明 |
| :-- | :-- | :-- |
| 程式碼註解 | 是 | 含檔頭說明與行內註解 |
| commit 訊息 | 是 | 標題與內文;type 與 scope 仍為英文 |
| PR 描述 | 是 | 標題、各節內文 |
| wiki 頁內容 | 是 | 頁名前綴與範本欄位名維持英文 |
| 對使用者的回報 | 是 | 交談、進度回報、錯誤說明 |
| README、AGENTS.md | 是 | |
| `references/`、`templates/` | 是 | |
| 程式碼識別字、關鍵字、API 名稱 | 否 | 變數、函式、型別、參數、指令、路徑、URL |
| SKILL.md | 否 | 整份英文,規則見 `guidelines.md`「語言」 |
## 基礎紀律
1. 短句,一句一指令,主動語態。
2. 同一個概念全程用同一個詞,不換詞循環。
## 編碼
| 要求 | 內容 | 常見違規 |
| :-- | :-- | :-- |
| UTF-8 | 檔案一律 UTF-8(無 BOM) | Big5、GBK 存檔 |
| 無亂碼 | 不得出現替代字元或雙重編碼殘留 | `�`、`�`、`ä`、`â` 開頭的三字元序列 |
| 無簡體字 | 一律繁體字形 | 应、这、说、国、网、码 |
亂碼多半來自轉檔或複製貼上,肉眼容易漏掉,交給 `tools/ste100-lint.sh` 的「亂碼」類別擋。
## 台灣用語
看到左欄一律替換(引號內原話與專有名詞除外):
| 中國用語 | 台灣用語 |
| :-- | :-- |
| 默認 | 預設 |
| 支持(某功能) | 支援 |
| 兼容 | 相容 |
| 信息 | 資訊 |
| 數據庫 | 資料庫 |
| 服務器 | 伺服器 |
| 軟件/硬件 | 軟體/硬體 |
| 網絡 | 網路 |
| 質量 | 品質 |
| 代碼 | 程式碼 |
| 調用 | 呼叫 |
| 卸載 | 移除、解除安裝 |
| 反饋 | 回饋 |
| 水平 | 水準 |
| 智能 | 智慧 |
語境判斷:「優化」要掛具體動作與指標,空泛使用就重寫;「文檔」若指文件與檔案的合稱可保留。
## 全形標點
中文句子一律全形標點「,。:;!?「」()、」。例外只有三個:英文片語內部、URL、程式碼。數字與單位用半形(42%、3/31)。並列用頓號「、」,不用逗號串。第一層引號用「」,內層用『』。
## 去 AI 味
1. 刪對話殘留與諂媚:「希望這對你有幫助」「好問題!」「以下是修改後的版本」。
2. 刪通用積極結論:「總的來說」「綜上所述」「讓我們一起⋯⋯」。刪掉後允許不收尾,停在最後一個具體句子上。
3. 刪公式化開場:「在當今快速發展的時代」這類大帽子。第一句就要有只有這份文件才有的資訊。
4. 「首先/其次/最後」三段式:結構服從邏輯,不服從對稱;硬湊的那點刪掉,過渡詞多半可直接拿掉。
5. 價值上升詞落地:「標誌著」「奠定基礎」「體現了」改成具體事實,寫不出來就刪。
6. 密度限制:破折號少用;粗體一段最多 2–3 個詞;emoji 技術文件不用。
7. 翻譯腔:長定語鏈改短句(「一個能夠幫助你快速完成工作的工具」→「這工具幫你快速完成工作」);「透過」一段最多一次。
8. 刪掉一句空話後,不得補上同族的另一句空話。
## 擬人(技術文件版)
1. 直接講重點,不繞場。
2. 長短句交錯,資訊密度可以不平均:最重要的事給最多篇幅。
3. 第一人稱是誠實,不是不專業;對事實可以有判斷(「這裡容易踩雷」比「請注意」有用)。
4. 不表演不確定;不確定就直說哪裡不確定、缺什麼。
5. 人味是作者的:不編造範例、經歷、數據。缺具體內容就標「(需補充)」。
## 保護清單(原封不動)
指令與程式碼、檔案路徑、URL、專有名詞、版本號、wiki 頁名、範本欄位名、SKILL.md frontmatter 的英文 description、引號內原話。被討論的詞也放行:本檔替換表左欄就是例子。
## 機檢
可機檢的部分(中國用語、中文句內半形標點、AI 套話、簡體字、亂碼、並列斜線)用 `tools/ste100-lint.sh <file|dir>` 檢查,命中 exit 1。`.md` 與 `.json` 跑全部類別;程式碼檔只跑簡體字與亂碼,其餘類別對英文標點與路徑誤報率太高。掃描時跳過本檔(規則文件裡的詞是被討論,不是被使用);語感與翻譯腔仍要人工判讀。