本持自由軟體,Release Early, Release Often 之精神,我實在應該趕快把自由行列的程式碼公開出來。不過覺得程式碼實在太醜,而且其實根本也還沒寫出什麼,再者我現在其實是一邊寫一邊學 OOP,因此程式碼常有大幅改動,再者又覺 SVN 操作好麻煩,所以遲遲未發。
不過為了避免自由行列的想法消失在歷史之中。於是決定,先把自由行列專案的簡介發出。
簡易使用
行列輸入法雖然是用字根組字的輸入法,然而由於其字根的特性,需要花的記憶心力其實是比較小的,只是為了求快或者避免選字,時常必須記憶特別碼或簡碼。並且因為有些組字必須選字,而有些則不用,使得要時常注意螢幕或者把它的行為強記下來。
引入智慧選字的功能之後,自由行列的新特性將是簡易。也許不再追求最快的輸入法,但是卻有機會成為組字輸入法中最易上手,選字機會最低的輸入法。每次出字時,不會再有依是否要選字而有的不一致行為,同時我也想將加上特定字尾才能輸出難字的功能去掉,而藏在「w」中的符號表,也被拿到「`」之下。如此一來,輸入的一致性將大為提高。
符號輸入
符號輸入是自由行列要改進的核心事項之一。除了符號表之外,還有從透過從行列字根發展出的「符根」輸出符號的「行列定符」,以及透過英文鍵盤,輸出全形中文符號的簡易符號輸入。
使用過行列輸入法的人,即使不用特別說明,只要看到以下符號表,就會明白行列定符的意義。由於和字根非常相似,幾乎不用什麼記憶。
按鍵 | 符號 | 按鍵 | 符號 | 按鍵 | 符號 |
---|---|---|---|---|---|
1^ | = | 5^ | 」 | 8- | \ |
1- | ─ | 5^5^ | 』 | 8v | ‘ |
2^ | 「 | 5- | 〉 | 8v8v | “ |
2^2^ | 『 | 5-5- | 》 | 9^ | ※ |
2- | 〈 | 5v | ) | 9- | / |
2-2- | 《 | 5v | ) | 9v | ’ |
2v | ( | 5v5v | 〕 | 9v9v | ” |
2v2v | 〔 | 5v5v5v | 】 | 0^ | : |
2v2v2v | 【 | 6- | 、 | 0- | 。 |
3- | ! | 7^ | ? | 0-0- | · |
4- | + | 7- | , | 0-0-0- | … |
4-4- | # | 0v | ; |
在輸入完符碼後,按下 Shift+「詞彙鍵」即可輸出符號。
簡易符號輸入則是像新注音或新酷音那樣,在全型模式下,可輸入英文符號而輸出中文符號。此外,各種符號都可在緩衝區中再按下選字鍵選擇類似的符號。關於簡易符號輸入其實還是有很多改進的方法,有待開發。
事實上,對於符號輸入的改進,一部分的原因是要完全解決 Jedi 在他文章中所提出的跨 qwerty/dvorak 鍵盤時會遇到的問題。透過行列定符,使用者可以在完全不知道英文鍵盤的符號在哪的情況下輸出符號,讓行列自成一體系。而特意加強的簡易符號輸入,則是可依不同鍵盤輸出對應的中/英文符號。
繁簡分離
行列輸入法的字根除了可以用來拆繁體字外,其實也可以輸人簡體字。原本的設計是在輸入特定字尾時輸出簡體,但我想將簡體輸入獨立出來做為簡體模式。也就是說,我想嘗試讓自由行列具有做為一個簡體中文輸入法的可能性。
不只是輸入法
在製作 libfreearray 時,我所考慮的其實不只是輸入法而已,而是要將其發展成自由行列的通用函式庫。例如 typing tutor 或查碼程式,或其他更多的應用,都可基於其上發展。特別是一個可以在 Linux 平台上執行的 typing tutor,更是我將來有機會想實行的方向。覺得行列輸入法實在是一個很好的輸入法,現在似乎不太多人學,實為可惜。
手機輸入法
行列輸入法做為一個用數字排列字根的輸入法,自然具有成為手機輸入法的潛力,甚至要做到只有十鍵輸入,且不看螢幕都有可能。libfreearray 既然想成為行列的通用函式庫,最後很可能會希望建立起一個具有原始拆字字根,而非減縮後的 30 字根,的文字資料庫。屆時,當可研究如何製作手機輸入法。想來,要把行列字根轉到手機上其實有很多種做法,優缺點也不一,有心人可細細研究。
也許後來手機的鍵盤將不再有十鍵的限制,但行列做作手機輸入法的可能性還是令人憧憬。