Skip to content

Releases: plateaukao/ohmybias

OhMyBias 0.8.0

Choose a tag to compare

@plateaukao plateaukao released this 28 Aug 19:09

變更

  • 英文補空白只對空白鍵生效 — 「英文補空白」開啟時,只有無候選字按空白鍵直印英文才在尾端補空白;按 Enter 送出原碼維持原樣、不再補空白(0.5.0 起兩者都補)。

OhMyBias 0.7.0

Choose a tag to compare

@plateaukao plateaukao released this 26 Aug 02:48

新增

  • 中/英切換快速鍵 — 設定 →「輸入」新增「中/英文切換」區塊:可另外指定一組快速鍵(例如 ⌃Space、⌥⇧E、F13)切換英文模式,也可以關掉「單擊 Shift 切換」。快速鍵可直接錄製,或從「常用組合」選單挑選(⌘Space、⌃Space 這類正被系統佔用的組合,錄製時會被系統先攔走,只能從選單挑)。快速鍵以 Carbon 全域 hot key 註冊(RegisterEventHotKey,無米蝦是目前輸入方式時才註冊、切走就取消),由系統在按鍵送到前景 app 之前攔下交給輸入法:iTerm2 這種不把 ⌘ 組合交給輸入法的 app 也切得動,Ghostty/Prowl 這種看輸入法沒插字就自己把按鍵重編碼送進 pty 的終端機也不會多出一個空白。(同一組合若被 Raycast、Alfred 之類的 app 也註冊了會被搶走,Carbon 偵測不到,設定頁只能提醒。)錄製時若該組合正被系統快速鍵佔用(Spotlight、切換輸入方式、指揮中心⋯ 這些由系統先攔截、輸入法收不到),會跳出對話框詢問是否代為停用系統那一組(寫入 com.apple.symbolichotkeys 並套用;若系統沒即時重讀會提示登出再登入)。沒有 ⌘⌃⌥ 的組合只接受 F 鍵,避免吃掉一般打字。

修正

  • ⌘⇧/⌃⇧ 組合鍵放開後誤觸中/英切換 — 按 ⌘⇧S 之類的組合時,若先放 ⌘、再放 Shift,原本會把「Shift 單獨按住的那一小段」當成單擊而切換英文。現在 Shift 一旦與 ⌘⌃⌥ 並用,直到全部放開前都不再視為單擊。

OhMyBias 0.6.0

Choose a tag to compare

@plateaukao plateaukao released this 21 Aug 09:27

修正

  • 切換輸入法偶爾靜默失敗(heap corruption)activateServer 會一邊在背景執行緒建反查表、一邊在主執行緒重載同一個共用的 CINTable,兩邊同時讀寫同一批 Dictionary,把 heap freelist 寫壞(BUG IN CLIENT OF LIBMALLOC / SIGTRAP),輸入法 process 死在切換途中,系統退回英文、使用者得再按一次。CINTable 改成「不可變快照+整份原子替換」:載入端在區域變數上組好完整快照再上鎖換掉,讀取端只在鎖內取出參考、其餘全在鎖外操作,建表不再擋按鍵路徑。
  • 每換一個 app 就整表重載一次 — IMK 每個 client app 各建一個 controller,其 engine getter 又呼叫 InputEngine.loadTable()cinTable.reload(),而共用的 static let cinTable 初始化時已經載過。移除這條重載路徑(InputEngine.loadTable() 一併刪除),字表只在啟動、,,RL、匯入字表、以及偏好設定改擴充表時重載。
  • 偏好設定改擴充表沒有生效info.plateaukao.ohmybias.reloadTables 通知從來沒有人接收(以前靠上述「換 app 就重載」矇混過去);改由 AppDelegate 明確接起來呼叫 reloadTable()

變更

  • 不再預先建立反查表 — 反查表只有注音/同音模式、簡碼/長碼模式、字碼提示會用到,一般打字完全不碰,卻在每次從別的輸入法切進來時就丟到背景整份重建(peak footprint 一度到 207 MB)。改為真的用到才建,並在匯入完成的訊息改用只掃一次碼表的字數統計。
  • 鍵盤佈局不再每次 activate 都重套 — 補回 lastAppliedKeyboardLayout 判斷(宣告了但從未使用):從別的輸入法切回來時仍一律重套 ABC 佈局(對方可能改過),app 之間切換則跳過。

安裝(已簽章+公證;需 macOS 14 以上):

  • Apple Silicon(M 系列):OhMyBias-0.6.0.pkg
  • Intel(2019 以後的 iMac 等):OhMyBias-0.6.0-x86_64.pkg(2026-08-23 補上,程式碼與 Apple Silicon 版相同,只是換編譯目標)

裝錯架構 Installer 會直接擋下。結尾建議登出再登入,也可稍後。

OhMyBias 0.5.0

Choose a tag to compare

@plateaukao plateaukao released this 21 Aug 05:53

新增

  • 英文補空白(預設關閉) — 設定 →「輸入功能」新增卡片:開啟後,英文直印送出的字母尾端自動補一個空白(無候選字按空白鍵、或按 Enter 送出原碼皆適用),接著打下一個英文單字不必自己補空白。只對純英文字母的組字串生效,含標點或萬用字元(*)的組字串維持原樣。
  • 設定顯示版本號 — 說明分頁「原始碼」連結上方加上版本行(x.y.z(build …)),回報問題時可直接對照。

安裝:雙擊 OhMyBias-0.5.0.pkg(已簽章+公證);結尾建議登出再登入,也可稍後。

OhMyBias 0.4.0

Choose a tag to compare

@plateaukao plateaukao released this 17 Aug 12:16

變更

  • 無候選字時可續打,空白鍵原樣送出字母 — 輸入碼查無候選字時不再自動清空組字串:可以繼續打(不受碼長上限限制),按空白鍵把打到一半的字母原樣送出,作為無蝦米模式下快速輸入英文單字的途徑(與 Enter 送出原文一致)。原「打滿碼長無候選自動清空」與空白鍵清空行為移除;要放棄組字改用 Esc 或退格。注意:模糊比對(相鄰鍵)開啟時,打錯的碼若被模糊比對找到候選字,空白鍵仍會送出該候選字。

安裝:雙擊 OhMyBias-0.4.0.pkg(已簽章+公證);結尾建議登出再登入,也可稍後。

OhMyBias 0.3.0

Choose a tag to compare

@plateaukao plateaukao released this 14 Aug 11:46

變更

  • 候選字排序改為「字表順序+,,PIN 固定排序」 — 打字路徑不再查詢/記錄字頻:原本每個按鍵最多兩次同步 SQLite 查詢(跨執行緒),且每 500 字觸發的字頻衰減(全表 UPDATE+DELETE)會讓當下那一鍵卡住。現在排序是純記憶體操作:有 ,,PIN 的碼把固定字排前,其餘一律維持字表順序。字頻機制(記錄、排序、衰減、JSON 遷移/同步)整組移除,,,RS 指令一併移除。
  • FreqTracker 瘦身更名為 PinnedStore、改用 pinned.db — 只剩 ,,PIN 固定排序單表+記憶體快取;首次啟動自動把舊 freq.db 的固定排序搬進 pinned.db 並刪除舊檔。全 controller 共用單一實例(IMK 每個 client app 各建一個 controller,原本每個都另開自己的 SQLite 連線與 pinned 快取),,,PIN 立即跨 app 生效。

安裝:雙擊 OhMyBias-0.3.0.pkg(已簽章+公證);結尾建議登出再登入,也可稍後。

OhMyBias 0.2.0

Choose a tag to compare

@plateaukao plateaukao released this 13 Aug 19:40

首個公開發行版 — 自 Yabomish 抽出的極簡嘸蝦米輸入法。

安裝

下載 OhMyBias-0.2.0.pkg 雙擊安裝,結尾建議登出再登入,
然後到 系統設定 → 鍵盤 → 輸入方式 → + → 繁體中文 → 無米蝦
首次切換時會引導匯入你的 liu.cin 字表(需自備合法取得的嘸蝦米字表)。

重點

  • 單一 app:輸入法內建 SwiftUI 設定視窗(輸入法選單 →「偏好設定⋯」)
  • 打字、查碼(注音/拼音反查)、繁簡轉換、字頻學習排序、,, 指令、擴充表 — 無聯想/詞庫/語料,約 2MB
  • 輸入來源顯示名稱「無米蝦」
  • 修正:游標選字窗寬度隨候選字數縮放、直向模式貼齊內容寬、切換視窗不再重播模式提示

完整變更見 CHANGELOG

🤖 Generated with Claude Code