ubuntu20.04下pyside2程式無法切換fcitx中文輸入 [論壇 - Ubuntu 程式設計]


正在瀏覽:   1 名遊客


 到底部   前一個主題   下一個主題  [無發表權] 請登錄或者註冊

(1) 2 »


ubuntu20.04下pyside2程式無法切換fcitx中文輸入
會員一級
註冊日期:
2012/3/12 12:53
所屬群組:
已註冊使用者
等級: 2
HP : 0 / 34
MP : 4 / 848
EXP: 38
離線
求教各位前輩:

我的問題:系統是剛裝好的ubuntu20.04,pyside2程式無法切換fcitx嘸蝦米中文輸入, 以前在16.04都運作良好。

查了google,說是qt5沒有支援fcitx,按照網路上的方法做,並無法解決。即使現在寫這篇求救文,嘸蝦米輸入也是怪怪的,反應頓頓。

盼前輩們不吝協助。

5/21 17:51:00
應用擴展 工具箱
回覆: ubuntu20.04下pyside2程式無法切換fcitx中文輸入
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 35
HP : 172 / 861
MP : 598 / 20867
EXP: 45
離線
hphp 寫到:
求教各位前輩:

我的問題:系統是剛裝好的ubuntu20.04,pyside2程式無法切換fcitx嘸蝦米中文輸入, 以前在16.04都運作良好。

查了google,說是qt5沒有支援fcitx,按照網路上的方法做,並無法解決。即使現在寫這篇求救文,嘸蝦米輸入也是怪怪的,反應頓頓。

盼前輩們不吝協助。



執行下面指令,安裝「Package: fcitx-frontend-qt5


$ sudo apt-get install fcitx-frontend-qt5



然後再請您測測看,是否能正常運作,

在我的環境「Xubuntu 20.04」,目前使用「fcitx-chewing」,是可以在「pcmanfm-qt」上正常輸入中文的。

在我的環境執行下面指令


$ dpkg -l '*fcitx*'



可以看到如下的列表,給您對照參考用,前面有「ii」的就是在我的環境有安裝的


Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                   Version       Architecture Description
+++-======================================-=============-============-========================================================>
ii  fcitx                                  1:4.2.9.7-3   all          Flexible Input Method Framework
ii  fcitx-bin                              1:4.2.9.7-3   amd64        Flexible Input Method Framework - essential binaries
ii  fcitx-chewing:amd64                    0.2.3-1       amd64        Fcitx wrapper for Chewing library
ii  fcitx-config-common                    0.4.10-3      all          graphic Fcitx configuration tool - common files
ii  fcitx-config-gtk                       0.4.10-3      amd64        graphic Fcitx configuration tool
un  fcitx-config-gtk2                      <none>        <none>       (no description available)
ii  fcitx-data                             1:4.2.9.7-3   all          Flexible Input Method Framework - essential data files
ii  fcitx-frontend-all                     1:4.2.9.7-3   all          Flexible Input Method Framework - frontends metapackage
un  fcitx-frontend-fbterm                  <none>        <none>       (no description available)
ii  fcitx-frontend-gtk2                    1:4.2.9.7-3   amd64        Flexible Input Method Framework - GTK+ 2 IM Module front>
ii  fcitx-frontend-gtk3                    1:4.2.9.7-3   amd64        Flexible Input Method Framework - GTK+ 3 IM Module front>
ii  fcitx-frontend-qt5:amd64               1.2.4-1build2 amd64        Free Chinese Input Toy of X - Qt5 IM Module frontend
un  fcitx-hangul                           <none>        <none>       (no description available)
un  fcitx-keyboard                         <none>        <none>       (no description available)
un  fcitx-libs                             <none>        <none>       (no description available)
un  fcitx-libs-dev                         <none>        <none>       (no description available)
un  fcitx-libs-gclient                     <none>        <none>       (no description available)
un  fcitx-libs-qt5                         <none>        <none>       (no description available)
un  fcitx-m17n                             <none>        <none>       (no description available)
ii  fcitx-module-dbus                      1:4.2.9.7-3   amd64        Flexible Input Method Framework - D-Bus module and IPC f>
ii  fcitx-module-kimpanel                  1:4.2.9.7-3   amd64        Flexible Input Method Framework - KIMPanel protocol modu>
ii  fcitx-module-lua                       1:4.2.9.7-3   amd64        Flexible Input Method Framework - Lua module
un  fcitx-module-quickphrase-editor        <none>        <none>       (no description available)
ii  fcitx-module-x11                       1:4.2.9.7-3   amd64        Flexible Input Method Framework - X11 module and XIM fro>
ii  fcitx-modules                          1:4.2.9.7-3   amd64        Flexible Input Method Framework - core modules
un  fcitx-modules-x11                      <none>        <none>       (no description available)
un  fcitx-tools                            <none>        <none>       (no description available)
ii  fcitx-ui-classic                       1:4.2.9.7-3   amd64        Flexible Input Method Framework - Classic user interface
un  fcitx-ui-kimpanel                      <none>        <none>       (no description available)
un  fcitx-ui-light                         <none>        <none>       (no description available)
un  fcitx-unikey                           <none>        <none>       (no description available)





另外提供我之前寫的安裝腳本,給您參考

* https://github.com/samwhelp/play-ubuntu-20.04-plan/tree/master/prototype-subject/im/fcitx-chewing (簡易版)
* https://github.com/samwhelp/play-ubuntu-20.04-plan/tree/master/tool/fcitx (進階版)

5/21 18:33:32
應用擴展 工具箱
回覆: ubuntu20.04下pyside2程式無法切換fcitx中文輸入
會員一級
註冊日期:
2012/3/12 12:53
所屬群組:
已註冊使用者
等級: 2
HP : 0 / 34
MP : 4 / 848
EXP: 38
離線
非常感謝您的協助,fcitx-frontend-qt5我有安裝,也參考您的安裝列表,補足沒有安裝的部份,但pyside2的程式仍然無法切換嘸蝦米輸入。

您的安裝腳本我會再研讀,非常感謝!

----------------------------------


執行下面指令,安裝「Package: fcitx-frontend-qt5


$ sudo apt-get install fcitx-frontend-qt5



然後再請您測測看,是否能正常運作,

在我的環境「Xubuntu 20.04」,目前使用「fcitx-chewing」,是可以在「pcmanfm-qt」上正常輸入中文的。

在我的環境執行下面指令


$ dpkg -l '*fcitx*'



可以看到如下的列表,給您對照參考用,前面有「ii」的就是在我的環境有安裝的


Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                   Version       Architecture Description
+++-======================================-=============-============-========================================================>
ii  fcitx                                  1:4.2.9.7-3   all          Flexible Input Method Framework
ii  fcitx-bin                              1:4.2.9.7-3   amd64        Flexible Input Method Framework - essential binaries
ii  fcitx-chewing:amd64                    0.2.3-1       amd64        Fcitx wrapper for Chewing library
ii  fcitx-config-common                    0.4.10-3      all          graphic Fcitx configuration tool - common files
ii  fcitx-config-gtk                       0.4.10-3      amd64        graphic Fcitx configuration tool
un  fcitx-config-gtk2                      <none>        <none>       (no description available)
ii  fcitx-data                             1:4.2.9.7-3   all          Flexible Input Method Framework - essential data files
ii  fcitx-frontend-all                     1:4.2.9.7-3   all          Flexible Input Method Framework - frontends metapackage
un  fcitx-frontend-fbterm                  <none>        <none>       (no description available)
ii  fcitx-frontend-gtk2                    1:4.2.9.7-3   amd64        Flexible Input Method Framework - GTK+ 2 IM Module front>
ii  fcitx-frontend-gtk3                    1:4.2.9.7-3   amd64        Flexible Input Method Framework - GTK+ 3 IM Module front>
ii  fcitx-frontend-qt5:amd64               1.2.4-1build2 amd64        Free Chinese Input Toy of X - Qt5 IM Module frontend
un  fcitx-hangul                           <none>        <none>       (no description available)
un  fcitx-keyboard                         <none>        <none>       (no description available)
un  fcitx-libs                             <none>        <none>       (no description available)
un  fcitx-libs-dev                         <none>        <none>       (no description available)
un  fcitx-libs-gclient                     <none>        <none>       (no description available)
un  fcitx-libs-qt5                         <none>        <none>       (no description available)
un  fcitx-m17n                             <none>        <none>       (no description available)
ii  fcitx-module-dbus                      1:4.2.9.7-3   amd64        Flexible Input Method Framework - D-Bus module and IPC f>
ii  fcitx-module-kimpanel                  1:4.2.9.7-3   amd64        Flexible Input Method Framework - KIMPanel protocol modu>
ii  fcitx-module-lua                       1:4.2.9.7-3   amd64        Flexible Input Method Framework - Lua module
un  fcitx-module-quickphrase-editor        <none>        <none>       (no description available)
ii  fcitx-module-x11                       1:4.2.9.7-3   amd64        Flexible Input Method Framework - X11 module and XIM fro>
ii  fcitx-modules                          1:4.2.9.7-3   amd64        Flexible Input Method Framework - core modules
un  fcitx-modules-x11                      <none>        <none>       (no description available)
un  fcitx-tools                            <none>        <none>       (no description available)
ii  fcitx-ui-classic                       1:4.2.9.7-3   amd64        Flexible Input Method Framework - Classic user interface
un  fcitx-ui-kimpanel                      <none>        <none>       (no description available)
un  fcitx-ui-light                         <none>        <none>       (no description available)
un  fcitx-unikey                           <none>        <none>       (no description available)





另外提供我之前寫的安裝腳本,給您參考

* https://github.com/samwhelp/play-ubuntu-20.04-plan/tree/master/prototype-subject/im/fcitx-chewing (簡易版)
* https://github.com/samwhelp/play-ubuntu-20.04-plan/tree/master/tool/fcitx (進階版)

5/21 22:31:52
應用擴展 工具箱
回覆: ubuntu20.04下pyside2程式無法切換fcitx中文輸入
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 35
HP : 172 / 861
MP : 598 / 20867
EXP: 45
離線
剛剛做了簡單的測試,先紀錄一下,提供您參考

================================================================================

執行


$ apt-cache search pyside2



顯示


libpyside2-dev - Python bindings for Qt5 (development files)
libpyside2-py3-5.14 - Python 3 bindings for Qt5 (base files)
libshiboken2-dev - CPython bindings generator for C++ libraries (development files)
libshiboken2-py3-5.14 - CPython bindings generator for C++ libraries (Python3 shared library)
pyside2-tools - development tools for PySide2 (uic, rcc, lupdate)
python-pyside2-doc - Python bindings for Qt5 (common documentation)
python3-pyside2.qt3dcore - Python bindings for Qt5 3DCore module (Python 3)
python3-pyside2.qt3dinput - Python bindings for Qt5 3DInput module (Python 3)
python3-pyside2.qt3dlogic - Python bindings for Qt5 3DLogic module (Python 3)
python3-pyside2.qt3drender - Python bindings for Qt5 3DRender module (Python 3)
python3-pyside2.qtcharts - Python bindings for Qt5 Charts module (Python 3)
python3-pyside2.qtconcurrent - Python bindings for Qt5 Concurrent module (Python 3)
python3-pyside2.qtcore - Python bindings for Qt5 core module (Python 3)
python3-pyside2.qtdatavisualization - Python bindings for Qt5 Data Visualization (Python 3)
python3-pyside2.qtgui - Python bindings for Qt5 Gui module (Python 3)
python3-pyside2.qthelp - Python bindings for Qt5 Help module (Python 3)
python3-pyside2.qtlocation - Python bindings for Qt5 Location module (Python 3)
python3-pyside2.qtmultimedia - Python bindings for Qt5 Multimedia module (Python 3)
python3-pyside2.qtmultimediawidgets - Python bindings for Qt5 MultimediaWidgets module (Python 3)
python3-pyside2.qtnetwork - Python bindings for Qt5 Network module (Python 3)
python3-pyside2.qtopengl - Python bindings for Qt5 OpenGL module (Python 3)
python3-pyside2.qtopenglfunctions - Python bindings for Qt5 Open GL Functions (Python 3)
python3-pyside2.qtpositioning - Python bindings for Qt5 Positioning module (Python 3)
python3-pyside2.qtprintsupport - Python bindings for Qt5 PrintSupport module (Python 3)
python3-pyside2.qtqml - Python bindings for Qt5 Qml module (Python 3)
python3-pyside2.qtquick - Python bindings for Qt5 Quick module (Python 3)
python3-pyside2.qtquickwidgets - Python bindings for Qt5 QuickWidgets module (Python 3)
python3-pyside2.qtscript - Python bindings for Qt5 Script module (Python 3)
python3-pyside2.qtscripttools - Python bindings for Qt5 ScriptTools module (Python 3)
python3-pyside2.qtscxml - Python bindings for Qt5 Scxml (Python 3)
python3-pyside2.qtsensors - Python bindings for Qt5 Sensors module (Python 3)
python3-pyside2.qtsql - Python bindings for Qt5 Sql module (Python 3)
python3-pyside2.qtsvg - Python bindings for Qt5 Svg module (Python 3)
python3-pyside2.qttest - Python bindings for Qt5 Test module (Python 3)
python3-pyside2.qttexttospeech - Python bindings for Qt5 TextToSpeech module (Python 3)
python3-pyside2.qtuitools - Python bindings for Qt5 UiTools module (Python 3)
python3-pyside2.qtwebchannel - Python bindings for Qt5 WebChannel module (Python 3)
python3-pyside2.qtwebengine - Python bindings for Qt5 Web Engine (Python 3)
python3-pyside2.qtwebenginecore - Python bindings for Qt5 WebEngineCore module (Python 3)
python3-pyside2.qtwebenginewidgets - Python bindings for Qt5 WebEngineWidgets module (Python 3)
python3-pyside2.qtwebsockets - Python bindings for Qt5 WebSockets module (Python 3)
python3-pyside2.qtwidgets - Python bindings for Qt5 Widgets module (Python 3)
python3-pyside2.qtx11extras - Python bindings for Qt5 X11Extras module (Python 3)
python3-pyside2.qtxml - Python bindings for Qt5 Xml module (Python 3)
python3-pyside2.qtxmlpatterns - Python bindings for Qt5 XmlPatterns module (Python 3)
shiboken2 - CPython bindings generator for C++ libraries
shiboken2-doc - CPython bindings generator for C++ libraries (common documentation)



================================================================================

執行下面指令安裝「Package: pyside2-tools」,「Package: python3-pyside2.qtgui」,「Package: python3-pyside2.qtwidgets



$ sudo apt-get install pyside2-tools python3-pyside2.qtgui python3-pyside2.qtwidgets



================================================================================

使用「pyside2 input field」當關鍵字查詢,

可以找到下面網址

https://pythonprogramminglanguage.com/pyqt-line-edit/

這個頁面有程式碼,可以用來測試

我使用「fcitx-chewing」是可以正常輸入的。

後記:剛發現,這頁面程式碼,應該不是「pyside2」的範例

關於「pyside2」的範例程式碼,請參考「#6」紀錄的網址

================================================================================

接著使用「ubuntu fcitx 嘸蝦米」當關鍵找尋

可以找到下面網址

http://likesunniday.blogspot.com/2018/05/ubuntu-1804-fcitx.html

參考該頁的說明,執行下面指令安裝「Package: fcitx」,「Package: fcitx-m17n」,「Package: fcitx-table-boshiamy


$ sudo apt-get install fcitx fcitx-m17n fcitx-table-boshiamy



裝好後,重新啟動「fcitx」,

就可以切換到「boshiamy」,一樣可以在剛剛的範例正常輸入。

================================================================================

另外在「fcitx」的UI,我是使用「fcitx-ui-classic,我沒有使用「fcitx-ui-qimpanel

================================================================================

以上提供參考

報告完畢


5/22 0:18:38
應用擴展 工具箱
回覆: ubuntu20.04下pyside2程式無法切換fcitx中文輸入
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 35
HP : 172 / 861
MP : 598 / 20867
EXP: 45
離線
要先說一聲抱歉

剛發現,剛剛找到的頁面程式碼,應該不是「pyside2」的範例

Orz...

唉,我頭暈,想睡了,明天再來繼續測試吧

5/22 0:35:08
應用擴展 工具箱
回覆: ubuntu20.04下pyside2程式無法切換fcitx中文輸入
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 35
HP : 172 / 861
MP : 598 / 20867
EXP: 45
離線
剛又找到一個網址

https://doc.qt.io/qtforpython/tutorials/basictutorial/dialog.html#complete-code


這裡面的程式碼,應該就是「PySide2」的範例了,

在我的環境「Xubuntu 20.04」測試的結果,一樣是可以使用「fcitx」正常輸入中文

補充完畢


5/22 0:44:23
應用擴展 工具箱
回覆: ubuntu20.04下pyside2程式無法切換fcitx中文輸入
會員一級
註冊日期:
2012/3/12 12:53
所屬群組:
已註冊使用者
等級: 2
HP : 0 / 34
MP : 4 / 848
EXP: 38
離線
非常感謝samwhelp兄的鼎力協助,覺得非常溫暖,真心感謝您!

我一一依您的指導安裝了套件,也試了您提供的範例程式,還是沒有辦法在程式中切換,連我常用的通訊軟體telegram也無法切換中文嘸蝦米輸入(也許它也是QT5做的)。


後來,我發現可能是新酷音影響了它,因為系統新登入時,很奇怪,新酷音和嘸蝦米同時都顯示在右上角的狀態欄,但我不知如何讓新酷音不被啟動。我一再確認了在語言支援內的鍵盤輸入法上選擇了fcitx,但不知為何新酷音還會出現。

很抱歉,我幾乎沒在論譠上發言,上傳兩張截圖(讓您知道我系統上新登錄後就有新酷音和無蝦米),卻不知傳到哪去了。

5/22 17:16:57
應用擴展 工具箱
回覆: ubuntu20.04下pyside2程式無法切換fcitx中文輸入
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 35
HP : 172 / 861
MP : 598 / 20867
EXP: 45
離線
哇!這有點詭異!

我目前也猜不到在您的環境,是什麼因素造成的!

================================================================================

hphp 寫到:

...

後來,我發現可能是新酷音影響了它,因為系統新登入時,很奇怪,新酷音和嘸蝦米同時都顯示在右上角的狀態欄,但我不知如何讓新酷音不被啟動。我一再確認了在語言支援內的鍵盤輸入法上選擇了fcitx,但不知為何新酷音還會出現。

...



目前想到的是您的系統是否也同時執行了ibus

可以執行下面指令檢查


$ ps aux | grep ibus



================================================================================

然後您可以檢查一下您的環境變數

執行下面指令


$ env | grep IM



顯示類似如下的資訊


CLUTTER_IM_MODULE=xim
QT4_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XDG_RUNTIME_DIR=/run/user/1000
GTK_IM_MODULE=fcitx
LC_TIME=en_US.UTF-8



================================================================================

執行下面指令


$ env | grep MOD





顯示類似如下的資訊


CLUTTER_IM_MODULE=xim
QT4_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
GTK_IM_MODULE=fcitx



================================================================================

然後檢查「~/.xinputrc」這個檔案的內容


cat ~/.xinputrc



顯示類似如下的內容


# im-config(8) generated on Fri, 22 May 2020 20:51:57 +0800
run_im fcitx
# im-config signature: c76a12f4d4f32db1366c0aa0992f210b -




================================================================================

若是沒有「~/.xinputrc」這個檔案,可以執行下面指令產生


$ im-config -n fcitx



================================================================================

另外fcitx有提供一個指令fcitx-diagnose,應該可以看到一些系統資訊。

================================================================================

以上目前想到可以做的檢查,提供您參考

也許可以找到新的線索,或是有新的靈感


5/22 21:00:04
應用擴展 工具箱
回覆: ubuntu20.04下pyside2程式無法切換fcitx中文輸入
會員一級
註冊日期:
2012/3/12 12:53
所屬群組:
已註冊使用者
等級: 2
HP : 0 / 34
MP : 4 / 848
EXP: 38
離線
哇,您講的已經超出我的程度許多。

我只好執行您的建議,將結果秀出,請您撥冗幫忙看看。我不會po圖,不好意思。

其中最後一項,說我的預設輸入法有問題,如下:
2. 預設輸入法:

**您第一個(預設)輸入法使用 boshiamy 代替鍵盤輸入法。您可能會有無法使用 fcitx 的問題。**


1)
hp@hp-300:~$ ps aux | grep ibus
hp 1806 0.0 0.0 319848 8640 ? Sl 14:46 0:03 ibus-daemon --panel disable --xim
hp 1810 0.0 0.0 171612 7184 ? Sl 14:46 0:00 /usr/libexec/ibus-memconf
hp 1811 0.0 0.2 284984 32392 ? Sl 14:46 0:02 /usr/libexec/ibus-extension-gtk3
hp 1815 0.0 0.2 207164 28880 ? Sl 14:46 0:00 /usr/libexec/ibus-x11 --kill-daemon
hp 1817 0.0 0.0 245256 7524 ? Sl 14:46 0:00 /usr/libexec/ibus-portal
hp 2137 0.0 0.3 624552 38052 ? Sl 14:46 0:01 /usr/lib/ibus/ibus-engine-chewing --ibus
hp 3450 0.0 0.0 171604 7176 ? Sl 14:49 0:00 /usr/libexec/ibus-engine-simple
hp 19006 0.0 0.0 17688 668 pts/0 S+ 21:19 0:00 grep --color=auto i

2)
hp@hp-300:~$ env | grep IM
GTK_IM_MODULE=fcitx
QT4_IM_MODULE=fcitx
IM_CONFIG_PHASE=1
CLUTTER_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XDG_RUNTIME_DIR=/run/user/1000
LC_TIME=zh_TW.UTF-8

3)
hp@hp-300:~$ env | grep MOD
GTK_IM_MODULE=fcitx
QT4_IM_MODULE=fcitx
GNOME_SHELL_SESSION_MODE=ubuntu
XMODIFIERS=@im=fcitx
GTK_MODULES=gail:atk-bridge
CLUTTER_IM_MODULE=fcitx
QT_IM_MODULE=fcitx

4)
hp@hp-300:~$ cat ~/.xinputrc
# im-config(8) generated on Mon, 18 May 2020 21:41:52 +0800
run_im fcitx
# im-config signature: 3cda4e5204b68159dcbf1af52411e05d -

5)
hp@hp-300:~$ fcitx-diagnose
# 系統資訊:
1. `uname -a`:

Linux hp-300 5.4.0-31-generic #35-Ubuntu SMP Thu May 7 20:20:34 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

2. `lsb_release -a`:

No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04 LTS
Release: 20.04
Codename: focal

3. `lsb_release -d`:

Description: Ubuntu 20.04 LTS

4. `/etc/lsb-release`:

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04 LTS"

5. `/etc/os-release`:

NAME="Ubuntu"
VERSION="20.04 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

6. 桌面環境:

桌面環境為 `gnome3`。

7. Bash 版本:

BASH_VERSION='5.0.16(1)-release'

# 環境:
1. DISPLAY:

DISPLAY=':0'

2. 鍵盤配置:

1. `setxkbmap`:

xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+us:2+inet(evdev)" };
xkb_geometry { include "pc(pc105)" };
};

2. `xprop`:

_XKB_RULES_NAMES(STRING) = "evdev", "pc105", "us,us", ",", ""

3. 地區設定:

1. 全部地區設定:

C
C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IL
en_IL.utf8
en_IN
en_IN.utf8
en_NG
en_NG.utf8
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZM
en_ZM.utf8
en_ZW.utf8
POSIX
zh_CN.utf8
zh_HK.utf8
zh_SG.utf8
zh_TW.utf8

2. 目前地區設定:

LANG=zh_TW.UTF-8
LANGUAGE=zh_TW:zh:en_US:en
LC_CTYPE="zh_TW.UTF-8"
LC_NUMERIC=zh_TW.UTF-8
LC_TIME=zh_TW.UTF-8
LC_COLLATE="zh_TW.UTF-8"
LC_MONETARY=zh_TW.UTF-8
LC_MESSAGES="zh_TW.UTF-8"
LC_PAPER=zh_TW.UTF-8
LC_NAME=zh_TW.UTF-8
LC_ADDRESS=zh_TW.UTF-8
LC_TELEPHONE=zh_TW.UTF-8
LC_MEASUREMENT=zh_TW.UTF-8
LC_IDENTIFICATION=zh_TW.UTF-8
LC_ALL=

4. 目錄:

1. 家目錄:

/home/hp

2. `${XDG_CONFIG_HOME}`:

環境變數 `XDG_CONFIG_HOME` 未設定。

`XDG_CONFIG_HOME` 目前的值為 `~/.config` (`/home/hp/.config`)。

3. Fcitx 設定目錄:

目前的 fcitx 設定目錄為 `~/.config/fcitx` (`/home/hp/.config/fcitx`)。

5. 目前使用者:

此腳本以 hp (1000) 執行。

# Fcitx 狀態:
1. 可執行檔:

在 `/usr/bin/fcitx` 找到 fcitx。

2. 版本:

Fcitx 版本:`4.2.9.7`

3. 程序:

找到 4 個 fcitx 程序:

1727 fcitx <defunct>
1729 fcitx
1740 fcitx-dbus-watc
2236 fcitx-qimpanel

4. `fcitx-remote`:

`fcitx-remote` 運作正常。

5. DBus 介面:

使用 `dbus-send` 檢查 dbus。

DBus 名稱 `org.fcitx.Fcitx` 的所有者為 `:1.21`。

DBus 名稱 `org.fcitx.Fcitx` 的 PID 所有者為 `1729`。

# Fcitx 設定介面:
1. 設定工具封裝:

在 `/usr/bin/fcitx-configtool` 找到 fcitx-configtool。

2. gtk2 的設定介面:

**找不到 gtk2 的設定介面。**

3. gtk3 的設定介面:

在 `/usr/bin/fcitx-config-gtk3` 找到了 `fcitx-config-gtk3`。

4. KDE 的設定介面:

**找不到 `kcmshell4`。**

# 前端設定:
## Xim:
1. `${XMODIFIERS}`:

環境變數 XMODIFIERS 正確地設定為「@im=fcitx」。
環境變數中 XIM 服務名稱為 fcitx。

2. root 視窗上的 XIM_SERVERS:

**Xim 服務名稱:「ibus」與環境變數設定的值「fcitx」不同。**

## Qt:
1. qt4 - `${QT4_IM_MODULE}`:

環境變數 QT4_IM_MODULE 正確地設定為「fcitx」。

2. qt5 - `${QT_IM_MODULE}`:

環境變數 QT_IM_MODULE 正確地設定為「fcitx」。

3. Qt 輸入法模組檔案:

找到了 Qt5 的 fcitx 輸入法模組:`/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so`。
找到了 fcitx 的 qt 模組:`/lib/x86_64-linux-gnu/fcitx/qt/libfcitx-quickphrase-editor5.so`。
**找不到 Qt4 的 fcitx 輸入法模組。**

## Gtk:
1. gtk - `${GTK_IM_MODULE}`:

環境變數 GTK_IM_MODULE 正確地設定為「fcitx」。

2. `gtk-query-immodules`:

1. gtk 2:

**找不到 gtk 2 的 `gtk-query-immodules`**

**找不到 gtk 2 的 fcitx 輸入法模組。**

2. gtk 3:

**找不到 gtk 3 的 `gtk-query-immodules`**

**找不到 gtk 3 的 fcitx 輸入法模組。**

3. Gtk 輸入法模組快取:

1. gtk 2:

在 `/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache` 找到 gtk `2.24.32` 的輸入法模組快取。
版本:

# Created by /usr/lib/x86_64-linux-gnu/libgtk2.0-0/gtk-query-immodules-2.0 from gtk+-2.24.32

找到了 gtk `2.24.32` 的 fcitx 輸入法模組。

"/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-fcitx.so"
"fcitx" "Fcitx (Flexible Input Method Framework)" "fcitx" "/usr/share/locale" "ja:ko:zh:*"

2. gtk 3:

在 `/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules.cache` 找到 gtk `3.24.18` 的輸入法模組快取。
版本:

# Created by /usr/lib/x86_64-linux-gnu/libgtk-3-0/gtk-query-immodules-3.0 from gtk+-3.24.18

找到了 gtk `3.24.18` 的 fcitx 輸入法模組。

"/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules/im-fcitx.so"
"fcitx" "Fcitx (Flexible Input Method Framework)" "fcitx" "/usr/share/locale" "ja:ko:zh:*"

4. Gtk 輸入法模組檔案:

1. gtk 2:

所有找到的 gtk 2 輸入法模組檔案皆存在。

2. gtk 3:

所有找到的 gtk 3 輸入法模組檔案皆存在。

# 設定:
## Fcitx 附加元件:
1. 附加元件設定目錄:

找到 fcitx 附加元件設定目錄:`/usr/share/fcitx/addon`。

2. 附加元件清單:

1. 找到 29 個啟用的附加元件:

fcitx-autoeng
fcitx-chewing
fcitx-chttrans
fcitx-classic-ui
fcitx-clipboard
fcitx-dbus
fcitx-freedesktop-notify
fcitx-fullwidth-char
fcitx-imselector
fcitx-ipc
fcitx-ipcportal
fcitx-keyboard
fcitx-kimpanel-ui
fcitx-lua
fcitx-m17n
fcitx-notificationitem
fcitx-pinyin
fcitx-pinyin-enhance
fcitx-punc
fcitx-quickphrase
fcitx-remote
fcitx-spell
fcitx-table
fcitx-unicode
fcitx-vk
fcitx-x11
fcitx-xim
fcitx-xkb
fcitx-xkbdbus

2. 找到 0 個停用的附加元件:

3. 附加元件函式庫:

找到了所有附加元件的函式庫。

4. 使用者介面:

找到 2 個啟用的使用者介面附加元件:

fcitx-classic-ui
fcitx-kimpanel-ui

Kimpanel 程序:

2236 fcitx-qimpanel

## 輸入法:
1. 找到 2 個啟用的輸入法:

boshiamy
fcitx-keyboard-us

2. 預設輸入法:

**您第一個(預設)輸入法使用 boshiamy 代替鍵盤輸入法。您可能會有無法使用 fcitx 的問題。**

# 日誌:
1. `date`:

西元2020年05月22日 (週五) 21時24分47秒 CST

2. `~/.config/fcitx/log/`:

總計 0

3. `~/.config/fcitx/log/crash.log`:

找不到 `~/.config/fcitx/log/crash.log`。

5/22 22:46:09
應用擴展 工具箱
回覆: ubuntu20.04下pyside2程式無法切換fcitx中文輸入
會員五級
註冊日期:
2012/4/22 10:50
所屬群組:
已註冊使用者
等級: 35
HP : 172 / 861
MP : 598 / 20867
EXP: 45
離線
hphp 寫到:



1)
hp@hp-300:~$ ps aux | grep ibus
hp 1806 0.0 0.0 319848 8640 ? Sl 14:46 0:03 ibus-daemon --panel disable --xim
hp 1810 0.0 0.0 171612 7184 ? Sl 14:46 0:00 /usr/libexec/ibus-memconf
hp 1811 0.0 0.2 284984 32392 ? Sl 14:46 0:02 /usr/libexec/ibus-extension-gtk3
hp 1815 0.0 0.2 207164 28880 ? Sl 14:46 0:00 /usr/libexec/ibus-x11 --kill-daemon
hp 1817 0.0 0.0 245256 7524 ? Sl 14:46 0:00 /usr/libexec/ibus-portal
hp 2137 0.0 0.3 624552 38052 ? Sl 14:46 0:01 /usr/lib/ibus/ibus-engine-chewing --ibus
hp 3450 0.0 0.0 171604 7176 ? Sl 14:49 0:00 /usr/libexec/ibus-engine-simple
hp 19006 0.0 0.0 17688 668 pts/0 S+ 21:19 0:00 grep --color=auto i

... 略 ...


# 前端設定:
## Xim:
1. `${XMODIFIERS}`:

環境變數 XMODIFIERS 正確地設定為「@im=fcitx」。
環境變數中 XIM 服務名稱為 fcitx。

2. root 視窗上的 XIM_SERVERS:

**Xim 服務名稱:「ibus」與環境變數設定的值「fcitx」不同。**




先排除一個因素測測看

執行下面指令,將「/usr/bin/ibus-daemon」移走


$ sudo mv /usr/bin/ibus-daemon /usr/bin/ibus-daemon.bak



然後重開機,再測測看fcitx是否能正常輸入

重開機後,一樣也可以執行下面指令,檢查看看ibus是否有在執行中


$ ps aux | grep ibus



以上




## 之前相關的討論

* #41 回覆: Ubuntu 17.10 推出
* #7 回覆: 討論這篇「如何讓gcin開機後不多次執行」
* #3 回覆: elementary OS 0.4.0 Loki 中文輸入問題


## 相關程式碼

* https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/3.36.2/js/misc/ibusManager.js#L63
* https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/3.36.2/js/misc/ibusManager.js#L58
* https://gitlab.gnome.org/GNOME/gnome-session/-/blob/3.36.0/gnome-session/main.c#L570

5/22 23:16:37
應用擴展 工具箱

(1) 2 »

 [無發表權] 請登錄或者註冊


可以查看帖子.
不可發帖.
不可回覆.
不可編輯自己的帖子.
不可刪除自己的帖子.
不可發起投票調查.
不可在投票調查中投票.
不可上傳附件.
不可不經審核直接發帖.