久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

java - 如何解決linux下面中文輸入法不跟隨?

瀏覽:139日期:2023-10-14 15:54:54

問題描述

問題描述

Linux下面切換到中文輸入法,在sublime和jetbrains全家桶下面中文輸入法都無法跟隨,都會浮動到桌面的左下角。Google找了一下答案,基本都說是fcitx的原因,和IDE沒有關(guān)系。請問有遇到同樣問題的朋友嗎?能否給一下建議?不管是sougoupinyin還是googlepinyin都是一樣的。

ps: 但是在Vim(終端)以及瀏覽器下面都沒有問題,輸入法可以正常跟隨。運(yùn)行環(huán)境是Ubuntu16.04。

參考資料

Linux下PyCharm中文輸入法的跟隨問題JAVA寫的IDE輸入法在linux下老是會錯(cuò)位?

問題解答

回答1:

其實(shí)是跟編輯器有關(guān)的,因?yàn)榫庉嬈鳑]做好國際化,拿sublime text 3來說,其實(shí)官方linux版根本就沒有兼容輸入法。

拿gtk2來說,要讓程序支持輸入法,首先你得有一個(gè)輸入法上下文GtkIMContext *im_context,然后獲得焦點(diǎn)的時(shí)候還需要手動激活這個(gè)輸入法上下文:

gtk_im_context_focus_in(im_context);

不只這樣,還要監(jiān)聽各種信號(signals),比如輸入內(nèi)容更新、聯(lián)想詞、上屏(commit)等等……

最后,你還可以通過這個(gè)方法告訴輸入法,我當(dāng)前光標(biāo)在什么位置,你輸入法要根據(jù)我給的這個(gè)位置進(jìn)行調(diào)整:

void gtk_im_context_set_cursor_location(GtkIMContext *context,GdkRectangle *area);

好多編輯器在linux下的輸入法兼容性都有問題,畢竟人家只需要輸入英文,不需要輸入法,也懶得做那么多,做那么多也沒法測試。并且fcitx和ibus還有一些不一樣。

終端、瀏覽器這些都是ubuntu、google、mozilla他們做的,有專門的國際化團(tuán)隊(duì),當(dāng)然要做的好一些。

最后補(bǔ)充一下API:https://www.gtk.org/api/2.6/g...

回答2:

貌似官方還沒有解決這個(gè)問題;樓主可以嘗試安裝一下IMESupport,不過IMESupport這個(gè)插件現(xiàn)在在PackageControl下面不見了。。。(ノ﹏ヽ)

回答3:

看看編輯器有沒有設(shè)置編碼的地方設(shè)置成UTF8

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 聂荣县| 衡阳县| 维西| 犍为县| 科技| 乡宁县| 馆陶县| 定兴县| 武安市| 金沙县| 婺源县| 静安区| 松桃| 东平县| 潞城市| 碌曲县| 凭祥市| 阜宁县| 通海县| 浮梁县| 西盟| 北川| 瑞昌市| 都昌县| 千阳县| 新巴尔虎右旗| 沙雅县| 鲜城| 崇礼县| 买车| 额敏县| 汉中市| 西畴县| 简阳市| 石门县| 蒙阴县| 天祝| 修水县| 家居| 五华县| 嘉善县|