欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2020年07月30日 11:42:11   作者:暴躁你東哥  
這篇文章主要介紹了linux下中文輸入法問題及解決方案,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

故事背景:最近在做資產(chǎn)上報相關(guān)功能,要支持中文輸入,如果正??旖莘绞絾映绦驔]問題,但是升級或者卸載重新安裝,自啟的時候是使用su usr -C XX.sh啟動,root下啟動沒辦法獲取用戶的環(huán)境變量,下面開始咱們探險之路。。。

探索之路:通過export打印root和用戶下的環(huán)境變量對比,以及google相關(guān)linux下輸入法相關(guān)問題,找到了QT_IM_MODULE這個變量,不同的系統(tǒng)會是ibus或者fctix或者其他等等,,,

解決方案:因為程序第一次安裝的時候需要用戶手動啟動,我們需要在代碼里面添加獲取當(dāng)前用戶下的QT_IM_MODULE的值,然后寫入全局一個文件,然后在鉤子腳本里面去獲取這個全局變量的值,在啟動腳本里面通過設(shè)置export QT_IM_MODULE=XX就可以了,下面展示代碼

代碼有話說:

1、程序里面需要添加的代碼:

//添加全局中文輸入法環(huán)境變量
    QString qstrInputMethod = path;
    qstrInputMethod += "/.local/sdforcnos/sdforcnos.inputMethod";
    char *pInputEnv = getenv("QT_IM_MODULE");
    if(pInputEnv != NULL)
    {
      QString qstrCMD = QString("echo %1 > %2").arg(pInputEnv).arg(qstrInputMethod);
      system(qstrCMD.toStdString().c_str());
      printf("---%s-----------QT_IM_MODULE=%s\n", qstrCMD.toStdString().c_str(), pInputEnv);
    }

2、鉤子腳本需要的代碼:

 if [ -e "/home/${user}/.local/sdforcnos/sdforcnos.inputMethod" ];then
     inputEnv=`cat /home/${user}/.local/sdforcnos/sdforcnos.inputMethod`
     if [ ! -z "$inputEnv" ]; then
       export QT_IM_MODULE="$inputEnv"
     fi
    fi
    su $user -c "/usr/bin/startsd &"

總結(jié)

到此這篇關(guān)于linux下中文輸入法問題的文章就介紹到這了,更多相關(guān)linux中文輸入法問題內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Linux系統(tǒng)禁止root賬號遠程登錄的命令

    Linux系統(tǒng)禁止root賬號遠程登錄的命令

    這篇文章主要介紹了Linux系統(tǒng)禁止root賬號遠程登錄的方法,文中給大家提到linux下禁止root遠程登錄和添加新用戶,需要的朋友可以參考下
    2019-07-07
  • ubuntu開啟22端口的實現(xiàn)

    ubuntu開啟22端口的實現(xiàn)

    這篇文章主要介紹了ubuntu開啟22端口的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 在Apache上隱藏服務(wù)器簽名的方法

    在Apache上隱藏服務(wù)器簽名的方法

    這篇文章主要介紹了在Apache上隱藏服務(wù)器簽名的方法,示例基于Debian系的Linux,需要的朋友可以參考下
    2015-06-06
  • linux服務(wù)器下通過iptables+Denyhost抵御暴力破解的配置方法

    linux服務(wù)器下通過iptables+Denyhost抵御暴力破解的配置方法

    這篇文章主要介紹了linux服務(wù)器下通過iptables + Denyhost抵御暴力破解的方法,需要的朋友可以參考下
    2014-11-11
  • Linux下安裝telnet的方法

    Linux下安裝telnet的方法

    這篇文章主要介紹了Linux下安裝telnet的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-07-07
  • 教你一招實現(xiàn)Linux中的文本比對

    教你一招實現(xiàn)Linux中的文本比對

    這篇文章主要給阿加介紹了關(guān)于Linux下文本比對的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • linux下查看yum/rpm/dpkg某軟件是否已安裝的方法

    linux下查看yum/rpm/dpkg某軟件是否已安裝的方法

    這篇文章主要介紹了在linux下查看yum/rpm/dpkg某軟件是否已安裝的方法,文中給出了詳細的示例代碼,對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-03-03
  • 詳解linux dma驅(qū)動編寫

    詳解linux dma驅(qū)動編寫

    這篇文章主要介紹了詳解linux dma驅(qū)動編寫,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-04-04
  • Linux關(guān)于透明大頁機制的介紹

    Linux關(guān)于透明大頁機制的介紹

    這篇文章介紹了Linux中的透明大頁機制,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-02-02
  • Linux如何設(shè)置服務(wù)自啟動

    Linux如何設(shè)置服務(wù)自啟動

    這篇文章主要介紹了Linux中設(shè)置服務(wù)自啟動的三種方式,ln -s 建立啟動軟連接
    2015-11-11

最新評論