解决 Ubuntu 系统中 WPS 不能输入中文 - 文章教程

解决 Ubuntu 系统中 WPS 不能输入中文

发布于 2021-03-04 字数 4786 浏览 1456 评论 0

写在前面

1. Ubuntu18.04 GNOME 下 fcitx 不能输入中文,搜狗拼音当然失效

如题我是安装的Ubuntu 1804.2版之后有安装了gnome界面,登录界面我可以选择

  • gnome
  • 在 xrog 的 gnome
  • Ubuntu
  • Ubuntu on wayland

登录时选择了第一项 gnome 选项。进入发下我的emacs和wps竟然不能使用搜狗拼音了! 开始以为是搜狗拼音bug,经过仔细观察发现不是搜狗拼音。而是整个fcitx输入不能在wps 和 emacs中用。

  • 考虑是 IBus 干扰,彻底删了 IBus, purge 了 一遍。重装fcitx和sogo 问题依旧。
  • 无奈之下选择了网上大能的神通,设置中文 utf8,声明变量 (见下文),完全无效。
  • 所有方法都试过了问题依旧!
  • 所有方法都试过了问题依旧! 无意中切换登录界面到 Ubuntu ,进入后发现一切正常。 切换回 gnome 问题回来了, 切换 在xrog的gnome 选项 ,输入法又可以用了。 切换 Ubuntu on wayland 输入法又不行。

2. 总结

  • 在登录中的 gnomeUbuntu on waylangfcitx 在某些程序不能运行。
  • Ubuntu在xrog的gnome fcitx 一切正常。

3. 区别

这四种登录界面有什么区别,我目测没有发现有什么不同。折腾许久终于明白了:

  • Ubuntu on wayland: 是 gnome 新提出的一个界面,它的改动大,很多软件在他运行下会出问题。最大的改动就是配置文件改动后引起sogo不能用。
  • 在xrog的gnome: 选项比较成熟兼容性好。推荐新手选用。
  • Ubuntu: 就是 Ubuntu 自己的界面实际我觉得也很好,但是 Ubuntu 不在支持了从 1804 开始。
  • 在xrog的gnome: 经典 gnome 兼容 gnome 老版本。

搜狗不能用的原因是 fcitx 不能用。是因为 ~/.xprofiles 配置在 way land 中不起作用。 只要在 ~/.pam_environment 中加入如下内容,删除 .xprofiles 即可。

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"

就可以在 way land 使用,同时不影响在 xorg 中使用。

解决 Ubuntu 系统中 WPS 不能输入中文

打开WPS的文档,右上角的输入法已经是中文了,但是实际输入的时候,只能输入英文字母,出不了中文

1. WPS 文字

  • 在终端输入:
sudo gedit /usr/bin/wps
  • 出现sudo gedit 错误:Gtk-WARNING **: cannot open display: :0.0解决办法见后文
  • 从第二行加上:
export XMODIFIERS="@im=fcitx"
export QT_IM_MODULE="fcitx"
gOpt=#gOptExt=-multiplygTemplateExt=("wpt" "dot" "dotx")**

解决 Ubuntu 系统中 WPS 不能输入中文

2. WPS 表格

  • 在终端输入:
sudo gedit/usr/bin/et
  • 第二行加上:
export XMODIFIERS="@im=fcitx"
export QT_IM_MODULE="fcitx"
gOpt=#gOptExt=-multiply

解决 Ubuntu 系统中 WPS 不能输入中文

3. WPS演示

  • 打开终端输入:
sudo vim /usr/bin/wpp
  • 添加以下文字到打开的文本中(添加到“#!/bin/bash”下面):
export XMODIFIERS="@im=fcitx"
export QT_IM_MODULE="fcitx"

4. 重启 WPS

  • 然后就可以输入中文了

sudo gedit 错误:Gtk-WARNING **: cannot open display: :0.0

原因:

当使用 su 到另外一个用户运行某个程序,而这个程序又要有图形显示的时候,就有可能有下面提示:

No protocol specified
(gedit:2144): Gtk-WARNING **: cannot open display: :0

解决方法:

这是因为 Xserver 默认情况下不允许别的用户的图形程序的图形显示在当前屏幕上。如果需要别的用户的图形显示在当前屏幕上,则应以当前登陆的用户,也就是切换身份前的用户执行如下命令。

xhost +

通过执行这条命令,就授予了其它用户访问当前屏幕的权限,于是就可以以另外的用户运行需要运行的程序了。

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

2583 文章
29 评论
84935 人气
更多

推荐作者

猫性小仙女

文章 1 评论 0

qq_VO6LhT

文章 0 评论 0

猿舌电影

文章 0 评论 0

7556275422

文章 0 评论 0

YYQ_139

文章 0 评论 0