Shewer Lu
Shewer Lu
> 另外,你指的單字是指單個字母還是單詞?如果是單個字母你這樣處理就好處不大了。 英文單字 先將 english.dict.yaml split 檔頭 和 字典 ( english.dict.head , english.txt) ```bash # 合併 english.dict.head and english.txt # gawk 移除 行首 # 輸出 單字 _單字 ( cat english.dict.head...
> 另外,你指的單字是指單個字母還是單詞?如果是單個字母你這樣處理就好處不大了。 是的。 簡單的是 利用 table_translator 協助 上屏候選, 麻煩的 自䢖 字典樹 為了能和 主要輸入法 整合 ,此方案應為 副方案 為妥。 如 加入 patterns english: "^E\.+" 直接利用 table_translator , 這樣 只要 一個 lua_filter processor...
> > 另外,你指的單字是指單個字母還是單詞?如果是單個字母你這樣處理就好處不大了。 > > 英文單字 > > 先將 english.dict.yaml split 檔頭 和 字典 ( english.dict.head , english.txt) > > ```shell > # 合併 english.dict.head and english.txt > # gawk...
> 你要明白,英文字典正常應該按字母順序排列而不是先單字後多字,否則就不是dictionary了,所以在yield前,table.sort 少不了。 english.schema.yaml 產生 table.bin prism.bin ,是否可以簡化 table sort 的問題 再加上 recognizer/patterns tag 轉至 english 因 english.table.bin 根本沒有或少有 單字 ,所以 先單字後多字的filter 會bypass 或者 利用 tags: [ ] ,記得 filter...
> 而且,如果不用segmentor將輸入碼變成小寫,字典文件就只能按https://github.com/BlindingDark/rime-easy-en一樣,一個單詞最少要準備三種寫法。 剛才看了 english.dict.yaml 幾乎沒有 單字 大小沒有重複的 ,即使有 大小寫單字 小寫輸入也能找出單字候選上屏 利用 speller 製作 prism.bin 應可 speller/algebra: - derive: /(.*)/\L$1/ --衍生〔保留原形〕增加全小寫 - derive: /(.*)/\U$1/ -- 衍生〔保留原形〕增加全大寫 _AI AI --> _AI AI...
> 我寫本方案的最大目的,是一邊打英文文章一邊看到提示單詞拼寫和註釋,而不是在輸中文時偶爾查一下單詞。也就是說,你enable本方案與否,也不應該影響你正常打英文文章。當然,爲了令user容易適應,現在enter鍵只是上屏候選字,沒有再多發一個換行鍵。 如果是以英文為主, 就反過來主字典 english 收 tag:abc (唯一) 副字典全用 patterns luna_pinyin: "^P.*" 單字為先 在 英文 + pinyin 但彈性高 及 lua 程式清爽
> CamelCase 這裡有需要取決於 cand.preedit 送字 還是 cand.text 送字 也是在function filter 中決策 ```lua for cand in input:itor() do local cand_new= Candidate( "english",seg.start,seg._end, cand.preedit, info) yield(cand_new) end ``` 如果table.bin 有StudlyCaps CamelCase 單字...
> > > 如果是以英文為主, 就反過來主字典 english 收 tag:abc (唯一) 副字典全用 patterns luna_pinyin: "^P.*" > > > 單字為先 在 英文 + pinyin > > > 但彈性高 及 lua 程式清爽 > >...
** > 先不說還有很多類似"WinXP" "AutoCAD" 等的單詞你不能提前考慮,就算只有全大寫、全小寫和首字母大寫三種情形,你的字典都會變成三倍大,你比較一下我方案和rime-easy-en方案兩個字典文件大小差異。 如果是以 英打優先 參考為輔 我是用 程式編輯器 自動補齊功能 請問一下 假設 在此時 按下TAB時 將 preedit 才變成 AutoCAD 輸入 autocad"space" 你會要 autocad 上屏 還是 AutoCAD Autocad"space" Autocad 上屏 還是...
剛剛翻了一下 自個的 lib 也在 lua 下測試 效率還不錯 可以拿來做 lua_tranlator dict_index -- metatable 單字詞 list dict_table -- metatable key= 單字詞 => 翻譯 match( str) -- return func for table:find_all table:each(print) dict_index:each(function(v,i)...