查看: 44|回复: 0

[Ubuntu] 详解Ubuntu16.04启动器图标异常解决方法

[复制链接]

4

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2008-4-25
发表于 2023-5-24 00:00:00 | 显示全部楼层 |阅读模式

在Ubuntu16.04中,将某个程序锁定到启动器后,偶尔会出现无法正常运行、不能正确输入中文等问题。这里以SQLyog为例,总结一些常见问题和解决方法。

1. 锁定后图标消失/无法启动

在~/.local/share/applications/文件夹下可以找到以.desktop结尾的配置文件,以SQLyog为例,初始的配置文件如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Name=SQLyog
Icon=sqlyog_exe.png
Path=/home/kevinyang/SQLyog10.2
Exec=Z:\\home\\kevinyang\\SQLyog10.2\\SQLyog.exe
StartupNotify=false
StartupWMClass=SQLyog.exe
OnlyShowIn=Unity;
X-UnityGenerated=true

因为SQLyog是借助wine启动的,而这里的Exec这个配置记录的是wine内部的执行方式,所以一来锁定到启动器的图标会无法正常显示,二来点击图标也无法启动SQLyog。将启动配置更改为下面的命令:

?
1
Exec=wine "Z:\\home\\kevinyang\\SQLyog10.2\\SQLyog.exe"

图标就可以正常显示,点击它也能正常启动程序了。

2. 无法使用搜狗输入法

可以尝试在启动时添加fcitx相关的这几个环境变量:

?
1
2
3
export XMODIFIERS="@im=fcitx"
export GTK_IM_MODULE="fcitx"
export QT_IM_MODULE="fcitx"

以SQLyog为例,编写一个启动脚本如下:

?
1
2
3
4
5
#!/bin/sh
 
export XMODIFIERS="@im=fcitx"
export GTK_IM_MODULE="fcitx"
wine "Z:\\home\\kevinyang\\SQLyog10.2\\SQLyog.exe"

使用chmod +x命令给这个脚本赋予执行权限,然后在.desktop文件中将Exec配置指向这个脚本即可。

题外话:sublime不能输中文的问题也是一个经常被问起的问题,以前很多博客里的解决方案都比较复杂,现在有个大神专门搞了一个脚本项目解决这个问题,点击查看sublime-text-imfix项目,整合了以前解决方案中编译库文件等等一些工作,拉下来之后直接执行sublime-text-imfix脚本就可以了,有需要的朋友可以参考下,反正我已经转去用vscode了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

原文链接:https://www.jianshu.com/p/03bf3ef65ad2

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部