欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1759|回復: 0
收起左側

linux中文輸入法

[復制鏈接]
ID:128229 發表于 2016-6-27 21:57 | 顯示全部樓層 |閱讀模式
gdm是打開并管理當前X session的程序,/etc/init.d/gdm腳本控制了gdm程序的運行以及一些參數的傳遞。而我們要用的輸入法自然是在X session過程中運行的一個后臺程序,所以不管是不是在英文界面,只要你能保證gdm啟動后能觸發輸入法運行起來,問題就解決了。

中文界面默認就可以調用中文輸入法是因為它對應的locale(我們假定是zh_CN.UTF-8)決定了gdm在啟動的時候啟動scim。很簡單的對應關系,英文界面默認不能調用中文輸入是因為英文locale默認不能觸發scim的運行。我們要讓輸入法運行,只需要手動指定輸入法在英文locale下也被觸發就可以了。

gdm運行時會遍歷/etc/X11/xinit/Xsession.d/目錄下所有的腳本,所以如果我們只要放一個開啟scim的腳本到Xsession.d目錄下即可。im-switch程序干的就是這個事,大家可以讀一讀那個im-switch腳本,可以看到它遍歷如下文件,有文件存在就會跳出循環:
$HOME/.xinput.d/${LNG}
$HOME/.xinput.d/all_ALL
/etc/X11/xinit/x.input.d/${LNG}
/etc/X11/xinit/xinput.d/all_ALL
/etc/X11/xinit/xinput.d/default
${LNG}字符串是系統locale的截斷,英文系統中其值應該是en_US。這些文件設置了系統將要使用的輸入法,默認情況下,英文界面運行的會是/etc/X11/xinit/xinput.d/all_ALL文件,而這文件里會什么也不設置,于是就沒有輸入法可以用嘍!

為了讓輸入法運行,簡單地鏈接/etc/X11/xinit/xinput.d/scim文件到$HOME/.xinput.d/en_US,scim文件的內容:
XIM=SCIM
XIM_PROGRAM=/usr/bin/scim
XIM_ARGS="-d"
XIM_PROGRAM_SETS_ITSELF_AS_DAEMON=yes
GTK_IM_MODULE=xim
QT_IM_MODULE=xim
DEPENDS="scim,scim-anthy|scim-canna|scim-chewing|scim-pinyin|scim-hangle|scim-prime|scim-skk|scim-tables-additional|scim-m17n|scim-uim|scim-tables-ja|scim-tables-ko|scim-tables-zh"
它指定了en_US locale時,scim仍在gdm啟動后觸發,于是中文輸入法就出現了~

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表