不久之前一時興起,在小麥注音輸入法的 fcitx5 移植版本上,加上了一個實現性的功能:在打開特定的偏號設定之後,在輸入文字時,如果不是按下 Enter,而是按下 Ctrl 與 Enter 按鍵,那麼,輸入法就不是只將中文輸入到各種文書軟替中,而是輸入帶有注音標示的中文,呈現出來的效果,就像你現在看到的文章一般。
大概在今年一二月的時候,趁著過年有一點空檔,我和幾個朋友花了點時間調整了一下 macOS 版本的小麥注音輸入法,然後試著把小麥注音移植到 Linux 上,畢竟現在也會拿 Linux 系統工作,難免就會想把慣用的工具也一起帶過去。這次的調整中加上了可以加入自訂詞的功能,為了能夠方便修改自訂詞表格,所以直接使用純文字格式,自訂詞庫就是一組注音加上一個中文詞彙;為了可以方便修改這個表格,所以又加上了用 Ctrl + Enter 按鍵直接輸出注音的功能。
後來又想到,既然輸入法可以用來輸入中文詞彙與注音,那如果同時輸入又會如何呢?想起來就是 HTML 的 Ruby text,也就是注音標示這種情境了。
查了一下資料,W3C 在大約 98、99 年,就開始將 Ruby text 納入網頁標準,現在的主流瀏覽器也都支援這套規格,在製作網頁時,只要透過一定的 HTML 語法,對東亞語言加上特定標注,瀏覽器就可以將注音(或是拼音、假名等)顯示在文字上。而就算這套規格已經出現二十多年,印象中有注音標示內容的網頁也不多見。
稍微搜尋一番,台灣目前如果有人想要製作有注音標示的文字內容時,大概還是透過以下幾種方式:首先是在文書軟體中,使用加上了注音符號的字體,但是在傳遞、分享這種文件的時候,首先開啟的人也要有同樣的文書軟體,也要安裝特定字體,當然也可以匯出成 PDF 格式,將字體包進 PDF 中,或是將文字轉成向量曲線,但這樣的文件也難以複製與修改。
另外,像是 Word 等文書軟體,也有注音標示功能,使用者先輸入中文,然後讓文書軟體幫每個字標上注音,蘋果的 Pages 與 OpenOffice 也有這項功能,但感覺起來有些限制,像是文書軟體中一次能夠標示注音的文字有上限。像澳聲通的「字型版拼音注音」編輯器,看來就是想要解決這個字數上限的問題。
澳聲通提供一個網頁版的編輯器,只要在這個線上編輯器裡頭,輸入或是貼上中文,就會從詞庫中查詢文字的讀音,在編輯器中加上中文的拼音或注音,同時也利用了 Open Fonts 規格中一個字的字體可以有多個變體的特性,解決破音字的問題;最後,只要用戶的電腦上也安裝了澳聲通製作的特定字體,就可以把線上編輯器裡頭標好注音的文字,整篇複製、貼上到文書軟體中。這個編輯器還針對了編輯課本內容最佳化,可以呈現出課本的排版方式,也可以只針對某個教學進度範圍的字加上注音,像是你要編輯三、四年級的課文,就不需要對一、二年級的內容加上注音。
澳聲通還有一個圖像版本的線上編輯器,可以將加上注音的中文變成圖檔,這樣就可以透過圖片的形式,將加上注音的中文插入到各種線上文件中;澳聲通還將圖像版本編輯器,做成了 Google Slide 的 plugin,可以快速插入、編輯這類型的圖片。圖像版本的編輯器在產生了圖片之後,還可以把這個圖片拿回編輯器中以文字的形式編輯,雖然不知道技術細節,但感覺起來,這些圖片資料裡頭應該有些特定 metadata 區段,用來說明圖片裡頭其實是什麼文字。
現在的方案不少,但搜尋一輪下來,倒是沒看到什麼支援 HTML Ruby text 的方案。而如果想要在一些支援 HTML 的寫作平台上,像是 WordPress、Blogger 等等。寫一些帶有注音標示的文章,無輪是使用特定字體,或是將文字轉成圖檔,好像都不是方便的方案。想像中也可以做成某種線上編輯器,貼上中文之後,透過詞庫把整篇中文轉成加上注音的 Ruby Text,目前也還沒有這樣的作品。
把注音標示做進輸入法裡頭,看來是可以讓我在 WordPress 裡頭打一篇有注音的文章,但我也不知道有什麼人有這種需求就是了。
換一個思路,寫一個自動注音並導出html代碼的網頁工具?
最近還的確寫了這樣的東西,同時還做了 Chrome Extension。
https://openvanilla.github.io/McBopomofoWeb/#feature_input