🦐 Yabomish MANUAL

iOS 版

Yabomish 的 iOS 版本與 macOS 共用同一套輸入引擎與設定契約,最大的差異是安全模型:iOS 鍵盤擴充以「零權限」為設計目標。


12.1 安裝與啟用

  1. 在 iPhone 上安裝 Yabomish App
  2. 開啟 設定 → 一般 → 鍵盤 → 鍵盤 → 新增鍵盤,選擇 Yabomish
  3. 完成——不需要開啟「允許完整存取」

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 的對照

功能macOSiOS
打字 / 字表 / 候選排序✅✅
詞組+字級聯想✅✅(鍵盤端採輕量語料+學習版字級)
text 型 snippet 展開✅✅
shell / open / hermes 型指令✅❌(沙盒/零網路限制)
查字歷史(,,LH/,,RH)✅(另附設定程式 GUI)✅(,,LH 文字檢視)
語境切換(,,X 系列)✅❌
Emoji 聯想排序/開關✅部分(App 端設定,鍵盤端隨語料版本)
跨裝置同步無(syncFolder 為進階手動設定)無