PIXNET Logo登入

泰瑞的世界

跳到主文

資訊科技喜好者泰瑞的心情點滴、研究心得、經驗分享、知識收錄、實驗筆記…

部落格全站分類:數位生活

  • 相簿
  • 部落格
  • 留言
  • 名片
  • 9月 26 週四 201920:05
  • 簡單易用的自建輸入法軟體─DIME 教學說明

DIME-01.png
筆者使用過「通用輸入法編輯工具」、「雅虎奇摩輸入法」、「香草輸入法」(OpenVanilla)
、「GCIN for Windows」、「小小輸入法」這 5 套輸入法相關軟體,
搭配自己整理的碼表,產生出中文打字的環境。
深覺只要碼表編排得宜,要讓中打變得順手,並非是件難事。
但隨著 Windows 8、8.1、10 相繼問世,輸入法軟體必須滿足以下兩個特點,才不致於被使用者淘汰。
1.支援 Unicode CJK 基本平面及擴展 A/B/C/D/E 字元集:
 這會使輸入法支援的字數大幅增加,只要碼表字庫夠大,可以支援高達 7 萬個以上的漢字。
2.採用 TSF 輸入法架構:
 這會讓輸入法能夠在「市集應用程式」(Metro APP,從 Microsoft Store 下載、安裝的 APP)裡使用。
上述最前面 4 套輸入法相關軟體採用 IMM 輸入法架構,因此在第 2 點方面就無法滿足了!
雖然「小小輸入法」滿足以上兩個特點,但是因為它的功能太多、可彈性調整的項目繁多,
所以在安裝、操作、客製化方面,顯得有些複雜。
正好筆者最近偶然發現 DIME 這套輸入法軟體,
它功能不多、介面簡單,很適合初學者使用,於是筆者打算利用本文詳細介紹它。
因為筆者從 Google 搜尋「DIME」的結果中發現,有使用者反映 PIME 與 DIME 有些地方有衝突,
所以已經安裝 PIME 的使用者,建議先將 PIME 移除。
想要使用 DIME 的自建輸入法,第一步是必須要有一個整理好的「CIN 檔」,
也就是某套輸入法(注音、倉頡、無蝦米…)的「碼表檔」(可以混合單字、詞條、成語)。
筆者在此提供一個支援 CJK 基本平面及擴充 A/B/C/D 字元集的【泰瑞倉頡 CIN 檔】,
讀者下載並解壓縮後,可參考其內容、格式,編製成適合自己使用的輸入法碼表。
第二步是下載 DIME 安裝檔,它的下載網址是:
https://github.com/jrywu/DIME/raw/master/installer/DIME-x8664.zip
https://github.com/jrywu/DIME/releases
下載完成後,解壓縮,再執行「DIME-x8664.exe」,即可完成安裝,如下圖:
 
 
安裝完成後,第三步是在 Windows 10 的「開始」圖示上按右鍵,選「設定」,進入 Metro 風格的「Windows 設定」,
然後點選「時間與語言」,再點選「地區與語言」(或「語言」),最後點一下「中文(台灣)」,如下圖:
 
當「中文(台灣)」下方自動展開「選項」按鈕後,點選該按鈕,再點選「新增鍵盤」即可新增/移除輸入法,
DIME 預設會安裝「DIME大易」、「DIME自建」、「DIME行列」、「DIME傳統注音」這 4 套輸入法,
我們只留「DIME自建」就好,其餘 3 套輸入法都可以先移除,如下圖。
 
第四步就是匯入碼表了!
在【DIME 討論區】裡有提到,呼叫出 DIME〝設置頁面〞的方法如下:
開啟一個「非市集應用程式」的軟體,如「記事本」,將輸入法切換到「DIME自建」,
然後再按「Ctrl」+「\」,即可以呼叫出下面的〝設置頁面〞。
 
以筆者的碼表為例,最大碼長為 5 碼,所以要將上圖「組字區最大長度」由 4 改為 5,再按「套用」。
(其餘項目,使用者可以依據自己的偏好進行設定)
然後點選上方的「自建詞庫」頁籤,將畫面切換成下圖:
 
最後,點選「載入主碼表」按鈕,再選取自己編修好的「碼表檔」,
等畫面出現下圖後,按「確定」,返回上一個畫面後再按「確定」。
 
然後就可以快樂的使用「DIME自建」輸入法了!
下圖展示一下 DIME 支援 CJK Ext-B/C/D 字元集的漢字(4 個位元組的字元,圖中字體較大者)。
 
DIME 反查注音時,會將該字的所有注音都顯示出來,並以「|」隔開,如下圖:
 
補充說明:
1.不管使用者的 Windows 10 是 64 位元版,或是 32 位元版,
 DIME 預設的安裝路徑都是:C:\Program Files\DIME
2.匯入的碼表會被 DIME 修飾格式後,
 儲存到 C:\Users\Terry\AppData\Roaming\DIME 資料夾下的「Generic.cin」。
 上列路徑中,Terry 是筆者登入 Windows 的用戶名,請改為您的使用者帳戶名稱;而 AppData 是隱藏資料夾。
 讀者可複製該路徑,貼到檔案總管的網址列,修改用戶名後按 Enter,即可查看該資料夾下的所有檔案。
3.該路徑下的「GenericConfig.ini」是「DIME自建」輸入法的組態設定檔,保留使用者在〝設置頁面〞中設置的設定值。
4.如果日後自行整理的碼表有再次編修,可將「Generic.cin」刪除(不刪除亦可),
 再重新執行上述「載入主碼表」的程序即可。
(繼續閱讀...)
文章標籤

terryhung 發表在 痞客邦 留言(0) 人氣(11,952)

  • 個人分類:電腦─輸入法
▲top
  • 6月 21 週五 201920:35
  • 移植 Windows XP 內建中文輸入法至 Windows 8/8.1/10

XP-IME-1.png
筆者曾經發表過【移植 Windows XP 內建中文輸入法至 Windows 7/Vista/Server 2008】一文,
也在【「亂倉打鳥」輸入法─安裝及改造篇】一文裡介紹過「通用輸入法編輯工具」的操作方式,
而在【「輸入法對照表」的妙用與「通用輸入法編輯工具」的限制】一文裡則介紹了「通用輸入法編輯工具」的使用條件。
對於有使用 WinXP 內建輸入法需求的人而言,要將 WinXP 內建的傳統輸入法移植至 Win7,並沒有太大的困難。
如果採用「通用輸入法編輯工具」匯入自訂對照表(碼表)的方式,來產生輸入法(程式),那就更容易了!
「通用輸入法編輯工具」是 WinXP 內建的一支程式,
用它產生出來的輸入法與 WinXP 內建的輸入法,其實是同一系列的檔案,
在本文中統一將此系列的檔案都簡稱為「XP輸入法」。
筆者多年前幫朋友在 64 位元的 Windows 7 上,用「通用輸入法編輯工具」產生過自訂的XP輸入法,
最近,因為朋友的電腦換成 64 位元的 Windows 10(版本 1803),再度求助筆者,
所以筆者抽空實測了一下,並將移植過程、結果發表於本篇文章。
(雖然筆者在 Win8、8.1 未曾實測過,但移植過程、結果應該與 Win10 是一樣的)
【移植 Windows XP 內建中文輸入法至 Windows 7/Vista/Server 2008】一文介紹的移植方式,
同樣也能適用於 Windows 8/8.1/10,
只是近幾年的電腦大多配備 4GB 以上的記憶體(RAM),
所以幾乎都安裝 64 位元的 Windows(8、8.1、10),而較少人安裝 32 位元的 Windows。
在 64 位元 Windows 裡,只能使用「通用輸入法編輯工具」匯入自訂碼表;
不像在 32 位元 Windows 裡,可以直接複製原生的 WinXP 輸入法檔案,再匯入機碼,即可使用。
因此,筆者將「XP輸入法」移植至 Win10 過程中會使用的檔案,另外壓縮成一個檔案,下載網址為:
http://www.mediafire.com/file/0w5hm1k09a7vvlc/WinXP_IME_Lite.zip
壓縮檔內的資料夾/檔案說明如下:
Win32 資料夾:必要檔案,擷取自 Windows XP Professional with SP3;
Win64 資料夾:必要檔案,擷取自 Windows Server 2003 R2 x64。
Lctool:相關字詞編輯工具(備用檔案,檔名後面的數字用來區分係屬 32 或 64 位元版)
Uimetool:通用輸入法編輯工具(主要檔案,檔名後面的數字用來區分係屬 32 或 64 位元版)
THCJA-Lite:倉頡(三代及五代混合)碼表,僅包含 CJK 字元集的漢字(20,902 個字)及大量符號
THPho-Lite:注音碼表,僅包含 CJK 字元集的漢字(20,902 個字)及大量符號
產生「XP輸入法」的步驟如下(以倉頡為例):
如果是 32 位元 Windows,只需操作步驟一至三;如果是 64 位元 Windows,需操作步驟一至五。
一、視自己的 Windows 版本(32 位元或 64 位元),
  複製 Win32 或 Win64 資料夾下的「子資料夾」(Win32 只有一個,而 Win64 則有兩個),
  然後進入 C:\Windows,再選「貼上」,然後按「繼續」(或「是」、「確定」)。
二、以系統管理員身分執行「Uimetool_32.exe」。
三、出現「通用輸入法建立精靈」視窗後,依序執行:
  (1)輸入法名稱:請填入 2 個漢字,如:「泰倉」,然後按「下一步」。
  (2)產生 .IME 檔的英文檔名:請填入英數字(大小寫不拘),如:「THCJA」,然後按「下一步」。
  (3)對照表檔案:請以瀏覽檔案的方式帶入上述的「THCJA-Lite.txt」,然後按「下一步」。
  (4)最大組字字根數目:請調成「5」,嗶聲請視個人需要選擇,然後按「完成」。
四、以系統管理員身分執行「Uimetool_64.exe」。
五、出現「通用輸入法建立精靈」視窗後,執行過程全部如上,
  最後按「完成」時,可能會出現錯誤提示,可先忽略。
建立好「XP輸入法」後,可開啟「記事本」來測試,然後按「Win+空白鍵」,切換輸入法。
筆者切換到上例的「泰倉」輸入法後,預設會出現「,半」(如下圖),
將滑鼠移到「,」上面,點一下,就會切換成「泰半」,然後即可正常輸入文字。
 
如果想編輯下列畫面出現的「相關字詞」(綠色字),
可以執行「Lctool_32.exe」、「Lctool_64.exe」(需以系統管理員身分執行)來編修。
至於其編修方式,本文省略,不做介紹,請有需要的人自行摸索。
 
而在上例的「泰倉」方塊裡按右鍵,選「內容」,會出現下列對話方塊,可視個人需求再做進階設定。
 
注意:
因為「通用輸入法編輯工具」是採用 IMM(Input Method Manager)架構,而非 TSF(Text Service Framework),
所以產生後的「XP輸入法」,只能在桌面環境的應用程式裡使用,在「市集應用程式」(包括 Edge)裡無法使用。
如果想將產生的「XP輸入法」從按下「Win+空白鍵」跳出的清單中移除,
請參閱【解決 Windows 10 無法移除「僅桌面」類型的輸入法】一文。
因為筆者以前用 64 位元版的「Uimetool.exe」產生「XP輸入法」後,
原本碼表裡的 CJK Ext-B/C/D/E 字元會被全部顯示成「□」(框框),因而無法滿足筆者的需求。
所以筆者建議改用「小小輸入法」這套輸入法框架軟體,搭配自訂碼表,會比使用「XP輸入法」來得好。
如果有讀者覺得「小小輸入法」並不適合自己,也可以改用「DIME」這套 Windows 輸入法軟體。
它可以匯入自訂的碼表(cin 檔格式),而且有以下兩個特點:
(1)支援 CJK Ext-B/C/D/E 字元集、(2)採用 TSF 輸入法架構。
(值得注意的是它預設最大碼長是 4 碼,匯入倉頡碼表時,應將最大碼長手動調為 5 碼,不然會打不出 5 碼的字。
詳細操作說明,請見筆者寫的【簡單易用的自建輸入法軟體─DIME 教學說明】一文)
現今的 Windows 輸入法,如果沒支援以上這兩個特點的話,就太弱了!
第一個特點是支援的字數會變多,碼表編修得宜的話,至少七萬個漢字起跳;
第二個特點則是讓輸入法能夠在 Metro APP(從 Microsoft Store 下載、安裝的 APP)裡使用。
(繼續閱讀...)
文章標籤

terryhung 發表在 痞客邦 留言(0) 人氣(2,254)

  • 個人分類:電腦─輸入法
▲top
  • 6月 19 週三 201919:25
  • 解決 Windows 10 無法移除「僅桌面」類型的輸入法

Win10-IME-Setup.png
筆者前陣子試著在 Win10 Version 1803 裡用 WinXP 的「通用輸入法編輯工具」(Uimetool.exe)產生輸入法。
產生方式請參考【移植 Windows XP 內建中文輸入法至 Windows 7/Vista/Server 2008】一文的介紹,
由於筆者是採用匯入對照表(碼表)的方式來產生輸入法,所以過程精簡很多!
但是「通用輸入法編輯工具」是採用 IMM(Input Method Manager)架構,而非 TSF(Text Service Framework),
所以產生後的輸入法,只能在桌面環境之下正常使用,在「市集應用程式」裡無法使用。
基於 IMM 架構的輸入法會被 Windows 10 標示為「僅桌面」(或「只適用於桌面」),
當使用者想移除它時,會遇到如下的畫面:
 
上圖的「泰倉」是筆者使用「通用輸入法編輯工具」產生的輸入法,但它的「移除」按鈕並無作用。
後來,筆者利用 Google 搜尋後,得出移除的方法如下:
一、先將右邊紅色字串複製起來:C:\Windows\explorer.exe shell:::{BF782CC9-5A52-4A17-806C-2A894FFEEAC5}
二、在桌面空白處,按右鍵,選「新增」→「捷徑」。
三、出現〝建立捷徑〞視窗後,在〝輸入項目的位置〞欄,按右鍵,選「貼上」,再按「下一步」。
  在〝輸入這個捷徑的名稱〞欄,輸入「輸入法設定」,再按「完成」。
四、開啟桌面上的「輸入法設定」捷徑後,會看到如下的畫面:
 
五、點選上圖中的「選項」後,會出現如下的畫面:
 
六、此時按下「泰倉」右邊的「移除」,再按下方的「儲存」,就可以成功移除該輸入法了!
讀者如果有安裝到 IMM 架構的無蝦米輸入法,也能夠使用上述的方法來「移除」。
不過,「解除安裝」無蝦米輸入法之後,無蝦米就會從上圖的輸入法列表中永久「移除」,
因此,上述的移除方式應該只有「透過通用輸入法編輯工具產生輸入法」、「安裝到 IMM 架構輸入法」的人會用到。
(繼續閱讀...)
文章標籤

terryhung 發表在 痞客邦 留言(0) 人氣(50,535)

  • 個人分類:電腦─輸入法
▲top
  • 4月 26 週五 201910:13
  • 全字庫(CNS11643)字型、屬性、授權方式更新情況

筆者在 2010 年 9 月曾經發表過【全字庫屬性資料表格整理方法(一)─事前準備篇】一文,
當時「CNS11643 中文標準交換碼全字庫」(簡稱全字庫)由行政院主計處負責統籌,
申請其字型、屬性(注音、倉頡、筆劃等輸入法)需要以發函的方式向行政院主計處取得授權及光碟。
隨著政府組織改造,全字庫的業務交由國家發展委員會負責運作,
而國發會依「政府資料開放授權條款」於 2015 年 2 月 1 日將發文取得授權及光碟的方式,
改成讓使用者直接於其網站上下載,此舉使得取得全字庫的字型及屬性更方便、更容易了!
國發會將全字庫的字型、屬性公告在下列網址,任何人皆可下載:
https://data.gov.tw/dataset/5961
筆者下載了民國 108 年 4 月 18 日更新的「全字庫資料集」(ZIP 檔),
以筆者所撰【Unicode 各字元集代表性漢字】一文的 CJK Ext-C/D/E 代表字,
開啟該 ZIP 檔的「Open_Data\Properties\CNS_phonetic.txt」進行搜尋,
(注意!需先開啟「Open_Data\MapingTables\Unicode\CNS2UNICODE_Unicode 2.txt」,
將代表字的 Unicode 碼轉換為全字庫代碼,才能到「CNS_phonetic.txt」搜尋)
結果發現「全字庫注音」應已支援 CJK Ext-C/D 字元集了,但還不支援 CJK Ext-E 字元集。
筆者目前發表於【新版「泰瑞系列中文輸入法對照表」簡介】一文的泰瑞注音碼表,
目前只支援 CJK(涵蓋 Big5)、CJK Ext-A/B 字元集,
等筆者有空再來更新至支援 CJK Ext-C/D 字元集,
如果讀者迫不及待想先更新,最新的「全字庫的屬性資料表」應與筆者 2010 年時取得的格式相去不遠,
讀者可以參考筆者所撰「全字庫屬性資料表格整理方法」系列 4 篇文章自行整理,文章連結如下:
【全字庫屬性資料表格整理方法(一)─事前準備篇】
【全字庫屬性資料表格整理方法(二)─整理過程篇】
【全字庫屬性資料表格整理方法(三)─改善排序篇】
【全字庫屬性資料表格整理方法(四)─檢查錯誤篇】
(繼續閱讀...)
文章標籤

terryhung 發表在 痞客邦 留言(0) 人氣(194)

  • 個人分類:電腦─輸入法
▲top
  • 7月 18 週一 201620:33
  • 新版「泰瑞系列中文輸入法對照表」Excel 檔(使用說明篇)

再就前篇【6 個 Excel 檔】的使用,
舉「倉頡.xlsx」為例,說明它們與前篇各個目標的關聯性。
第一個目標(無漏字):
先將「倉頡.xlsx」的工作表依「十進位碼」(Unicode 十進位碼)由小到大排序,
然後參考【Big5、Unicode 中文字集總整理】該篇文章內,
所載各字元集的「十進位碼」範圍,一次驗證一個字元集。
假設先驗證「CJK Ext-A」字元集,
就將排序後的 D 欄(十進位碼),由「13312」至「19893」的儲存格,複製起來,
再貼到「驗證.xlsx」的「唯一化」這個工作表的 A 欄(須先在 A1 取個標題),
再用「資料」群組按鈕裡的「進階」(篩選)功能,把 A 欄不重複的內容複製到 B 欄,
最後將 B 欄的數值貼到「Ext-A」工作表的 B 欄,
在 C2 欄輸入「=A2/C2」的公式,填滿至最後一列(有資料的),
最後再篩選 C 欄,如果只有「1」可以選,代表完全無漏字。
如果有漏字,而且漏字很多的話(比較 A、B 欄有資料的列數即可得知漏字數目),
可以參考【全字庫屬性資料表格整理方法(四)─檢查錯誤篇】的作法,
找出缺漏字元的 Unicode 十進位碼,
再把這些十進位碼貼到【Unicode code converter】網頁的「Decimal」欄(最右下),
再按「Convert」按鈕,即可在「Characters」欄(最左上)得出對應的字元。
第二個目標(編碼不重複):
其實在整理碼表之前,應該先處理這個問題,
而不是等到 Excel 製作好後,再來處理這個問題。
像是「瑲珩」的大易碼表就有 498 組重複,
因為「小小輸入法」平台對於重複的「組字字根 字元」對照組合,
在進行組字時會有自動過濾(自動忽略重複)的功能,因此可以不處理重複的問題,
但是一個好的碼表,應該解決這一方面的問題。
具體作法是把「組字字根 字元」(只用半型空白分隔)全部貼到空白的 Excel 的 A 欄,
記得先在 A1(儲存格)輸入任意標題,然後在 B1 也輸入任意標題,
並在 B2 輸入以下公式(假設 A 欄最後一列是 A5000):
=IF((COUNTIF($A$2:$A$5000,A2)>1)*(COUNTIF($A$2:A2,A2)=1),"重複","唯一")
然後用「向下填滿」的功能,套用 B2 的計算公式至 B 欄其他列。
最後再用篩選的方式,篩選出 B 欄內容顯示為「重複」二字的資料列,
並用「刪除列」的功能將它們直接刪除,
關閉篩選後,所得到的 A 欄內容,就不存在重複的「組字字根 字元」。
不過,這一招對於某些符號而言並不管用,
舉個例子來說,碼表內有下列 3 列:
;;a ⒜
;;a ⓐ
;;a Ⓐ
篩選不重複的資料後,第 2 組會被 Excel 認為與第 3 組重複,而被上述的計算公式標示為「重複」,
但是兩者的碼位並不相同,
「ⓐ」的 Unicode 十進位碼為「9424」,
「Ⓐ」的 Unicode 十進位碼為「9398」,
因此必須改用「組字字根 十進位碼」這樣的組合,
才能真正檢查出是否有重複編碼的問題。
第三個目標(依常用頻率排序):
先將「倉頡.xlsx」的工作表依「大五碼」由小到大排序,
「大五碼」顯示「63」對應的字元,代表該字元並未收錄至 Big5 碼,
如果用 ANSI(系統內碼,在繁體中文 Windows 中為 Big5 碼)編碼格式儲存的話,
它們會全部儲存成「?」,而「?」的 Big5 十進位碼即為「63」。
依「大五碼」由小到大排序,目的是要賦予「分區」這一欄對應的數值,
在還沒分區之前,此欄對應的內容為空白。
依「大五碼」排序後,筆者在對應的「分區」這一欄輸入數值的準則如下:
(1)大五碼為 63 時,對應的「分區」先保留為空白。
(2)大五碼為 42048 至 50814 時,對應的「分區」設為「1」(Big5 常用漢字)。
(3)大五碼為 51520 至 63964 時,對應的「分區」設為「2」(Big5 次常用漢字)。
(3)大五碼非為以上三者時,對應的「分區」設為「3」(Big5 其他漢字或符號)。
然後將「倉頡.xlsx」的工作表依「十進位碼」由小到大排序,
依「十進位碼」排序後,筆者在對應的「分區」這一欄輸入數值的準則如下:
(1)十進位碼為 13312 至 19893 時,對應的「分區」設為「A」(CJK Ext-A)。
(2)十進位碼為 131072 至 173782 時,對應的「分區」設為「B」(CJK Ext-B)。
(3)十進位碼為 173824 至 177972 時,對應的「分區」設為「C」(CJK Ext-C)。
(4)十進位碼為 177984 至 178205 時,對應的「分區」設為「D」(CJK Ext-D)。
然後篩選「分區」這一欄,將空白的儲存格設為「5」,
其所代表的意義是:CJK 扣除 Big5 之外的漢字,也就是早期俗稱的「外字」。
以上設定分區時,可使用 Excel 的「向下填滿」功能,快速設定完成。
最後關閉篩選,按「分區」由小到大排序,這樣至少就能得到一個依常用字來排序的碼表。
第四個目標(編碼務求正確):
即使仿效「瑲珩」採用讓程式依字形及拆碼原則得出機器拆碼,
也不能保證每個字的拆碼是百分之百正確無誤的。
未來筆者可能會規劃成立 Facebook 的專頁,讓使用者回饋編碼錯誤的情形。
單就個人能力而言,最簡單的檢查方向就是「組字字根的鍵數」,也就是所謂的「碼長」,
比如倉頡最多取 5 碼,因此筆者在這 6 個 Excel 檔裡就提供「碼長」這一欄,
用篩選的方式就能快速得知碼長是否有 1 至 5 以外的情形。
第五個目標(允許容錯碼):
這個目標牽涉的層面有點複雜,
像是倉頡有三代與五代之分,不過影響的字元數量有限,
反而是受「國字標準字體」影響的字元卻為數不少,
像是「今」的寫法依「國字標準字體」應寫為「𠆢一フ」,
「國字標準字體」未公布前,大多數印刷字型會顯示成「𠆢、フ」,
依照前者的寫法拆為「人戈弓」時不會有重碼的問題,
依照後者的寫法拆為「人一弓」時就會有重碼的問題(與「仃」、「气」重碼),
有重碼情形的話,就會有重碼字排序的問題。
使用 Excel 整理時,雖然可以把不同來源的碼表貼到同一個 Excel 檔裡彙編,
但是處理重碼字問題時,免不了還是要以人工進行判斷、決策及調整。
使用「小小輸入法」平台的話,通常設定為:
組字時,按下空白鍵後,一律將第 1 個候選字「上屏」。
使用者打字習慣之後,自然就會去記憶哪些重碼字不在第 1 個候選字,
並且在組字時不能按下空白鍵,必須要按下對應候選字的數字鍵。
就算對於支援的字元集變成海量時,也不用擔心重碼率提高的問題,
因為使用者在打某一個特殊的「罕見字」時,
打完組字字根後,自然會停下來看看,該罕見字有沒有出現在候選字窗格裡。
所以,筆者認為行列官版碼表在 CJK Ext-B/C/D 編碼的末尾加上「i」就顯得有點多餘了!
因為,使用者有時並不會知道他打的字是不是「罕用字」,
就算知道,也很難猜測這個「罕見字」屬於 CJK、CJK Ext-A,或是屬於 CJK Ext-B/C/D。
但是,對於沒有「小小輸入法」平台這種設計的輸入法軟體而言,
重碼字過多時就是一種負擔,更不用提增加容錯碼這件事了!
所以輸入法軟體(平台)的設計也是相當重要的一環,
此時碼表檔就變成只是配角罷了!
(繼續閱讀...)
文章標籤

terryhung 發表在 痞客邦 留言(0) 人氣(596)

  • 個人分類:電腦─輸入法
▲top
  • 7月 18 週一 201619:56
  • 新版「泰瑞系列中文輸入法對照表」Excel 檔(檔案結構篇)

筆者整理輸入法對照表(碼表)時,設定的目標如下:
一、對支援的字元集應完整涵蓋,不應有漏字的情形。
二、碼表內不重複出現相同的「組字字根(編碼) 字元」對照組合。
三、對於重碼字,應依常用頻率進行排序。
四、各字元的組字字根應力求正確。
五、在不增加重碼情形的原則下,允許存在「容錯碼」。
想要達成以上目標的話,借助 Excel 來整理碼表是一個很好的方法。
為了方便網友能依自己的需求來調整「泰瑞系列中文輸入法對照表」,
因此筆者提供「泰瑞系列中文輸入法對照表」Excel 檔的下載連結如下:
http://www.mediafire.com/file/enw3mbxfa9uuwtf/mb_excel.zip
下載並解壓縮後,
可以得到 6 個碼表的 Excel 檔,
每個 Excel 檔都只有 1 個工作表,結構為下列 5 欄:
原始順序、組字字根、字元、十進位碼、大五碼、分區、碼長。
另外,還附帶 1 個「驗證.xlsx」的 Excel 檔,
分為 CJK、Ext-A、Ext-B、Ext-C、Ext-D、唯一化,這 6 個工作表,
前 5 個工作表的結構為下列 3 欄:
十進位碼、唯一化後、計算公式。
「行列.xlsx」的原始順序,係依據【行列官網】提供的下列 4 個 txt 檔:
(1)array30_27489-V201509
(2)array30_ExtB_V2016A
(3)array30_ExtCD_V2013A
(4)array30_Ext E_V2016A
逐一將其內容複製、貼上到 Excel 後,再賦予數列數值。
其實早在 2012 年 6 月時,筆者即已規劃擴充倉頡、行列碼表,
因為當時微軟已經發佈 Windows 8 預覽版,
其內建的新細明體(含ExtB)已完整支援 CJK Ext-C/D 字元集,
因此筆者有必要準備更新「泰瑞版小小輸入法」內建的碼表。
當時整理官版行列碼表時,發現它缺少 CJK Ext-C/D 其中的 48 個字。
由於筆者對行列拆碼方式並不熟悉,於是將這 48 個字 E-Mail 給行列官網聯絡人,
雖然有收到回信,惟其表示:現在太忙,這幾天會先把那 48 字編碼給筆者。
但最後筆者還是沒等到……所以筆者只好將行列碼表設定會支援到 CJK Ext-B。
其實當時發現它缺少 CJK Ext-B 的「𠔆」(U+20506),
只不過這個字與「𠔅」(U+20505)外形幾乎完全相似,只是碼位不同,
因此直接以後者的組字字根作為前者的組字字根即可。
2016 年 7 月筆者再次整理行列碼表時,因為得知官網有調整過一些字的組字字根,
因此必須全部重新下載,再來驗證有無缺漏字。
結果還是發現漏掉 CJK Ext-C 的 2 個字:「𫊖」(U+2B296)、「𫍟」(U+2B35F),
這次筆者索性直接為這 2 個字加上組字字根,並編入碼表。
「大易.xlsx」的原始順序,係依據【瑲珩】的排序。
「倉頡.xlsx」、「注音.xlsx」、「無蝦米.xlsx」的原始順序,
係依據筆者早年整理而成的碼表順序,至於其各自的排序原理,筆者已不復記憶。
總之,「倉頡」的 Big5 重碼字排序有照創始人朱邦復先生的規範,
他的規範並不是按照 Big5 碼位,而是按照使用頻率,
像是「知」比「佑」常用,所以排在第 1 順位。
不過,讓筆者感到疑惑的是「掀」竟排在「抓」的前面。
「抓」不管是 Big5 碼位、筆劃、使用頻率應該都比「掀」優先才對。
這或許是當時的時空背景或主觀因素而造成的,
所以「抓」被賦予另一個組字字根,即為「xqhlo」(難手竹中人),
只要是排在第 2 順位的重碼字,五代倉頡都會多一條以「x」(難)開頭的編碼。
「注音.xlsx」的原始順序已有考慮同音字使用頻率的問題,
「拼音.xlsx」(漢語)的原始順序則完全依照「注音.xlsx」的原始排序。
採用 Excel 整理碼表時,「組字字根」這一欄要特別注意,
像是注音會有「ㄢˋ」(按、岸)這種組字字根,對應鍵盤為「04」,
但是如果將純文字的內容直接貼到 Excel 的話,會被自動更改為「4」,這樣就會出錯!
因此最好先將「組字字根」這一欄的〝儲存格格式〞設為「文字」,
之後將純文字的內容直接貼到 Excel 的這一欄,就能避免此種錯誤。
(繼續閱讀...)
文章標籤

terryhung 發表在 痞客邦 留言(0) 人氣(5)

  • 個人分類:電腦─輸入法
▲top
  • 7月 13 週三 201620:40
  • 新版「泰瑞系列中文輸入法對照表」簡介

從 2010 年筆者改用「小小輸入法」到今天,已經過了 6 年的歲月!
這段時間裡,Windows 8、8.1、10 陸續登場,
由於新一代的〝市集應用程式〞(Metro APP)僅支援 TSF 架構(不支援 IMM 架構)的輸入法,
因此移植 Windows XP/2003 的「通用輸入法編輯工具」至 Windows 8/8.1/10 上,已經落伍!
而「Yahoo! 奇摩輸入法」及「OpenVanilla 香草輸入法(for Windows)」幾乎不再推陳出新,早晚也會被淘汰。
所以,筆者這些年來都一直使用不斷更新的「小小輸入法」,
也陸陸續續為「泰瑞版小小輸入法」內建的對照表(碼表)進行擴充或改良,
不過,筆者卻因此忽略了早些年發布的「泰瑞系列中文輸入法對照表」仍有網友會下載並加以利用。
有鑑於此,於是筆者近日重新整理了一下「泰瑞版小小輸入法」內建的碼表,
並去除碼表內的設定值、按鍵定義、直通車這些項目,
把它們純粹碼表的部分提取出來,獨立成 UTF-8 編碼格式的 txt 檔。
這些 txt 檔的內容大致可以分為以下這些段落:
## 大五碼-常用漢字
## 大五碼-次常用漢字
## 大五碼-其他漢字
## 大五碼-符號
## 中日韓統一表意文字-大五碼外字
## 中日韓統一表意文字-符號
## 中日韓統一表意文字-擴展A區
## 中日韓統一表意文字-擴展B區
## 中日韓統一表意文字-擴展C區
## 中日韓統一表意文字-擴展D區
使用文字編輯工具(例如:EditPlus)開啟後,尋找「##」即可查看具體分為哪些段落。
新版「泰瑞系列中文輸入法對照表」提供下列 6 種正體中文(繁體中文)常見的輸入法碼表:
一、泰瑞倉頡:
  支援字集:CJK(涵蓋 Big5)、CJK Ext-A/B/C/D 字元集。
  字根定義:abcdefghijklmnopqrstuvwxy
  下載位置:http://www.mediafire.com/download/s8289lra6tl6a79/THCJ5.zip
  重要提醒:此檔案未包含泰瑞倉頡符號碼表。
二、行列三十:
  支援字集:CJK(涵蓋 Big5)、CJK Ext-A/B/C/D 字元集。
  字根定義:abcdefghijklmnopqrstuvwxyz;,./
  下載位置:http://www.mediafire.com/download/wwsk4444hbv4bgw/THArray.zip
  重要提醒:已刪除原本官版碼表在 CJK Ext-B/C/D 字元編碼末尾加上的〝i〞。
三、泰瑞注音:
  支援字集:CJK(涵蓋 Big5)、CJK Ext-A/B 字元集。
  字根定義:abcdefghijklmnopqrstuvwxyz1234567890-;,./
  下載位置:http://www.mediafire.com/download/k0ynfdqy94dgmsa/THPho.zip
四、漢語拼音:
  支援字集:CJK(涵蓋 Big5)、CJK Ext-A/B 字元集。
  字根定義:abcdefghijklmnopqrstuvwxyz12345(1為1聲、2為2聲、3為3聲、4為4聲、5為輕聲)
  下載位置:http://www.mediafire.com/download/bys9o34dy4zkvhx/THPY.zip
五、無蝦米:
  支援字集:CJK(涵蓋 Big5)、CJK Ext-A/B/C/D 字元集。
  字根定義:abcdefghijklmnopqrstuvwxyz[]',.
  下載位置:http://www.mediafire.com/download/4ce8l3swvsc9bo7/THLiu.zip
  重要提醒:已刪除原本加字字詞檔在 CJK Ext-A/B/C/D 字元編碼末尾加上的〝;〞。
六、大易四碼:
  支援字集:CJK(涵蓋 Big5)、CJK Ext-A 字元集。
  字根定義:abcdefghijklmnopqrstuvwxyz1234567890=;,./
  下載位置:http://www.mediafire.com/download/3l563x85f1abf3k/THDayi.zip
七、符號:
  支援字集:CJK(涵蓋 Big5)、日文字元集。
  字根定義:abcdefghijklmnopqrstuvwxyz[]\;',./
  下載位置:http://www.mediafire.com/download/55prt8a1fg2pk3o/Symbol.zip
  重要提醒:分為 4 個不同種類的碼表,請自行視需要擷取後添加於常用的輸入法碼表末尾,
       並修改字根定義為:abcdefghijklmnopqrstuvwxyz[]\;',./
另外,碼表來源、碼長範圍已載明於碼表檔案的開頭。
目前「行列」官方已經提供 CJK Ext-E 字元集的碼表,
取得「倉頡」的 CJK Ext-E 字元集碼表也不困難,
雖然新版的「明朝花園」字型已支援 CJK Ext-E 字元集,
但筆者會等到微軟發佈支援 CJK Ext-E 字元集的新細明體字型後,再來擴充行列及倉頡碼表。
請有自行整理、改編碼表需求的網友,下載上述檔案後,再依實際需要剪裁、擴充或調整。
(繼續閱讀...)
文章標籤

terryhung 發表在 痞客邦 留言(0) 人氣(1,032)

  • 個人分類:電腦─輸入法
▲top
  • 8月 12 週一 201302:08
  • Windows 8.1 正體中文預覽版內建輸入法使用心得

Windows 8.1 預覽版已經在2013年6月發布了!
任何人都可以從 Microsoft 的官方網站下載到光碟映像檔,
下載網址是:http://windows.microsoft.com/zh-tw/windows-8/preview-iso
微軟提供的產品金鑰是:NTTX3-RV7VB-T7X7F-WQYYY-9Y92F
(繼續閱讀...)
文章標籤

terryhung 發表在 痞客邦 留言(0) 人氣(5,420)

  • 個人分類:電腦─輸入法
▲top
  • 7月 02 週六 201121:49
  • 終於找到支援 CJK 及其 Ext-A 字元集的大易輸入法對照表了!

一年前,我使用 Google 搜尋「大易 cin」、「大易 碼表」…
都找不到完整支援 CJK 字元集的大易輸入法對照表。
期間曾經找到 App Shopper 網站有販售「大易輸入法字典」,
它支援繁體、簡體、香港字及標點符號,
雖然以不到新台幣 100 元的價格就能取得,
但因為我沒有 iPhone,
而且即使請有 iPhone 的朋友幫忙,
也不知道下載下來的文件是否可以轉為純文字檔,
最後因而作罷!
(繼續閱讀...)
文章標籤

terryhung 發表在 痞客邦 留言(0) 人氣(1,724)

  • 個人分類:電腦─輸入法
▲top
  • 9月 26 週日 201010:12
  • 全字庫屬性資料表格整理方法(四)─檢查錯誤篇

第一階段:檢查是否有設定範圍內的漏字
我們設定的字元集範圍是 CJK、CJK Ext-A、CJK Ext-B 合計的 70,195 個字,
那麼最終版的對照表裡應該要能找出這 70,195 個不同的字,
否則就是有漏字的問題。
對於形碼(比如:倉頡)輸入法而言,漏字問題較好解決,
因為只要知道字元的形狀,就能推斷出它的組字字根為何。
對於注音輸入法而言,漏字問題有點麻煩,
因為用全字庫網站、康熙字典、漢典…來查找,
可能都找不到這些漏字的注音,
最後只能用「有邊讀邊,沒邊讀中間」的原則來勉強為漏字補上組字字根。
經由前一篇文章的解說,我們得到「CNS_phonetic.xlsx - 工作表1」,
它的表格是這樣的:
A 欄:原始行號
B 欄:字元
C 欄:注音符號
D 欄:曝光名次
E 欄:Unicode 10 進位碼
F 欄:Unicode 字元集種類
它是依照注音符號、曝光名次、字元集種類、10 進位碼的階層順序,
由小而大排列。
我們先準備一個 Excel 檔(命名為:Lose.xlsx),並設定好 4 個工作表:
1.「CJK」工作表:A 欄填入「19968」到「40869」的數值;
2.「CJK-Ext-A」工作表:A 欄填入「13312」到「19893」的數值;
3.「CJK-Ext-B」工作表:A 欄填入「131072」到「173782」的數值。
4.「Temp」工作表:A1 輸入「十進位碼」。
然後將它存檔。
複製「CNS_phonetic.xlsx - 工作表1」E 欄全部的資料,
到「Lose.xlsx - Temp」的 A2 儲存格貼上,
然後以 A1 儲存格為標題列,由小而大排序;
再用「進階篩選」的「不選重複的記錄」功能,
將篩選後的 A 欄數值置放於 B 欄。
接著,
找出 B 欄為「13312~19893」的資料列,複製後,貼到 CJK-Ext-A 工作表的 B 欄;
找出 B 欄為「19968~40869」的資料列,複製後,貼到 CJK 工作表的 B 欄;
找出 B 欄為「131072~173782」的資料列,複製後,貼到 CJK-Ext-B 工作表的 B 欄。
然後,借助「彰化一整天」所提供的「比較ab資料」網頁運算工具,
(網址是:http://272586.blogspot.com/2007/04/blog-post_28.html)
用它來找出「Lose.xlsx」前 3 個工作表的 A、B 欄差異。
因為它是用 VB Script 寫成的程式,所以請用 IE 進行操作。
將「CJK」工作表 A、B 欄的資料,
貼到網頁中的「來源」區域,然後按下「比較ab資料」鈕,
靜候一陣子,就會在「目的」區域得到結果,
把它全選後,複製起來,
將「CJK」工作表的資料全清空,再於 A1 儲存格貼上,
就能得到下列結果:
前兩欄為原始的 A、B 欄資料,
第三欄應是空白的(代表 B 欄有,A 欄沒有),
而第四欄的資料(代表 A 欄有,B 欄沒有),即是我們想知道的「缺字碼位」,
第五欄的資料代表 A、B 欄都有的資料,所得結果和 B 欄是一樣的,可以將它刪除。
採取以上相同的作法,
即可為「CJK-Ext-A」、「CJK-Ext-B」兩個工作表找出我們想知道的「缺字碼位」。
再運用「Unicode code converter」網頁將「缺字碼位」轉為「缺字字元」後,
在「CNS_phonetic.xlsx - 工作表1」裡添加這些缺字的資料,
唯獨要注意的是:
A 欄(原始行號):一律填「-」;
D 欄(曝光名次):一律填「-」;
然後本階段的工作就算完成了!
(繼續閱讀...)
文章標籤

terryhung 發表在 痞客邦 留言(1) 人氣(969)

  • 個人分類:電腦─輸入法
▲top
12...6»

文章分類

  • 架站歷程 (6)
  • 心情故事 (10)
  • 休閒娛樂 (8)
  • 奇人軼事 (7)
  • 怪力亂神 (9)
  • 政治評論 (10)
  • 財經企管 (8)
  • 醫療保健 (2)
  • 智慧型手機 (7)
  • 泰瑞版小小輸入法 (31)
  • 電腦─輸入法 (54)
  • 電腦─資訊安全 (1)
  • 電腦─作業系統 (33)
  • 電腦─應用軟體 (19)
  • 電腦─瀏覽器 (10)
  • 電腦─伺服器 (9)
  • 電腦─網路資源 (11)
  • 電腦─字碼、字型 (20)
  • 電腦─遊戲 (4)
  • 電腦─其他 (7)
  • 未分類文章 (1)

近期文章

  • 分享一些利用AI產生的JScript及VBScript,並說明小小輸入法如何調用它們
  • ★泰瑞版小小輸入法 for CJK Ext-I
  • Windows 10/11 內建的字型已經支援 CJK Ext-E/F/G/H/I 字元集了!
  • 雲端發票鬼打牆事件-蓬勃發展的各種會員載具帶來的困擾
  • 簡單易用的自建輸入法軟體─DIME 教學說明
  • Google Payments 寄送的統一發票也能歸戶到「手機條碼」了!
  • 移植 Windows XP 內建中文輸入法至 Windows 8/8.1/10
  • 解決 Windows 10 無法移除「僅桌面」類型的輸入法
  • 在網頁空間裡利用 .htaccess 設定禁止瀏覽目錄、錯誤頁面、MIME Type、限制 IP 存取
  • 讓 Windows 10 的 IE11 直接以「檔案總管」開啟 FTP 站台

最新迴響

  • [15/08/05] terryhung 於文章「複習國文─兒時記趣...」發表了一則私密留言
  • [15/08/05] terryhung 於文章「複習國文─左忠毅公軼事...」發表了一則私密留言
  • [12/10/18] terryhung 於文章「解讀《推背圖》:中華民國在台灣於馬英九總...」留言:
    2012/10/18 本來以為中華民國結束時是因為有好...
  • [12/10/18] terryhung 於文章「解讀《推背圖》:中華民國在台灣於馬英九總...」留言:
    2008/03/20 補充一: 儘管罷免陳水扁的提案...
  • [10/09/27] terryhung 於文章「全字庫屬性資料表格整理方法(四)─檢查錯...」留言:
    不嚴謹的地方在於如果有「ㄏˊㄨ」這樣的錯誤時, 因為消去「ˊ...
  • [10/08/01] terryhung 於文章「非由行易公司出品的嘸蝦米輸入法對照表...」留言:
    本來「無啥味」是公開提供給網友下載的,但是因為作者(李果正)...
  • [09/07/20] terryhung 於文章「偽蝦米參考檔合法製作(一)...」留言:
    如果各位堅持要做出可供偽蝦米直接使用的參考檔, 記得原始的...
  • [09/07/19] terryhung 於文章「Yahoo! 奇摩輸入法 1.0 並不支...」留言:
    Yahoo! 奇摩輸入法可接受的 cin 檔格式 副檔...
  • [09/06/15] terryhung 於文章「簡體字才兩千多字,使用時間不到一甲子,趕...」留言:
    雖然,到這個「漢字碼表」(網址:http://www.chi...
  • [09/05/29] terryhung 於文章「對嘸蝦米輸入法發明人劉重次先生一些言論的...」留言:
    我閱讀上述《我所認識的劉重次先生》一文時,順便也閱讀了《我所...

參觀人氣

  • 本日人氣:
  • 累積人氣:

廣告橫幅

廣告橫幅