快速解決linux下中文輸入法問題

2022-09-26 13:33:14 字數 946 閱讀 2723

故事背景:最近在做資產上報相關功能,要支援中文輸入,如果正常快捷方式啟動程式沒問題,但是公升級或者解除安裝重新安裝,自啟的時候是使用su usr -c xx.sh啟動,root下啟動沒辦法獲取使用者的環境變數,下面開始咱們探險之路。。。

探索之路:通過export列印root和使用者下的環境變數對比,以及google相關linux下輸入法相關問題,找到了qt_im_module這個變數,不同的系統會是ibus或者fctix或者其他等等,,,

解決方案:因為程式第一次安裝的時候需要使用者手動啟動,我們需要在**裡面新增獲取當前使用者下的qt_im_module的值,然後寫入全域性乙個檔案,然後在鉤子指令碼裡面去獲取這個全域性變數的值,在啟動指令碼裡面通過設定export qt_im_module=xx就可以了,下面展示**

**有話說:

1、程式裡面需要新增的**:

//新增全域性中文輸入法環境變數

qstring qstrinputmethod = path;

qstrinputmethod += "/www.cppcns.com.local/sdforcnos/sdf程式設計客棧orcnos.inputmethod";

char *pinputenv = getenv("qt_im_module");

if(pinputenv != null)

2、鉤子指令碼需要的**:

if [ -e "/home/$/.local/sdforcnos/sdforcnos.inputmethod" ];then

inputenv=`catfqvsutzqkg /home/$/.local/sdforcnos/sdforcnos.inputmethod`

if [ ! -z "$inputenv" ]; then

export qt_im_module="$inputenv"

fifi

su $user -c "/usr/bin/startsd &"

總結

linux下安裝中文輸入法

fcitx即free chinese input toy for x,它是乙個以gpl方式發布的 基於xim的簡體中文輸入法 即原來的g五筆 包括五筆 拼音 區位輸入法,是在linux 作業系統 中使用的輸入法 a.以root身份登入 注意,如果不是root身份,不能進行操作,如果你沒有以 root...

Linux下安裝中文輸入法 小企鵝輸入法

linux 下安裝中文輸入法 小企鵝輸入法 zccst linux 系統 centos 5.3 剛剛裝好的 centos 5.3 不要說有中文輸入法,甚至連中文字型在瀏覽器裡都無法顯示,當然,英文肯定能顯示。一開始,在瀏覽器裡顯示中文字型還是個問題,怎麼辦?原以為很複雜,誰知道乙個命令就可以搞定 y...

c 關閉中文輸入法 開啟中文輸入法

輸入法的禁用和啟用有兩種方式 在控制項的操作級別中,能對輸入法有影響的只有輸入型控制項,例如textbox,combobox 等 控制性 xaml 塊方式 inputmethod.preferredimestate on 啟用輸入法 inputmethod.preferredimeconversio...