解决Ubuntu 20.04下VS code无法使用中文输入法的问题
技术背景
在Ubuntu 20.04下,如果从应用商城中直接下载VS code,有可能会导致无法使用中文输入法的问题,那么就只能从其他地方写了中文再复制过来,非常的麻烦。从一些文章中收集到的信息来看,应该是从应用商城中下载的VS Code是一个阉割版的软件,其中就把中文输入法这一项给抛弃了。因此我们的操作是先把从应用商城安装的VS code卸载掉,然后重新安装一个完整版的VS code即可解决问题。
操作流程
整体流程基本上是先删除,后重新安装的策略。
$ sudo snap remove code
[sudo] dechin 的密码:
已删除 code
$ wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
$ sudo install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/
$ sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
$ rm -f packages.microsoft.gpg
$ sudo apt install apt-transport-https
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
apt-transport-https 已经是最新版 (2.0.9)。
下列软件包是自动安装的并且现在不需要了:
libfwupdplugin1 libice6:i386 libsm6:i386 libxt6:i386 linux-headers-5.14.0-1048-oem linux-image-5.14.0-1048-oem
linux-modules-5.14.0-1048-oem linux-oem-5.14-headers-5.14.0-1048
使用'sudo apt autoremove'来卸载它(它们)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 189 个软件包未被升级。
$ sudo apt update
获取:1 file:/var/cuda-repo-ubuntu2004-11-4-local InRelease
忽略:1 file:/var/cuda-repo-ubuntu2004-11-4-local InRelease
获取:2 file:/var/nccl-repo-2.7.6-ga-cuda11.0 InRelease
...
获取:71 https://mirrors.tuna.tsinghua.edu.cn/ubuntu focal-security/multiverse amd64 DEP-11 Metadata [2,468 B]
已下载 14.2 MB,耗时 30秒 (476 kB/s)
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
有 197 个软件包可以升级。请执行 ‘apt list --upgradable’ 来查看它们。
$ sudo apt install code
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
下列软件包是自动安装的并且现在不需要了:
libfwupdplugin1 libice6:i386 libsm6:i386 libxt6:i386 linux-headers-5.14.0-1048-oem linux-image-5.14.0-1048-oem
linux-modules-5.14.0-1048-oem linux-oem-5.14-headers-5.14.0-1048
使用'sudo apt autoremove'来卸载它(它们)。
下列【新】软件包将被安装:
code
升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 197 个软件包未被升级。
需要下载 88.1 MB 的归档。
解压缩后会消耗 369 MB 的额外空间。
获取:1 https://packages.microsoft.com/repos/code stable/main amd64 code amd64 1.72.2-1665614327 [88.1 MB]
已下载 88.1 MB,耗时 1分 6秒 (1,341 kB/s)
正在选中未选择的软件包 code。
(正在读取数据库 ... 系统当前共安装有 480642 个文件和目录。)
准备解压 .../code_1.72.2-1665614327_amd64.deb ...
正在解压 code (1.72.2-1665614327) ...
正在设置 code (1.72.2-1665614327) ...
Error in file "/usr/share/applications/org.kde.kdeconnect_open.desktop": "*/*" is an invalid MIME type ("*" is an un
registered media type)
正在处理用于 mime-support (3.64ubuntu1) 的触发器 ...
正在处理用于 gnome-menus (3.36.0-1ubuntu1) 的触发器 ...
正在处理用于 shared-mime-info (1.15-1) 的触发器 ...
正在处理用于 desktop-file-utils (0.24-1ubuntu3) 的触发器 ...
执行完成后,可以在应用程序列表找到Visual Studio Code的程序标志,此时可以正常进入VS code。
第一次打开的界面,不仅记录了删除前的最后一个界面,现在也可以正常使用中文输入法了。
到这里,我们的问题就解决了。
总结概要
本文主要解决的是在Ubuntu 20.04下有可能出现的中文输入法无法正常使用的问题,经过检索判断是系统应用商城中下载的VS code版本是不完整版的,因此解决方案就是先删除已安装的VS code,再重新安装完整版的VS code。
版权声明
本文首发链接为:https://www.cnblogs.com/dechinphy/p/vscode-cn.html
作者ID:DechinPhy
更多原著文章请参考:https://www.cnblogs.com/dechinphy/
打赏专用链接:https://www.cnblogs.com/dechinphy/gallery/image/379634.html
腾讯云专栏同步:https://cloud.tencent.com/developer/column/91958
CSDN同步链接:https://blog.csdn.net/baidu_37157624?spm=1008.2028.3001.5343
51CTO同步链接:https://blog.51cto.com/u_15561675