可否關閉自作聰明的「再」選字?

69 views
Skip to first unread message

Sheng

unread,
Jan 30, 2009, 5:51:48 AM1/30/09
to Chewing IM Development
新酷音的字彙選擇以及斷句、語意判斷功能不太強大這是眾所皆知
但最令人困擾的,莫過於在他不斷試圖運作的此項機能宛如掣肘

舉個例子,如果我今天打的句子是abcdefgh
但在新酷音的字彙與語意判斷下,他變成了
abcdefGh (大寫代表同音的錯字)
於是我移動兩個方向鍵,並試圖修正G字
但是因為我修正G字以後,新酷音又會重新愚笨的判斷整句
結果反而造成前面本來就已經正確的字句又被改錯了
譬如abCDefgh
不知道有沒有什麼辦法可以關掉新注音愚笨的自動挑字機能呢?

困擾已久,非常感謝

shelandy

unread,
Jan 30, 2009, 1:33:37 PM1/30/09
to chewin...@googlegroups.com
Sheng 提到:

> 新酷音的字彙選擇以及斷句、語意判斷功能不太強大這是眾所皆知
> 但最令人困擾的,莫過於在他不斷試圖運作的此項機能宛如掣肘
>
> 舉個例子,如果我今天打的句子是abcdefgh
> 但在新酷音的字彙與語意判斷下,他變成了
> abcdefGh (大寫代表同音的錯字)
> 於是我移動兩個方向鍵,並試圖修正G字
> 但是因為我修正G字以後,新酷音又會重新愚笨的判斷整句
> 結果反而造成前面本來就已經正確的字句又被改錯了
> 譬如abCDefgh
>
這個問題也困擾我好久,是不是能弄個特殊鍵,比如說ctrl-shift-UpArrow/ctrl-
shift-DownArrow 表示這個字 g要在同音字做修正,但prefix "abcdef"跟suffix
"h"暫不調整
我說暫不調整因為搞不好調完 g 字還要往前修正"abcdef"中的某字
> 不知道有沒有什麼辦法可以關掉新注音愚笨的自動挑字機能呢?
>
> 困擾已久,非常感謝
> >
>

Kanru Chen

unread,
Jan 30, 2009, 8:23:20 PM1/30/09
to chewin...@googlegroups.com
如果選完字會更動到整句的話應該是新酷音的 bug,可以可以提供幾個例子供測試
嗎?如果是更動某個完整的詞的話,此現象的確是有可能發生 (選到的字剛好構成
別的詞組)

On Sat, Jan 31 2009, shelandy wrote:

> 這個問題也困擾我好久,是不是能弄個特殊鍵,比如說ctrl-shift-UpArrow/ctrl-
> shift-DownArrow 表示這個字 g要在同音字做修正,但prefix "abcdef"跟suffix
> "h"暫不調整
> 我說暫不調整因為搞不好調完 g 字還要往前修正"abcdef"中的某字

是個方法,也可以想一下目前的行為是否常會超出使用者預期,可能可以在選字的
時候就把其他所有都變成不自動更改的狀態。

這部份的詳細實做我記不太清楚,有空的人去翻翻程式碼吧 :P

Kanru

Arnon

unread,
Jan 31, 2009, 1:27:54 AM1/31/09
to Chewing IM Development
我是有個很蠢又不推薦的作法,就是把那些會斷句斷的很怪,彼此影響的那幾組詞,當成一個很多字的大詞,甚至整句都新增到字庫去。有時自動學習與判斷功能
學得很腦殘,還是自己手動新增穩。
某些狀況下,常用用詞如果常連著出現的話,這方法還挺有效的。不過每個人用字習慣差距很大,字句組合也千變萬化,最後會發現字庫裡多了好大一些自己看起
來都覺得很蠢的累贅。還好新酷音的自訂詞庫大不會有什麼效能的拖累。
倒是好久沒看到開發小組的成員公佈些進度的提示,不知道新版的進展怎樣了?

shelandy

unread,
Feb 25, 2009, 2:45:33 AM2/25/09
to chewin...@googlegroups.com
終於把 新系統的一些重要問題搞定,可以回到討論這個問題,
我想從rapid SVN 開始,建立call graph 並且加入註解。除了給自己看之外,重
要的是想幫助其他跟我一樣不是慣C一族的人比較快速進入狀況。
不然進入門龕實在是太高。等瞭解之前如何實作後,才有辦法下手改演算法跟
code,不然像前面這個問題我都不知道是只改libchewing 就好,還是得在scim上
改,後者我就不想碰了。我想我不會去碰停滯的 scim,不過我可能會嘗試幫忙
ibus-chewing 或iiimf-chewing或是改演算法libchewing ,我對python 的瞭解比
C 多一點

我想請問一下,是不是chech out 這3個核心
libchewing/
libchewingpp/
chewing-utils/
並且研讀
iiimf-chewing/
即可?

Shelandy

Kanru Chen 提到:

Jim Huang

unread,
Feb 25, 2009, 2:54:33 AM2/25/09
to chewin...@googlegroups.com
2009/2/25 shelandy <shel...@gmail.com>:

> 終於把 新系統的一些重要問題搞定,可以回到討論這個問題,
> 我想從rapid SVN 開始,建立call graph 並且加入註解。除了給自己看之外,重
> 要的是想幫助其他跟我一樣不是慣C一族的人比較快速進入狀況。
> 不然進入門龕實在是太高。等瞭解之前如何實作後,才有辦法下手改演算法跟
>

hi shelandy,

難道可以不懂實做,就可改演算法與 code 嗎?可以的話,煩請不吝指導。
關鍵的部份應該都有註解,請參考,另外,只要看 libchewing 即可,裡頭有 Doxygen,請搭配 Graphviz,謝謝!

另外,現在也有 Python binding,若想作些實驗,應該很方便。

Regards,
-jserv

shelandy

unread,
Feb 25, 2009, 3:45:35 AM2/25/09
to chewin...@googlegroups.com
Jim Huang 提到:

> 2009/2/25 shelandy <shel...@gmail.com>:
>
>> 終於把 新系統的一些重要問題搞定,可以回到討論這個問題,
>> 我想從rapid SVN 開始,建立call graph 並且加入註解。除了給自己看之外,重
>> 要的是想幫助其他跟我一樣不是慣C一族的人比較快速進入狀況。
>> 不然進入門龕實在是太高。等瞭解之前如何實作後,才有辦法下手改演算法跟
>>
>>
>
> hi shelandy,
>
> 難道可以不懂實做,就可改演算法與 code 嗎?可以的話,煩請不吝指導。
>
您誤會我意思了,我是說絕大部分的時候都要瞭解之前如何實作,才有辦法改演算
法,改code是一定要瞭解之前如何實作code。
不過有需要改一處code/演算法就得把所有的code 看過一遍嗎?這是見仁見智的。
我覺得不需要。但是只看一處可能不夠,所以要瞭解要看哪幾處。
問題是新手如我是不知道要看哪幾處的。所以變得很笨拙。我能做的也就是想儘量
把門龕降低,所以我今天才會在我的blog站寫這種小品:
用 Graphviz 畫工程科學說明圖
http://shelandy.blogspot.com/2009/02/graphviz.html
這對高手可能不算什麼,但是對一個需要馬上畫工程科學說明圖,建database寫
code ,....可是沒有時間去一一試各種開放軟體工具的人,卻是很重要的路障。要
是能省掉新手的一些時間,讓大家專注在改演算法,改code,讓開放軟體變得更
好,有人可能覺得不重要啦,我自己覺得有意義。

上次的問題我想過用兩個buffer來處理,這一聽來就像是用指標來處理比較直覺,
但我不知在libchewing 的API下encaptuclate 的 模組就可以解決,還是這件事是
超乎libchewing 的處理,要改API或是到IME host 上如scim/ibus去處理,而且我
想既然要改,就把gcin 的邊打邊唸語音做出來,上次問劉大他說一般的自由軟體
都可用他的語音資料,我想把時間放在直接發展上比去摸索路障來的好

Doxygen搭配 Graphviz的確是我想做的,但是C 的callgraph我聽說還有其他的solution ,python 的callgraph
有另外的。註解筆記這因為不是code 原作者,公信力不夠只能供參考,但至少把call graph等畫出來是有助於我等新手瞭解的。

> 關鍵的部份應該都有註解,請參考,另外,只要看 libchewing 即可,裡頭有 Doxygen,請搭配 Graphviz,謝謝!
>
> 另外,現在也有 Python binding,若想作些實驗,應該很方便。
>

謝謝,我也在看你曾提到的 iiimf-emacs binding,希望是把前面說的,跟libdgg
結合

> Regards,
> -jserv
>
> >
>

Jim Huang

unread,
Feb 25, 2009, 4:07:39 AM2/25/09
to chewin...@googlegroups.com
2009/2/25 shelandy <shel...@gmail.com>:

> 您誤會我意思了,我是說絕大部分的時候都要瞭解之前如何實作,才有辦法改演算
> 法,改code是一定要瞭解之前如何實作code。
> 不過有需要改一處code/演算法就得把所有的code 看過一遍嗎?這是見仁見智的。
> 我覺得不需要。但是只看一處可能不夠,所以要瞭解要看哪幾處。
>

hi shelandy,

> 用 Graphviz 畫工程科學說明圖
> http://shelandy.blogspot.com/2009/02/graphviz.html
> 這對高手可能不算什麼,但是對一個需要馬上畫工程科學說明圖,建database寫
> code ,....可是沒有時間去一一試各種開放軟體工具的人,卻是很重要的路障。要
> 是能省掉新手的一些時間,讓大家專注在改演算法,改code,讓開放軟體變得更
> 好,有人可能覺得不重要啦,我自己覺得有意義。
>

在 libchewing 下打 "make docs" 即可。

> 上次的問題我想過用兩個buffer來處理,這一聽來就像是用指標來處理比較直覺,
> 但我不知在libchewing 的API下encaptuclate 的 模組就可以解決,還是這件事是
> 超乎libchewing 的處理,要改API或是到IME host 上如scim/ibus去處理,而且我
> 想既然要改,就把gcin 的邊打邊唸語音做出來,上次問劉大他說一般的自由軟體
> 都可用他的語音資料,我想把時間放在直接發展上比去摸索路障來的好
>

請參考 test/simulate.c 與 test/testchewing.c
API 說明可參照 html/

不需要修改 libchewing,只要在 SCIM 或 IM engine 處理即可。

Thanks,
-jserv

Reply all
Reply to author
Forward
0 new messages