You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
這個工單留著防止將來犯傻。
先說結論:實在不行的話,macOS 10.5 PPC 至 macOS 10.12 這個版本帶的注音輸入體驗甩給奇摩輸入法就行了。
理論上來講,macOS 10.9 移植威注音的話,有三種維護方式。
一是除了 IMKInputController & AppDelegate & UserDefaults 這三個部分以外全都用 C++ 搞定(乃至 IMKInputController 用 C++ 寫個 Delegate、讓 IMKInputController 自己完全套皮化。這樣的缺點就是只能用到 C++11 為止的特性。這樣一來,就可以用 Xcode 5 來搞定這種專案。鐵恨注拼引擎有 C++ 版,組字引擎可以換回 Gramambular 2 再想辦法把天權星的特有功能特性都移植過去(會比較麻煩)。
二是用 Swift 4 / Swift 5 或者更高版本的 C++,但這樣一來用來開發的機器也得用新版 OS,且對於 XIB 的偵錯非常麻煩。乃至於 macOS 10.9 Mavericks 理論上到底能不能跑 Swift 4 / Swift 5 寫的應用還很難講:目前已經沒有條件測試了;Swift 剛問世時曾一度無法用於 macOS 10.9 的桌面軟體開發。
三是全部使用 Objective-C,這下就得將鐵恨注拼引擎與天權星組字引擎全都用 Objective-C 重寫了。運氣好的話,這套組合拳可以往前打到 macOS 10.5 PPC。然而,這得需要一台骨董 mac 來跑舊版系統與舊版 Xcode,因為 macOS 10.5 - 10.8 的 Objective-C 的垃圾回收機制在新版 Xcode 當中不可用。
以上三種方式都難免用 XIB 實作軟體偏好設定介面 UI。如果用終端機文字介面來顯示輸入法配置 UI 的話,要麼犧牲 App Sandbox 特性,要麼就不實作「自訂使用者辭典目錄」的功能。
選字窗的話,可以直接用 IMK 選字窗。
暫時先亂扯到這裡。
Beta Was this translation helpful? Give feedback.
All reactions