cht電腦資訊gcin
adm Find login register

[實驗性工具] 嘸蝦米自動加詞

本人已不在此站活動
1 [實驗性工具] 嘸蝦米自動加詞
Promote 0 Bookmark 02008-02-11quote  
http://cle.linux.org.tw/~edt1023/gcin/noseeadd.rb.gz
http://edt1023.sayya.org/gcin/noseeadd.rb.gz

注意事項:

  1. 這是專為 noseeing 而寫的,如果你不是使用 noseeing,請更改 script 中的檔名。
  2. 目前加詞只能在 UTF-8 locale 加詞。
  3. 超級實驗性,請先備份你的資料。
  4. 只支援三字詞以上的詞組。單字及兩字詞,請使用 gcin 的加詞功能。
  5. 不管三字或四字以上的詞組,皆取頭碼,最後以英文逗點結束。
  6. 你需要安裝 ruby。

使用方法,開一個 terminal(UTF-8 locale):

./noseeadd.rb 千山我獨行,不必相送。 

然後就可以使用按鍵 GEIQ, 來輸入以上的詞組(無需重新啟動 gcin)。 

edited: 2
Silice
2
Promote 0 Bookmark 02008-02-11quote  

在EeePC裡測試

使用的是konsole

 ruby           1.8.2-1   

執行後出現

noseeadd.rb: line 6: =u: command not found
noseeadd.rb: line 7: require: command not found
noseeadd.rb: line 23: syntax error near unexpected token `else'
noseeadd.rb: line 23: `else'

沒辦法把詞打出來

本人已不在此站活動
3
Promote 0 Bookmark 02008-02-11quote  

糟糕,好像是 ruby 版本太舊,或者是安裝精簡版的 ruby?

請試試執行 irb,進入 irb 後執行以下的指令,看 return 是 true 還是 false:

$KCODE='u'

require 'fileutils'

第一個指令應該會傳回 'u' 這才是正常的,第二個指令會傳回 true,否則可能需要更新 ruby 的版本,或者在其他較新的系統,使用 rubyscript2exe 編一個可執行檔去用。

Silice
4
Promote 0 Bookmark 02008-02-12quote  

先改變noseeadd.rb的權限

# chmod a+x noseeadd.rb

記得複製noseeing.gtab

到/usr/share/gcin/table

實驗看看

# noseeadd.rb 一江春水向東流

打打看

ewfw, → 一江春水向東流

用起來比行易出的詞庫套件還方便呢

感謝LGJ

原來是敝人下錯了指令的關係

先前下./noseeadd.rb 

就說我權限有問題

然後就下sh noseeadd.rb

就出現上篇的錯誤

後來改一下權限並根據指示(執行後說敝人沒有noseeing.)

把noseeing.gtab複製到該放的地方就可以了

EeePC也可以用呢

再多實驗看看再回報

 

本人已不在此站活動
5
Promote 0 Bookmark 02008-02-12quote  
Silice

記得複製noseeing.gtab

到/usr/share/gcin/table

這個應該是不必要的,noseeadd 會自動 copy 過去。除非 gcin 不是安裝在 /usr 或 /usr/local,而是其他目錄。
 

本人已不在此站活動
6
Promote 0 Bookmark 02008-03-25quote  

由於有人在 Debian Lenny 執行會有問題,請試試以下的版本:

http://edt1023.sayya.org/gcin/noseeadd2.rb.gz

http://cle.linux.org.tw/~edt1023/gcin/noseeadd2.rb.gz

 

edited: 1
Silice
7 unstable下測試
Promote 0 Bookmark 02008-03-27quote  

/usr/lib/ruby/1.8/ftools.rb:106:in `stat': No such file or directory - noseeing.add.gtab (Errno::ENOENT)
    from /usr/lib/ruby/1.8/ftools.rb:106:in `mv'
    from ./noseeadd2.rb:6152:in `fmanipu'
    from ./noseeadd2.rb:6176

以上是測試後訊息 

本人已不在此站活動
8
Promote 0 Bookmark 02008-03-27quote  

這就怪了,which gtab-merge 的結果是?

在 ~/.gcin 目錄下找得到  noseeing.add.gtab 嗎?

請試著在 ~/.gcin 目錄下執行:

 gtab-merge noseeing.gtab noseeadd.tmp noseeing.add.gtab

看是不是正常?

 

ps. mount 的訊息能 po 一下嗎?有點懷疑 /usr 和 /home 的檔案系統不一樣。
 

Silice
9
Promote 0 Bookmark 02008-03-27quote  

gtab-merge noseeing.gtab noseeadd.tmp noseeing.add.gtab
執行後

gcin:cannot err open noseeing.gtab

本人已不在此站活動
10
Promote 0 Bookmark 02008-03-27quote  

看起來好像 noseeing.gtab 沒有 copy 過去,請試看看 noseeadd3.rb

http://edt1023.sayya.org/gcin/noseeadd3.rb.gz

 

Silice
11
Promote 0 Bookmark 02008-03-27quote  

我把noseeing.gtab複製到~/.gcin裡
執行 gtab-merge noseeing.gtab noseeadd.tmp noseeing.add.gtab

出現以下訊息:
keys 32
keybits:0
浮點數出錯

 

本人已不在此站活動
12
Promote 0 Bookmark 02008-03-27quote  

這就不是 noseeadd 的問題了,是 gtab-merge 本身的問題。但我曾在 FreeBSD/Slackware Linux 測試,gtab-merge 是正常的。所以,回報給 caleb 吧!:p

Silice
13
Promote 0 Bookmark 02008-03-27quote  

./noseeadd3.rb 一江春水向東流

 /usr/lib/ruby/1.8/ftools.rb:106:in `stat': No such file or directory - noseeing.add.gtab (Errno::ENOENT)
    from /usr/lib/ruby/1.8/ftools.rb:106:in `mv'
    from ./noseeadd3.rb:6152:in `fmanipu'
    from ./noseeadd3.rb:6176

 

本人已不在此站活動
14
Promote 0 Bookmark 02008-03-27quote  

是的,因為 gtab-merge 沒有產生 noseeing.add.gtab,所以就錯了。

我找時間加點防錯的條件式進去好了。不過,最重要的是要去查為什麼 gtab-merge 在 Debian Testing 會出錯。
 

edited: 1
Silice
15 改用gcin1.3.9
Promote 0 Bookmark 02008-03-27quote  

後來改用這↓
deb http://www.calno.com etch-backports main

lenny+sid使用嘸蝦米自動加詞步驟

# sudo aptitude install ruby
# chmod a+x noseeadd3.rb
# ./noseeadd3.rb 一江春水向東流

ewfw, 一江春水向東流

感謝LGJ 

本人已不在此站活動
17
Promote 0 Bookmark 02008-03-27quote  

沒錯,是 noseeing.gtab 舊版碰新版 gtab-merge 的問題,我會盡快更新來源地的 noseeing.gtab。

暫時會有問題的,把 noseeing tarball 抓下來後,裡頭有 noseeing.cin 檔,請自行 gcin2tab noseeing.cin 轉一下,使用轉出來的 noseeing.gtab 就可以了。

CC: Ruby
cht電腦資訊gcin
adm Find login register
views:57055