当前位置: 首页 > news >正文

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

前言

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

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

寻找解决方案

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

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

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

于是,动手!

命令行配置

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

<?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,如下:

<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在这里得到了体现。当然,就算得到了体现也不会出现在右键菜单中的。

至于%f的意思以及是否有其他参数,都已经写在下面了。这里的code %f也就对应了之前在终端中输入的code .

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

http://www.lryc.cn/news/479535.html

相关文章:

  • 【NLP自然语言处理】深入探索Self-Attention:自注意力机制详解
  • Pytorch训练时报nan
  • JavaScript定时器详解:setTimeout与setInterval的使用与注意事项
  • CSS——选择器、PxCook软件、盒子模型
  • Mysql 大表limit查询优化原理实战
  • 在vscode中开发运行uni-app项目
  • 【JavaEE初阶 — 多线程】Thread的常见构造方法&属性
  • ctfshow(316)--XSS漏洞--反射性XSS
  • ubuntu22.04安装conda
  • D58【python 接口自动化学习】- python基础之异常
  • Java项目实战II基于Spring Boot的便利店信息管理系统(开发文档+数据库+源码)
  • Java-日期计算工具类DateCalculator
  • 单片机串口接收状态机STM32
  • ipv6的 fc00(FC00::/7) 和 fec0(FEC0::/10)
  • Chat GPT英文学术写作指令
  • 超详细Pycharm安装汉化教程,Python环境配置和使用指南,Python零基础入门看这个就够了!
  • react-native:解决使用webView后部分场景在安卓10崩溃闪退问题
  • 大数据工具 flume 的安装配置与使用 (详细版)
  • 智慧城市智慧城市项目方案-大数据平台建设技术方案(原件Word)
  • C语言比较两个字符串是否相同
  • 丹摩征文活动|FLUX.1图像生成模型:AI工程师的创新实践
  • ZABBIX API获取监控服务器OS层信息
  • SpringBoot基础系列学习(五):JdbcTemplate 访问数据库
  • JavaEE-多线程初阶(3)
  • 从入门到精通:如何在Vue项目中有效运用el-image-viewer
  • uniapp组件实现省市区三级联动选择
  • 【C++】异常处理机制(对运行时错误的处理)
  • C++ boost steady_timer使用介绍
  • JVM 由多个模块组成,每个模块负责特定的功能
  • ORACLE批量插入更新如何拆分大事务?