KE-complex_modifications:Karabiner-Elements 規則集的共享儲存庫
此專案圍繞「Karabiner-Elements complex_modifications rules. For example, the Emacs key bindings package includes several rule sets for different use cases.」建置,聚焦實際場景的開源實作,提供可重用的工具鏈與整合方式。
秒懂
- 它是什麼?
- Karabiner-Elements 的 complex_modifications 規則集合,包含已文件化的貢獻流程與公共領域授權。
- 適合誰用?
- 適合需要 public/json 的規則檔案結構與src/json 下的 Duktape ES5.1 生成器 且願意依 KE-complex_modifications 文件操作的人;不適合期待 README 未承諾能力或完整商業支援的人。採用前先依專案指定的命令、檔案與設定入口檢查輸入輸出,並把未說明的部分視為未知。
- 可以商用嗎?
- 可以。Unlicense 是寬鬆授權:你可以使用、修改並販售以它為基礎的軟體,只需保留著作權與授權聲明。
- 還在維護嗎?
- 有在維護。儲存庫最近一次提交在 1 天前。
- 用什麼語言寫的?
- 主要是 JavaScript(依據 GitHub 的語言統計)。
以上回答依據專案的 GitHub 資料(最近同步於 2026年9月14日)與我們的分析,不構成法律意見。
開源專案深度解析
儲存庫的用途與範圍
KE-complex_modifications 儲存庫是 Karabiner-Elements 的 complex_modifications 規則的共享來源。分發網站 ke-complex-modifications.pqrs.org 託管這些規則檔案。儲存庫中的每個 JSON 檔案將多條規則打包在單一檔案中,因此使用者可以選擇並啟用他們需要的特定按鍵對應。README 以 Emacs 鍵位綁定套件為例,該套件包含多個適用於不同使用情境的規則集。
第1節的第1個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第1節的第2個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第1節的第3個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第1節的第4個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第1節的第5個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第1節的第6個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第1節的第7個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
分散式 JSON 檔案的結構
每個分發的 JSON 檔案包含 title 欄位、可選的 maintainers 陣列(由 GitHub 使用者名稱組成)以及 rules 陣列。每個規則內部有 description 和 manipulators 陣列。README 展示了一個基本 manipulator 範例,包含 type、from 和 to 物件。當列出維護者時,分發網站會自動連結到這些 GitHub 帳戶。這種結構允許單一檔案承載多個獨立的規則,使用者可以在 Karabiner-Elements 中分別啟用它們。
第2節的第1個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第2節的第2個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第2節的第3個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第2節的第4個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第2節的第5個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第2節的第6個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第2節的第7個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
新增規則集
要新增規則,貢獻者先 fork 儲存庫,克隆(包含子模組),建立分支,然後將 JavaScript 生成器檔案放在 src/json 中,或直接將成品 JSON 檔案放在 public/json 中。可選地,可以更新 public/groups.json 將規則歸入某個類別,並透過 extra_description_path 指向補充 HTML。執行 make all 後,任何驗證錯誤都會顯示在終端機中。貢獻者隨後提交、推送並建立拉取請求。
第3節的第1個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第3節的第2個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第3節的第3個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第3節的第4個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第3節的第5個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第3節的第6個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第3節的第7個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
驗證與測試
make all 命令驗證 JSON 並從生成器腳本產生輸出檔案。要在本機測試,貢獻者將生成的 JSON 檔案複製到 ~/.config/karabiner/assets/complex_modifications,然後在 Karabiner-Elements 設定的 Complex Modifications > Rules > Add rule 中匯入。也可以透過 make preview-server 啟動本機 Web 伺服器,在 http://localhost:8000 預覽規則描述和佈局。README 指出,HTML 修改後不會自動熱重載。
第4節的第1個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/extra_descriptions 的 HTML」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第4節的第2個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/extra_descriptions 的 HTML」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第4節的第3個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/extra_descriptions 的 HTML」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第4節的第4個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/extra_descriptions 的 HTML」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第4節的第5個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/extra_descriptions 的 HTML」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第4節的第6個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/extra_descriptions 的 HTML」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第4節的第7個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/extra_descriptions 的 HTML」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
為規則集編寫額外描述
對於需要超過一行描述的規則,貢獻者可以在 public/extra_descriptions 下新增 HTML 檔案,並透過 groups.json 中的 extra_description_path 欄位引用它。HTML 會顯示在分發網站的規則列表中。README 給出了一些提示:Bootstrap CSS 會自動套用,因此間距工具類可用;不要包含 html 或 body 標籤;圖片可以使用相對路徑包含,並且必須提交到儲存庫。編輯後需要手動重新整理頁面。
第5節的第1個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第5節的第2個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第5節的第3個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第5節的第4個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第5節的第5個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第5節的第6個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第5節的第7個觀察:pqrs-org/KE-complex_modifications 的 README 將「public/json 的規則檔案結構」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
同步 fork 儲存庫
README 包含針對先前 fork 的同步流程。一次性命令新增 upstream 遠端,然後重複執行序列:取得所有標籤,將本機 main 分支重設到 upstream/main,更新子模組,清理未追蹤檔案,並將更新後的分支推送到貢獻者的 fork。這使 fork 與原始儲存庫保持一致,而無需合併操作。
第6節的第1個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第6節的第2個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第6節的第3個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第6節的第4個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第6節的第5個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第6節的第6個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第6節的第7個觀察:pqrs-org/KE-complex_modifications 的 README 將「src/json 下的 Duktape ES5.1 生成器」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
生成器腳本限制與授權
src/json 中的生成器腳本在 Duktape 下執行,這是 Karabiner-Elements 命令列工具內建的 JavaScript 引擎。環境遵循 ES5.1,因此 let、箭頭函式、預設參數、展開語法和模板字面量不可用;const 被特殊支援。README 指出了一些示例生成器,展示諸如使用預定義的 bundle identifier 列表、從字元列表生成重新對應、從其他檔案包含檔案以及從按鍵組合生成規則等模式。儲存庫以 Unlicense 發布,將其奉獻給公共領域,但授權不提供任何擔保或責任保護。
第7節的第1個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第7節的第2個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第7節的第3個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第7節的第4個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第7節的第5個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第7節的第6個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
第7節的第7個觀察:pqrs-org/KE-complex_modifications 的 README 將「make all 與 Karabiner 匯入」放在具體的操作脈絡裡。閱讀時要辨認 KE-complex_modifications 接收什麼資料、產生什麼結果,以及哪一個命令或檔案負責承接這個步驟。這能把功能敘述連回實際工作,而不把宣稱當成保證。若 README 沒有交代平台、容量、相容版本或錯誤處理,這些就只能列為未知,不能替專案補上推測。對使用者而言,這個限制本身就是選型資訊,因為它決定後續需要自行補多少測試與維運紀錄。
編輯結論
適合需要 public/json 的規則檔案結構與src/json 下的 Duktape ES5.1 生成器 且願意依 KE-complex_modifications 文件操作的人;不適合期待 README 未承諾能力或完整商業支援的人。採用前先依專案指定的命令、檔案與設定入口檢查輸入輸出,並把未說明的部分視為未知。
社群筆記