歡迎您光臨本站 註冊首頁

Debian Sid里的fcitx+im-switch無痛輸入法的安裝

←手機掃碼閱讀     火星人 @ 2014-03-24 , reply:0

Debian 唯一不如意的可能就是輸入法的問題了
沒有輸入法管理工具和切換工具
使得剛用Debian的新手無所適從
前一段時間huangjiahua版主發一了個帖子
<<托妮做的 fcitx 3.2 deb 包>>
http://www.linuxsir.org/bbs/showthre...ghlight=switch
其中提到了im-switch+支持im-swtich的fcitx3.2為我提供了一個有用信息
但是當時我是用fvwm的
在上面帖子中提到在~/下不能有.xinitrc or .Xsession文件
使我百思不得其解
於是放棄了im-switch
可是前幾天我給同學裝sid時想起了這個帖子
想用盡量簡單的方法來處理輸入法的問題
於是費了老大勁從hua版主浩浩的帖子中找到了這篇原帖子
於是下載了那個etony打的包
安裝了im-switch
然後註銷后再登陸就能用Ctrl+Space就能喚出fcitx了
於是總結基於gdm登陸的sid系統的輸入法簡單處理如下:

測試系統的locale為zh_CN.GBK用gdm登陸

1.im-switch

代碼:
QUOTE:
#apt-get install im-switch
2.fcitx 3.2

代碼:
QUOTE:
#wget http://www.fcitx.org/download/fcitx_3.2-051010_i386.deb
#dpkg -i fcitx_3.2-051010_i386.deb

3.註銷重再登陸即可
注:我沒有utf8下的locale下測試,希望哪位能測試一下,看看能不能成功


給同學安裝成功了后我於是也想擺弄一下了
但是我的系統沒用gdm而是用startx來啟動fvwm,而fvwm用的是~/.xinitrc來啟動的
所以按照上面的辦法怎麼也沒成功(.xinitr里關於輸入法的export已經注掉)
於是google到一篇
<>
http://bamanzi.blogeden.cn/post/110848/3911
還有這一個
http://www.linuxsir.org/bbs/showthread.php?t=231396
在這篇文章里我知道了im-switch在安裝后還是要進行配置一點東西的
而上面hua版主的文章里討論要刪掉.Xsession or .xinitrc才能啟動fcitx這個觀點個人感覺是不對的
於是我就看了一下im-switch的發行註記

代碼:
QUOTE:
$ more /usr/share/doc/im-switch/README.Debian
im-switch for Debian
--------------------

- To check input method list:
# im-switch -l
- To change default SYSTEM input method:
# im-switch -s
(inputmethod is such as uim_skk)
This changes /etc/alternatives/xinput-
- To change default USER input method:
$ im-switch -s
This changes ~/.xinput/xinput-

Each input method needs
-----------------------
Each input method deb should provide alternative such as:

[postinst]
update-alternatives \
--install /etc/X11/xinit/xinput.d/ja_JP xinput-ja_JP \
/etc/X11/xinit/xinput.d/uim_skk 50

[prerm]
update-alternatives --remove xinput-ja_JP /etc/X11/xinit/xinput.d/uim_skk

-- Kenshi Muto <kmuto@debian.org>, Sun, 13 Feb 2005 21:12:00 +0900

其實工作原理大概是:
im -switch根據當前LANG執行/etc/X11/xinput.d/或~/.xinput/xinput-
鏈接到一個由輸入法自行提供的啟動腳本(這個鏈接由alternatives系統來管理)。
但目前fcitx尚未提供im-switch備選項,所以我們要做的有下面這幾步:

我的locale是zh_CN.utf-8,其實gb,gbk也可以按這種方法來處理 BIG5不知道,因為不知道fcitx支持否,按理說應該支持吧(偶沒查證,如果這樣應該也行
1.安裝fcitx3.2 , im-switch方法同上
2.創建 /etc/X11/xinit/xinput.d/fcitx 文件

代碼:
QUOTE:
#cat > /etc/X11/xinit/xinput.d/fcitx <<"EOF"
>XIM=fcitx
>XIM_PROGRAM=/usr/bin/fcitx
>XIM_ARGS=
>GTK_IM_MODULE=XIM
>DEPENDS=
>EOF

3.用update-alternatives來創建鏈接
zh_CN的locale下

代碼:
QUOTE:
#update-alternatives --install /etc/X11/xinit/xinput.d/zh_CN xinput-zh_CN /etc/X11/xinit/xinput.d/fcitx 50
zh_CN.UTF-8的locale下

代碼:
QUOTE:
#update-alternatives --install /etc/X11/xinit/xinput.d/zh_CN.UTF-8 xinput-zh_CN.UTF-8 /etc/X11/xinit/xinput.d/fcitx 50
4.註銷再登陸即可

我發現如果你的locale跟上面相對應時根本用不著im-switch -s ...來配置
這一點還是很智能的

以上只是我的總結,也學會了怎麼用update-alternatives
還用上了傳說中的FVWM-Crystal
呵呵
在一些環境下還沒有充分測試
其實最主要的是我不知道im-swtich在sarge和testing里有沒有
寫希望對大家能有幫助和啟發
也做一個筆記發便日後查看

[火星人 ] Debian Sid里的fcitx+im-switch無痛輸入法的安裝已經有485次圍觀

http://coctec.com/docs/linux/show-post-136973.html