晶晶輸入法:從自己每天用,到交給別人用
2025 年底開始規劃,2026 年 4 月動手,六週後發布第一版。這篇記下我為什麼要做,以及發布之後,遇到了哪些自己沒想過的問題。
最近一個月,Mac 上的注音輸入法變得很熱鬧,多了好幾個新的輸入法,有些也在處理中英文混打。看到的時候,我多少有點焦慮:自己花了好幾個月做的事,突然有不少人也在做。
但換個角度想,這也讓我更確定,中英文切換和選字的困擾不只我有。晶晶從發布到現在,已經有近 200 位使用者付費支持。原本只是想解決自己打字的困擾,現在多了繼續做下去的信心。
晶晶從 2025 年底開始規劃,今年 6 月正式發布,到現在已經走了好一段路。趁這個機會,把當初為什麼做,以及這一路怎麼走過來記下來。
為什麼要做
我原本是徹底的 Windows 使用者。Mac 雖然也用了十年,卻一直沒辦法當成主力,最大的障礙是輸入法拖慢了我打字的速度,連思緒都被打斷。
我的工作是軟體設計,每天除了寫規格,還要跟不同的團隊大量溝通,連開會時都得同時打字,語音輸入派不上用場。小麥注音和奇摩輸入法我都用過,詞庫比內建的好一些,但對我來說,最困擾的不是詞庫。
科技業的一句話裡,中英文常常要切換好幾次,而 Mac 用來切換中英文的 Caps Lock 鍵還有延遲,簡直是在懲罰打字快的人。
在華碩智慧輸入法出現之前,我在 Windows 上用的就是新注音的中英文自動切換,只是那時候還不會判斷英文單字。用了這麼多年,我一直希望 Mac 上也能有符合自己打字習慣的輸入法。
後來,工作用的 Windows 桌機壞了送修,我有好一段時間只能在 Mac 筆電上工作。那段時間我終於忍不住,決定自己做一個。
先想清楚,再動手
規劃的那幾個月,大部分時間花在一個問題上:不按任何鍵切換,輸入法要怎麼知道你現在打的是中文還是英文?
大千鍵盤上,英文字母鍵同時也是注音鍵。打 su,可以是 ㄋㄧ,也可以是 sure 的開頭。
最後定下來的規則是英文優先:還看不出你要打中文的時候,先顯示英文預測;按下聲調鍵(3、4、6、7 或空白),等於告訴輸入法「這是中文」,才換成中文候選字。這條規則到今天仍是晶晶的核心。
另一個決定是不從零開始寫。注音的部分建立在小麥注音上。它是開源的注音輸入法,選字引擎、詞庫、候選字視窗都很成熟,也是我在 Mac 上用過的輸入法裡,繁體中文選字品質很好的一個。
晶晶在這個基礎上,加上中英判斷、英文預測,以及之後陸續增加的功能。英文預測用的是 Google 公開的高頻英文詞表。
六週後才敢交給別人
2026 年 4 月開始寫程式。
程式是跟 AI 協作寫的,我做的其實就是本業:決定每個按鍵在每種情況下該怎麼反應,每天拿它來工作,再把撞到的問題一個一個記下來、說清楚。
能打字跟能每天用,差得很遠。從開始寫程式到 6 月初,六週裡改了三百多次。許多問題,都是自己每天用才會撞到的:it's、don't 這種帶撇號的英文,和 1,000 這種數字,原本會被拆成注音;我家的貓只要看到我在用電腦,就一定要過來站在鍵盤上,於是有了喵喵守門員:偵測到不像人打的連續按鍵,就先把鍵盤鎖住。
除了打字本身,還有偏好設定、詞彙管理,以及第一次使用的教學。光是教學頁,前後就改了九版。
安裝程式、簽章、Apple 的公證、試用與授權,也都得在交給別人使用前處理好。這些不直接影響選字,卻同樣花了不少時間。
6 月 3 日,1.0 正式發布。
發布之後,才碰到自己的日常以外
自己測試,只測得到自己的打字習慣和自己會用的 App。發布之後,回報開始來自各種沒想過的地方。
第一個讓我意外的,是注音打反。我以前用微軟新注音,開了中英混打之後,既沒有注音打反的修正,也沒有英文詞庫輔助,打錯就是錯了,所以我自己打字一直很守規則。但不少人打得很快,兩隻手的先後會顛倒:「我」該按 j i 3,手快就成了 i j 3;打「這一看就知道」,偶爾會變成「這一看ur.4知道」。這類回報陸續來了好幾封,我也一次一次調整,讓晶晶把顛倒的按鍵重新排好。
最難纏的是 Chrome 裡 Facebook 的貼文框。英文按 Tab 補完,intel 會變成 intelintelligence。同樣的操作在其他網站都正常,偏偏在這裡出問題。
前後推翻了三次結論,最後確定是那個貼文框在打字途中自己改動了內容。我一度判斷修不了,在說明書裡請大家改用 Safari。
兩個多月後,我換了一個做法:打字的過程不交給網頁,改顯示在輸入法自己的小視窗裡,打完才一次送出。這就是 2.4 版的「浮動組字窗」。
Facebook 的問題跟著解決。後來 iPhone 鏡像輸出裡按 Enter 整行消失的問題,也是從這個做法延伸出去才修好的。
其他回報也各有原因,像 Outlook 寫信時按 Tab,單字後面會多出四個空格。
這些問題都要有人在真實情況下打到,才會被看見。
詞庫是一個詞一個詞磨出來的
選字錯誤是另一條長期戰線。
我自己每天打字時,會把選錯的句子記下來,到現在累積了三百五十多筆,再加上使用者寫信來的回報。每一筆都會實際驗證:為什麼選錯?改了會不會讓別的句子變錯?確認之後,再決定怎麼改。
例如一位試用者打「試用期間」,出來的是「是用期間」,因為詞庫裡「是用」的頻率比「試用」高。
直覺的做法是把「是用」刪掉,結果「他是用手寫的」變成「他適用手寫的」。最後是補上「試用期間」這個詞,才兩邊都對。
幾乎每一個詞,都要這樣來回驗證。
從 8 月起,詞庫可以跟程式分開更新。修好的詞不必等新版本,也不用重新安裝,到現在已經線上更新二十多次。
AI 選字修正則是從 6 月開始試,測了兩個月,8 月才隨 2.0 版推出:在 Apple 晶片的 Mac 上執行一個小型語言模型,依照整句話的意思修正同音字,不需要連網。不過日常打字遇到的問題,還是要一筆一筆記、一筆一筆處理。
到今天為止
截至 2026 年 10 月,從開始寫程式算起將近半年,1.0 之後又發布了 18 個版本。
最初只是想解決自己在 Mac 上打字的困擾。交給別人使用之後,才慢慢看見,每個人的打字習慣、使用的 App,都會帶來我自己碰不到的問題。
晶晶是付費軟體,買斷 499 元。這不是為了賺大錢,而是我想對它負責:有人付了錢,我就得回每一封信、把回報的問題修好、持續出新版。這半年能幾乎每週更新,很大一部分是因為我知道有人在用、在等。
晶晶站在開源的小麥注音上,我很感謝那些年的累積。開源和付費是兩種不同的做法;對我來說,收費是讓自己能一直把它做下去的方式。
謝謝每一位付費支持晶晶的使用者,也謝謝願意花時間寫信回報問題、提供意見的人。這篇提到的修正,很多都是從你們的一封信開始的。如果你遇到選錯的字,或是在哪個 App 裡打字怪怪的,也歡迎照回報方式寫信給我。
下載晶晶輸入法,免費試用 14 天,不用綁信用卡。