| eliu兄好,這2天發現gcin會當掉的幾個狀況,描述如下: 測試環境: 
Win7 64bitgcin版本:剛修正gtab-auto-space時的那一版五四三倉頡(設定為「直接進入中文輸入狀態(限定非XIM)」、「Shift切換中英初始英數」) 步驟: 
拆「週一」(ybgr m)留在緩衝區不送出,按九宮格數字鍵的「-」→gcin當掉拆「心裡」(p lwg)留在緩衝區不送出,按Shift+O→gcin當掉按shift進入英文狀態,輸入「gcin」留在緩衝區不送出,按shift切回中文,隨便拆個中文字進入緩衝區→gcin當掉 | 
| | winlin |  | 
拆「週一」(ybgr m)留在緩衝區不送出,按九宮格數字鍵的「-」→gcin當掉拆「心裡」(p lwg)留在緩衝區不送出,按Shift+O→gcin當掉 | 
是用自己的五四三倉頡?gcin內附的不能輸入
 | 
| 是用自己的cj543.gtab沒錯,明天我用內建的試試。 | 
|  eliu兄:抱歉昨天有個人一直跘住我,很難作測試,今天才找到時間試。
 
 我發現gcin當掉與「是否使用內建或個人cj543.gtab」無關,而是與config有關,
 把config刪掉重生之後,就不會因為上述幾個狀況而當掉了。
 如果eliu兄想探究原因,我有附上2個config,一個會當(config-crash.zip),一個不會(config-ok.zip),
 給eliu兄比較看看。
 謝謝~
 | 
|   | winlin |  | 
拆「心裡」(p lwg)留在緩衝區不送出,按Shift+O→gcin當掉按shift進入英文狀態,輸入「gcin」留在緩衝區不送出,按shift切回中文,隨便拆個中文字進入緩衝區→gcin當掉 | 
 eliu兄好: 今天發現Linux下64bit的gcin也有和上面一樣的狀況,這次我刪掉~/.gcin,讓.gcin重生,也是用內建的cj543.gtab,
 一開始沒作什麼設定時一切OK(~/.gcin/config幾乎是空的,只有一個檔案),
 在我設定gcin一些介面和功能細節之後(含gtab-auto-space),
 只要在gtab緩衝區內有中英混合的狀況, gcin就必當。
 註:我把~/.gcin附上來了,但cj543.gtab.tsin-db.src與 cj543.gtab.tsin-db太大,所以沒附在裡頭。
 以上,謝謝,辛苦了~ 測試環境:Debian stable 64bit
 gcin(上次剛修正完gtab-auto-space早洩症狀的那一版gcin.tbz)
 | 
|  | 
| 謝謝eliu兄快速處理,不過問題依舊。經過小弟的測試之後,
 發現與~/.gcin/config/default-input-method這個檔案有關。
 我上傳了一個config.tar.gz,eliu兄可以試試看,如果使用這組設定檔,用五四三倉頡隨便打個中文字留在gtab緩衝區,
 然後用任何方式在gtab緩衝區裡填入英文字,gcin就會當掉。
 如果把config裡的default-input-method移除掉,gtab緩衝區不論如何中英交雜都不會當。但是這樣就沒辦法把cj543.gtab設為預設輸入法了。
 測試環境是Debian stable 64bitedited: 1
   | 
| 對了,32bit的編譯仍會出錯... gcc -Wl,--as-needed -shared -o gcin1.so win-message.pico win-sym.pico win-inmd-switch.pico pinyin.pico win-pho-near.pico win-kbm.pico gcin-module.pico pho2pinyin.pico -Wl,--as-needed -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfontconfig -lgobject-2.0 -lglib-2.0 -lfreetype   -lX11 -ldl -lm/usr/bin/ld: /usr/lib/gcc/i486-linux-gnu/4.7/../../../i386-linux-gnu/crti.o: unrecognized relocation (0x2b) in section `.init'
 /usr/bin/ld: final link failed: Bad value
 collect2: error: ld returned 1 exit status
 make[1]: *** [gcin1.so] Error 1
 
 
 | 
| 可能是 沒有 'make clean', 64-bit 沒清除?edited: 1
 | 
| 依照eliu兄的建議make clean之後,錯誤訊息仍然一樣: gcc -Wl,--as-needed -shared -o gcin1.so win-message.pico win-sym.pico win-inmd-switch.pico pinyin.pico win-pho-near.pico win-kbm.pico gcin-module.pico pho2pinyin.pico -Wl,--as-needed -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfontconfig -lgobject-2.0 -lglib-2.0 -lfreetype   -lX11 -ldl -lm/usr/bin/ld: /usr/lib/gcc/i486-linux-gnu/4.7/../../../i386-linux-gnu/crti.o: unrecognized relocation (0x2b) in section `.init'
 /usr/bin/ld: final link failed: Bad value
 collect2: error: ld returned 1 exit status
 make[1]: *** [gcin1.so] Error 1
 | 
| 發現gcin for windows會當掉的新規則! Windows 7 64bitgcin版本:修正gtab-auto-space早洩問題的那一版
 
 在gtab緩衝區留2個可能有預選詞的中文字,例如:心心(拆碼是p p )、口口(拆碼是r r)
 然後「按shift+E」來輸入英文字E到gtab緩衝區, gcin會crash。
 (註:不是按shift切到英文緩衝區狀態,而是直接按「shift+E,把字母放到gtab緩衝區」)
 
 但是另一個類似的狀況gcin就不會當。
 例如:在gtab緩衝區裡放「火口」(拆碼是f r),gcin就不會當。
 
 所以crash似乎只出現「可能有預選詞」的狀況下。
 因為在緩衝區裡放了「心心」可能讓gcin準備「心心相印」這個詞,
 這時按把英文字母丟給gcin時, gcin就不高興了...。
 附上config檔讓eliu兄試試。 | 
| edited: 1
 | 
| 
謝謝eliu兄,試用一個早上的確都沒再發生當掉的狀況!大大感謝,現在工作打字又變順了~~~
 |