iOS 版
Yabomish 的 iOS 版本與 macOS 共用同一套輸入引擎與設定契約,最大的差異是安全模型:iOS 鍵盤擴充以「零權限」為設計目標。
12.1 安裝與啟用
- 在 iPhone 上安裝 Yabomish App
- 開啟 設定 → 一般 → 鍵盤 → 鍵盤 → 新增鍵盤,選擇 Yabomish
- 完成——不需要開啟「允許完整存取」
App 內首頁可匯入 .cin 字表檔(與 macOS 同格式)。
12.2 零權限設計
Yabomish 鍵盤的設計目標是不要求完整存取(Full Access):鍵盤擴充零網路、不讀剪貼簿,程式碼不會發出任何網路請求。
目前版本因 iOS 26 鍵盤可見性問題的除錯(bisect)作業,暫時保留了「允許完整存取」開關(
RequestsOpenAccess = true);定位修復後將回復零權限設定。這不影響零網路的保證——開關的存在不代表程式使用它,開啟與否目前對功能沒有影響。
這代表:
- 鍵盤擴充零網路——無法把任何資料送出裝置
- 密碼欄位(系統行為)與銀行類 App 自動改用系統鍵盤
- 所有核心功能(打字、字表、候選、聯想、snippet 展開)都在無網路環境下運作,實測飛航模式可完整使用
技術原理
iOS 對無 Full Access 的鍵盤開放 App Group 共容器的唯讀存取。Yabomish 讓鍵盤只讀設定(字表、commands.json、snippet),需要寫入的資料(學習頻率、除錯記錄)改存鍵盤自有的沙盒容器,並在權限狀態變更時自動合併——你的打字學習不會因為權限設定而遺失。
12.3 目前沒有跨裝置同步
早期版本曾提供 S3 相容儲存(R2 / OVH)、iCloud 與 Hermes 橋接等同步通道,已於 2026-08 全數移除——為了維持「零權限、不連網」的不變式(iCloud 同步需額外權利且實機靜默失敗、S3 需手動憑證、Hermes 需區域網路授權)。
macOS 與 iOS 之間目前透過手動搬移檔案共用資料:user_shortcuts.txt(快捷碼)與 .cin 字表兩邊格式相同,可直接複製到對應目錄。
12.4 iOS 版功能現況
與 macOS 引擎同步拉齊至 v0.3.59+,並陸續移植後續版本的功能:
- 打字:嘸蝦米碼表(mmap binary)、VRSF 快選、萬用碼、繁簡轉換、字頻學習(unigram/bigram/trigram,純記憶體 cache)
- 聯想:六層架構——萌典詞組、成語、字級聯想(學習版+靜態 bigram,
charSuggest開關與,,SG)、領域詞庫(App 內合併)、晶晶體、Emoji - 查字歷史:反查選字自動記錄(上限 1000 筆),
,,LH檢視最近 20 筆、,,RH清除;App 與鍵盤間的freq.db自動合併(五元組去重) - 實體鍵盤(iPad):候選顯示中 Shift+數字鍵輸出符號/數字(與 macOS 同偏好
shiftDigitOutput)、Shift+字母大寫 - 行為對齊 macOS:Enter 在純聯想顯示時收提示並還原換行、切換文字欄位丟棄組字、
,,RL一併重載自訂指令與 snippets - 操作:手勢為核心(空白鍵五向滑動、長按刪字、拖曳調整鍵盤高度)、Apple 系統鍵盤原廠色調、深色模式自動跟隨
12.5 與 macOS 的對照
| 功能 | macOS | iOS |
|---|---|---|
| 打字 / 字表 / 候選排序 | ✅ | ✅ |
| 詞組+字級聯想 | ✅ | ✅(鍵盤端採輕量語料+學習版字級) |
text 型 snippet 展開 | ✅ | ✅ |
shell / open / hermes 型指令 | ✅ | ❌(沙盒/零網路限制) |
查字歷史(,,LH/,,RH) | ✅(另附設定程式 GUI) | ✅(,,LH 文字檢視) |
語境切換(,,X 系列) | ✅ | ❌ |
| Emoji 聯想排序/開關 | ✅ | 部分(App 端設定,鍵盤端隨語料版本) |
| 跨裝置同步 | 無(syncFolder 為進階手動設定) | 無 |