| |||||||
adm | Find | login register |
我想在一台叫iLiad的電子書閱讀機上試試看能不能用GCIN,目前已做到: 1. gcin可執行,用ps可以看到gcin的process。 2. gcin-setup可執行,可設定,會在某個目錄中產生十來個設定檔。 3. 執行gtk-query-immodules-2.0會顯示im-gcin.so。 4. 環境變數 export GTK_IM_MODULE=gcin、 XMODIFIERS=@im=gci 、LC_CTYPE=zh_TW.UTF-8。 總之,大概已經依照「Ctrl - Space 無法叫出 gcin 的檢查事項」 一文的指示檢查過了,但仍然無法叫出GCIN。請問還有什麼遺漏的嗎? 需要安裝im-switch嗎?跟我是root login有無關聯?
edited: 1
| |||||||||||||
| |||||||||||||
樓上的眼睛真銳利。 那是貼文時少打了一個"n ",機器上的設定無誤。 其他可能相關的環境變數也一併列出:export LANG='en_US'、LC_ALL='en_US.UTF-8'、LC_CTYPE='zh_TW.UTF-8'。 | |||||||||||||
先確定你是用 GTK 的程式,可以用 GCIN_CONNECT_MSG_ON 檢查是否 connect 成功。用 gtk im module 如果 gcin 不存在會自動執行 gcin 。應該是沒有問題才對。gtk-query-immodules-2.0 的 output 要寫到一個 file,這個 path 各家不一樣。 $ export GCIN_CONNECT_MSG_ON=
$ gedit edited: 2
| |||||||||||||
的確有些程式不支援中文輸入,像是xpdf, 真是惱人...Orz | |||||||||||||
我依照版主的說明,先在PC試驗,export GCIN_CONNECT_MSG_ON=、gedit &兩個命令執行下去,確實有出現connected to unix socket addr /tmp/gcin-xxxxx/socket-:0.0-gcin。 但在iLiad上,因為沒辦法成功compile gedit,所以是拿一個叫leafpad的text editor來試,就沒有如上的output了。不知道有沒有哪一支程式比較簡單,方便cross compile的? 附帶一提,gtk-query-immodules-2.0的輸出檔案,我在iLiad上有找到。不過,我想,這應該沒關連,畢竟,我直接執行gtk-query-immodules-2.0,在畫面上已可看到gcin的module.so檔了。 edited: 2
| |||||||||||||
leafpad 也是 GTK based。 在 leafpad 按 mouse 右鍵,選 Input Methods gcin input Method 是否在裡面呢?沒有就是有問題。 edited: 1
| |||||||||||||
提到滑鼠右鍵,就有點尷尬了。iLiad是用觸控筆當滑鼠的,所以只有左鍵,沒有右鍵。此外,它的鍵盤也沒有Ctrl鍵,所以我是把啟動GCIN的按鍵改成Shift-Space。
所以,從版主上面的話來推論,倘若leafpad叫不出gcin,要不就是我的設定沒弄好,要不就是GCIN不能在iLiad上執行。我得繼續 摸索了。 edited: 1
| |||||||||||||
有關聯。 GTK+ 預設會使用 global 的 gtk.immodule* 純文字設定檔,光只有 im-gcin.so 是沒用的。 | |||||||||||||
模擬右鍵中鍵請參考 | |||||||||||||
忘了提一件事了:我的GCIN在./configure、make、make install時是用--prefix=/media/card/programs/gcin。所以,目前的路徑是放在/media/card/programs/gcin。 實在不是我故意要找麻煩,弄成跟別人不一樣,實在是因為要cross compile, 而iLiad的空間有限,只好放在記憶卡中。 edited: 1
| |||||||||||||
但我在iLiad上是以root來登入的,這樣還需要 參考「不需要管理員權限的 gcin 使用法」嗎? 剛才想找出 gtk-query-immodules-2.0的輸出檔案,結果又找不到了。奇怪,難道我記得之前有看到過的記憶是假的嗎? | |||||||||||||
了解。我試著照指示修改登入檔,但以下這一行有點問題。 LD_LIBRARY_PATH=$HOME/gcin/usr/lib /usr/lib/libgtk2.0-0/gtk-query-immodules-2.0 $HOME/gcin/usr/lib/gtk-2.0/2.10.0/immodules/im-gcin.so >> $HOME/gcin/gtk.immodules 我試著執行im-gcin.so,得到的是segmentation fault。那是不是表示我的程式有問題? | |||||||||||||
把路徑改成合乎我的機器設定的部分我知道。剛才想到,我可能誤解這行的意思了。 LD_LIBRARY_PATH=/media/card/programs/gcin/usr/lib gtk-query-immodules-2.0 /media/card/programs/gcin/usr/lib/gtk-2.0/immodules/im-gcin.so >> $HOME/gcin/gtk.immodules 正確的解釋,似乎應該是:執行gtk-query-immodules-2.0,以im-gcin.so為輸入的參數,把輸出寫到gtk.immodules,以此為LD_LIBRARY_PATH的路徑。我原先把這段看成分別執行gtk-query-immodules-2.0、im-gcin.so,以取得兩段路徑,所以才會去執行im-gcin.so。 | |||||||||||||
碰到阻礙了,麻煩幫忙看一下:
root@ereader:/media/card/programs/gcin/share/gcin/script# ./gcin-user-setup 我檢查過,確實有gcin-user-setup這個script檔 ,檔名和路徑都沒錯,但不知道為什麼,要執行時都會說找不到這個檔。 |
| |||||||
adm | Find | login register |