Xfce桌面设置右键菜单:用右键打开VSCode

前言

AlmaLinux安装VSCode之后始终没有找到如何用右键菜单打开VSCode,比Windows麻烦多了。每次都需要先找到文件夹,然后用系统自带的Open In Terminal打开终端,再输入code .,才能够在当前文件夹中快速打开VSCode。那么,有没有稍微快一点的办法?

前排感谢Xfce社区的各位大佬,给出了相当丰富的解决方案。

寻找解决方案

偌大一个系统要从源码开始寻找突破口还是太恐怖了,先看看社区上有没有什么解决方案。

不过经过查询,大多数使用的都是更为美观的GNOME桌面,而Xfce总归是因为占用较小,美观性比较极限,使用的人还是较少。结果就是:没能找到。

于是呢,找了个梯子,然后关键词也换成英文,搜索了:xfcecontext以及menu,总算是找到了这么一篇,甚至时间还算比较新,是2023年初的时候,点击链接跳转到论坛页面

于是,动手!

命令行配置

找到~/.config/Thunar/uca.xml,用cat命令,可以看到是这样的:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0" encoding="UTF-8"?>
<actions>
<action>
<icon>utilities-terminal</icon>
<name>Open Terminal Here</name>
<submenu></submenu>
<unique-id>1730698877632197-1</unique-id>
<command>exo-open --working-directory %f --launch TerminalEmulator</command>
<description>Example for a custom action</description>
<range></range>
<patterns>*</patterns>
<startup-notify/>
<directories/>
</action>
</actions>

可以看到官方给出的默认文件中,有一个Open Terminal Here的选项作为模板。我们只需要复制并按需求编写即可。例如,我利用终端打开VSCode使用的命令(command)为code .,那么也就对应到这个配置文件里<command>这一tag。虽然说例子用的是exo-open,但是exo-open并不是必须的,只要能执行命令就行。

所以,我们编写一个类似的action,如下:

1
2
3
4
5
6
7
8
9
10
11
12
<action>
<icon>/usr/share/code/resources/app/resources/linux/code.png</icon>
<name>Open Folder In VSCode</name>
<submenu></submenu>
<unique-id>1730698877632197-2</unique-id>
<command>code %f</command>
<description>Open this folder in VSCode</description>
<range></range>
<patterns>*</patterns>
<startup-notify/>
<directories/>
</action>

这段xml的解释从上往下依次是:

目前而言,这个icon不会显示在右键菜单上。会显示在哪,我们待会再说;
其次,name表示最终显示在右键菜单栏上的文字;
submenu表示是否在右键菜单中显示为子菜单,这里为空,表示不显示为子菜单;
unique-id表示唯一标识,可以随意填写,但要保证唯一,否则会报错。当然,这里为了方便,直接将最后一位的数字1改成了2
command表示要执行的命令,这里为code %f,表示在当前文件夹中执行code命令,%f表示当前文件夹的路径,所以,当右键点击文件夹时,就会在当前文件夹中打开VSCode
description表示描述,是用户自定义的解释说明文字,不会显示在右键菜单上;
rangepatternsstartup-notifydirectories目前都用不上。

配置好之后,保存uca.xml文件,就能立即生效。随便在一个文件夹上右键,就能够显示Open Folder In VSCode,非常方便。

可视化配置

后来也是无意间,在中文论坛中找到了这样一篇文章:以图形方式创建 Thunar 自定义操作。看来完全是关键字没找对。

既然有命令行配置了,后面也就一定有了可视化配置的工具。我们先找到这个入口:

可视化配置入口

在这里,我们点击Configure custom actions...,然后就可以看到如下界面:

配置界面

之前没有什么作用的icon在这里得到了体现。当然,就算得到了体现也不会出现在右键菜单中的。

这就是Xfce配置右键菜单的两种方式。