首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >GTK_IM_MODULE和GTK_MODULES集合在哪里?

GTK_IM_MODULE和GTK_MODULES集合在哪里?
EN

Ask Ubuntu用户
提问于 2021-03-04 23:26:28
回答 2查看 3.9K关注 0票数 3

在我的Ubuntu20.04中第一次启动Eclipse时,我收到了一个警告(实际上似乎是2个警告)。

代码语言:javascript
运行
复制
***WARNING: Detected: GTK_IM_MODULE=xim. This input method is unsupported and can cause graphical issues.
***WARNING: Unset GTK_IM_MODULE or set GTK_IM_MODULE=ibus if flicking is experienced. 
log4j:WARN No appenders could be found for logger (org.eclipse.jgit.internal.storage.file.FileSnapshot).
log4j:WARN Please initialize the log4j system properly.

为了处理GTK...警告,我搜索了一下。我在这里上发现"Gnome让ibus成为默认的输入法“(即使答案是2016年的,下图表明它仍然适用)。但

代码语言:javascript
运行
复制
$ env | grep -i gtk
GTK_IM_MODULE=xim
GTK_MODULES=gail:atk-bridge

所以我想知道GTK_IM_MODULE集在哪里。我尝试过的(没有运气):

代码语言:javascript
运行
复制
$ grep -i gtk ~/.bashrc
$ grep -i gtk ~/.profile 
$ grep -i gtk /etc/profile
$ grep -i -nH gtk /etc/profile.d/*
$ grep -i gtk ~/.xprofile 
$ grep -i gtk ~/.xinputrc 
$ gsettings get org.gnome.desktop.interface gtk-im-module
'gtk-im-context-simple'

(注意,根据dconf-editor,默认值是'')。

接下来,我将尝试警告中的建议,Unset GTK_IM_MODULE or set GTK_IM_MODULE=ibus,但我仍然有一个问题:

Where GTK_IM_MODULE GTK_MODULES设置?

在启动im-config时,我看到了以下内容

编辑

也许是~/.xinputrc对此负责。其内容:

代码语言:javascript
运行
复制
# im-config(8) generated on Tue, 03 Nov 2020 10:36:11 -0300
run_im xim
# im-config signature: 1f92fadecc95eaeaf5534ec0902b5a9b  -

If这就是原因,为什么 .xinputrc contain?

EDIT #2

我已经删除了.xinputrc,登出并再次登录。仍然

代码语言:javascript
运行
复制
$ env | grep -i gtk
GTK_IM_MODULE=xim
GTK_MODULES=gail:atk-bridge

因此,.xinputrc似乎不是罪魁祸首。

EDIT #3

我处决了

代码语言:javascript
运行
复制
$ im-config -n ibus
$ im-config -m
default
ibus
ibus

ibus

因此,我确保ibus是当前的(在输出的第二行,我以前有xim )。我又登了一次。仍然

代码语言:javascript
运行
复制
$ env | grep -i gtk
GTK_IM_MODULE=xim
GTK_MODULES=gail:atk-bridge
$ cat .xinputrc 
# im-config(8) generated on Thu, 04 Mar 2021 23:34:26 -0300
run_im ibus
# im-config signature: 3d5777226bbd6243ce412ee4470b8020  -

此外,启动eclipse仍然提供相同的警告(预期的,因为环境变量有相同的值)。随后的闪烁仍然存在。

按照评论中的要求

代码语言:javascript
运行
复制
$ env | grep -E '_IM|XMOD'
GTK_IM_MODULE=xim
QT4_IM_MODULE=xim
XMODIFIERS=@im=none
CLUTTER_IM_MODULE=xim
QT_IM_MODULE=ibus

因此,.xinputrc似乎不是罪魁祸首。

EDIT #4

在重启之后

代码语言:javascript
运行
复制
$ im-config -m
default
ibus
ibus

ibus
$ env | grep -E '_IM|XMOD'
XMODIFIERS=@im=ibus
QT_IM_MODULE=ibus
$ env | grep -i gtk
GTK_MODULES=gail:atk-bridge
$ grep -i gtk ~/.profile 
$ grep -i gtk /etc/environment
$ grep -i gtk /etc/environment.d/*
/etc/environment.d/90atk-adaptor.conf:GTK_MODULES=${GTK_MODULES:+$GTK_MODULES:}gail:atk-bridge

另外,eclipse没有显示警告(如预期的那样),并且闪烁消失了。

GTK_IM_MODULE是否也设置在/etc/environment.d/90atk-adaptor.conf中,我无法判断(我需要尝试一些方法来确定这一点)。

即使不需要:

  1. 关于什么设置GTK_IM_MODULE的问题仍然存在。
  2. 我将尝试删除.xinputrc,重新启动,并再次检查。
EN

回答 2

Ask Ubuntu用户

回答已采纳

发布于 2021-03-05 00:01:10

是的,这很可能是原因。

至于您的问题,为什么~/.xinputrc会包含这一点,这是一个很长的故事。简而言之,它是关于历史上为实现合理的默认配置而进行的各种尝试。我假设您几年前安装了Ubuntu,后来升级到20.04。

我的建议是:删除~/.xinputrc并重新启动。除非您通过语言支持主动更改输入方法配置,否则它不会返回。

票数 1
EN

Ask Ubuntu用户

发布于 2021-06-14 14:32:13

我确认在另一个具有相同问题的系统中,执行

代码语言:javascript
运行
复制
$ im-config -n ibus

重新启动解决了问题。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1321202

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档