Xfce桌面设置右键菜单:用右键打开VSCode
前言
AlmaLinux安装VSCode之后始终没有找到如何用右键菜单打开VSCode,比Windows麻烦多了。每次都需要先找到文件夹,然后用系统自带的Open In Terminal打开终端,再输入code .,才能够在当前文件夹中快速打开VSCode。那么,有没有稍微快一点的办法?
前排感谢Xfce社区的各位大佬,给出了相当丰富的解决方案。
寻找解决方案
偌大一个系统要从源码开始寻找突破口还是太恐怖了,先看看社区上有没有什么解决方案。
不过经过查询,大多数使用的都是更为美观的GNOME桌面,而Xfce总归是因为占用较小,美观性比较极限,使用的人还是较少。结果就是:没能找到。
于是呢,找了个梯子,然后关键词也换成英文,搜索了:xfce、context以及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表示描述,是用户自定义的解释说明文字,不会显示在右键菜单上;
range、patterns、startup-notify、directories目前都用不上。
配置好之后,保存uca.xml文件,就能立即生效。随便在一个文件夹上右键,就能够显示Open Folder In VSCode,非常方便。
可视化配置
后来也是无意间,在中文论坛中找到了这样一篇文章:以图形方式创建 Thunar 自定义操作。看来完全是关键字没找对。
既然有命令行配置了,后面也就一定有了可视化配置的工具。我们先找到这个入口:

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

之前没有什么作用的icon在这里得到了体现。当然,就算得到了体现也不会出现在右键菜单中的。
至于%f的意思以及是否有其他参数,都已经写在下面了。这里的code %f也就对应了之前在终端中输入的code .。
这就是Xfce配置右键菜单的两种方式。
相关文章:
Xfce桌面设置右键菜单:用右键打开VSCode
前言 AlmaLinux安装VSCode之后始终没有找到如何用右键菜单打开VSCode,比Windows麻烦多了。每次都需要先找到文件夹,然后用系统自带的Open In Terminal打开终端,再输入code .,才能够在当前文件夹中快速打开VSCode。那么࿰…...
【NLP自然语言处理】深入探索Self-Attention:自注意力机制详解
目录 🍔 Self-attention的特点 🍔 Self-attention中的归一化概述 🍔 softmax的梯度变化 3.1 softmax函数的输入分布是如何影响输出的 3.2 softmax函数在反向传播的过程中是如何梯度求导的 3.3 softmax函数出现梯度消失现象的原因 &…...
Pytorch训练时报nan
0. 引言 Pytorch训练时在batchN时loss为nan。经过断点检查发现在batchN-1时,网络参数非nan,输出非nan,但梯度为nan,导致网络参数已经全部被更新为nan,遇到这种情况应该如何排查,如何避免?由于导…...
JavaScript定时器详解:setTimeout与setInterval的使用与注意事项
在JavaScript中,定时器用于在指定的时间间隔后或周期性地执行代码。JavaScript 提供了两种主要的定时器函数:setTimeout 和 setInterval。以下是它们的详细解释和实现方式: 1. setTimeout setTimeout 函数用于在指定的毫秒数后执行一次函数…...
CSS——选择器、PxCook软件、盒子模型
选择器 结构伪类选择器 作用:根据元素的结构关系查找元素。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0&quo…...
Mysql 大表limit查询优化原理实战
文章目录 1 大表查询无条件优化&原理(入门)2 大表查询带 条件 优化&原理(进阶)2.1 where 后面的查询字段只有一个时,要求该字段是索引字段2.2 where 后面的查询字段有多个时,尽量让查询字段为索引字段且字段值基数大 3 大表查询带 排序 优化&…...
在vscode中开发运行uni-app项目
确保电脑已经安装配置好了node、vue等相关环境依赖 进行项目的创建 vue create -p dcloudio/uni-preset-vue 项目名 vue create -p dcloudio/uni-preset-vue uni-app 选择模版 这里选择【默认模版】 项目创建成功后在vscode中打开 第一次打开项目 pages.json 文件会报错&a…...
【JavaEE初阶 — 多线程】Thread的常见构造方法&属性
目录 Thread类的属性 1.Thread 的常见构造方法 2.Thread 的几个常见属性 2.1 前台线程与后台线程 2.2 setDaemon() 2.3 isAlive() Thread类的属性 Thread 类是JVM 用来管理线程的一个类,换句话说,每个线程都有一个唯一的Thread 对象与之关联&am…...
ctfshow(316)--XSS漏洞--反射性XSS
Web316 进入界面: 审计 显示是关于反射性XSS的题目。 思路 首先想到利用XSS平台解题,看其他师傅的wp提示flag是在cookie中。 当前页面的cookie是flagyou%20are%20not%20admin%20no%20flag。 但是这里我使用XSS平台,显示的cookie还是这样…...
ubuntu22.04安装conda
在 Ubuntu 22.04 上安装 Conda 可以通过以下步骤进行: 下载 Miniconda(轻量级版本的 Conda): 打开终端并运行以下命令以下载 Miniconda 安装脚本: wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-…...
D58【python 接口自动化学习】- python基础之异常
day58 异常捕获 学习日期:20241104 学习目标:异常 -- 74 自定义异常捕获:如何定义业务异常? 学习笔记: 自定义异常的用途 自定义异常的方法 # 抛出一个异常 # raise ValueError(value is error) # ValueError: val…...
Java项目实战II基于Spring Boot的便利店信息管理系统(开发文档+数据库+源码)
目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末 一、前言 在快节奏的…...
Java-日期计算工具类DateCalculator
DateCalculator是用于日期计算的工具类。这个工具类将包括日期的加减、比较、周期计算、日期 范围生成等功能。 import java.time.LocalDate; import java.time.LocalDateTime; import java.time.LocalTime; import java.time.Period; import java.time.temporal.ChronoUnit;…...
单片机串口接收状态机STM32
单片机串口接收状态机stm32 前言 项目的芯片stm32转国产,国产芯片的串口DMA接收功能测试不通过,所以要由原本很容易配置的串口空闲中断触发DMA接收数据的方式转为串口逐字节接收的状态机接收数据 两种方式各有优劣,不过我的芯片已经主频跑…...
ipv6的 fc00(FC00::/7) 和 fec0(FEC0::/10)
ipv6的 fc00(FC00::/7)(唯一本地地址) 替代了 fec0(FEC0::/10) (站点本地地址,已弃用) ipv6的 fc00(FC00::/7) 替代了 fec0(FEC0::/10) , 在IPv6地址中,FC00::/7(通常简写为FC00)和…...
Chat GPT英文学术写作指令
目录 Chat GPT英文学术写作指令 Chat GPT英文学术写作指令 1."为我捉供一些建议和技巧,以提高我的学术写作质最和风格" (Provide me with some suggestions andtips to improve the quality andstyleofmyacademic writing.) 2."帮我提写一个清晰而有逻辑的…...
超详细Pycharm安装汉化教程,Python环境配置和使用指南,Python零基础入门看这个就够了!
包含编程资料、学习路线图、源代码、软件安装包等!【[点击这里]】! PyCharm 是由 JetBrains 打造的一款 Python IDE (集成开发环境,Integrated Development Environment),带有一整套可以帮助用户在使用 Py…...
react-native:解决使用webView后部分场景在安卓10崩溃闪退问题
app闪退问题原因: 安卓7以上版本(7和7以下版本不会出现闪退):在屏幕不可视区域加载webView或者webView不在可视区域内切换页面时app崩溃闪退(在屏幕可视区域加载webView或者webView在可视区域内切换页面不会闪退&…...
大数据工具 flume 的安装配置与使用 (详细版)
参考网址:Flume 1.9用户手册中文版 — 可能是目前翻译最完整的版本了 1,上传安装包 安装包链接:文件下载-奶牛快传 Download |CowTransfer 口令:x8bhcg 1,切换盘符到安装目录 cd /opt/moudles 解压文件…...
智慧城市智慧城市项目方案-大数据平台建设技术方案(原件Word)
第1章 总体说明 1.1 建设背景 1.2 建设目标 1.3 项目建设主要内容 1.4 设计原则 第2章 对项目的理解 2.1 现状分析 2.2 业务需求分析 2.3 功能需求分析 第3章 大数据平台建设方案 3.1 大数据平台总体设计 3.2 大数据平台功能设计 3.3 平台应用 第4章 政策标准保障…...
Cadence IC617工艺库安装避坑指南:从CDB转OA到解决analoglib丢失,手把手搞定
Cadence IC617工艺库安装全流程解析:从环境配置到疑难排错 第一次打开Cadence IC617的Library Manager却找不到analoglib基础库?明明按照教程操作却卡在CDB转OA的环节?这些问题往往源于对Cadence环境架构的理解偏差。本文将带您深入理解Caden…...
Excel VBA编程实例(150例):助你轻松掌握办公自动化利器
Excel VBA编程实例(150例):助你轻松掌握办公自动化利器 【下载地址】ExcelVBA编程实例150例资源下载 本仓库提供了一个名为“Excel VBA编程实例(150例)”的资源文件下载。该资源文件包含了150个Excel VBA编程实例,旨在帮助用户通过实际案例学习和掌握Exc…...
在Windows 10上用CPU跑ChatGLM-6B:我的64G内存工作站搭建实录(含Anaconda配置避坑)
在Windows 10上仅用CPU运行ChatGLM-6B:64G内存工作站的完整部署指南 当大语言模型的热潮席卷而来,许多开发者和技术爱好者都渴望在本地运行这些强大的AI工具。然而,高端显卡的高昂价格让不少人望而却步。本文将分享如何在配备64G内存的Windo…...
让经典重生:D2DX如何让《暗黑破坏神2》在现代电脑上流畅运行
让经典重生:D2DX如何让《暗黑破坏神2》在现代电脑上流畅运行 【免费下载链接】d2dx D2DX is a complete solution to make Diablo II run well on modern PCs, with high fps and better resolutions. 项目地址: https://gitcode.com/gh_mirrors/d2/d2dx 还记…...
别再只会用MI了!深入对比PLV、MVL、MI:在Python中如何为你的EEG数据选择最佳跨频耦合算法
别再只会用MI了!深入对比PLV、MVL、MI:在Python中如何为你的EEG数据选择最佳跨频耦合算法 脑电信号分析中,跨频耦合(Cross-Frequency Coupling, CFC)已成为揭示神经活动协调机制的重要工具。面对PLV、MVL、MI这三种主流…...
别再瞎算了!用Excel 5分钟搞定18650锂电池续航与充电时间(附免费模板)
别再瞎算了!用Excel 5分钟搞定18650锂电池续航与充电时间(附免费模板) 每次DIY项目做到最后阶段,总会遇到那个灵魂拷问:"这电池到底能用多久?"上周我的智能花盆项目就差点翻车——按照理论值计算…...
Illustrator批量替换脚本终极指南:5分钟掌握高效设计自动化
Illustrator批量替换脚本终极指南:5分钟掌握高效设计自动化 【免费下载链接】illustrator-scripts Adobe Illustrator scripts 项目地址: https://gitcode.com/gh_mirrors/il/illustrator-scripts 你是否曾经在Adobe Illustrator中花费数小时手动替换数十个甚…...
iTop实战指南:3个关键挑战与ITSM平台架构优化策略
iTop实战指南:3个关键挑战与ITSM平台架构优化策略 【免费下载链接】iTop A simple, web based CMDB & IT Service Management tool 项目地址: https://gitcode.com/gh_mirrors/it/iTop 在数字化转型浪潮中,企业IT服务管理面临配置信息分散、…...
3分钟解决游戏操作冲突:Hitboxer SOCD工具让你的键盘操作职业化
3分钟解决游戏操作冲突:Hitboxer SOCD工具让你的键盘操作职业化 【免费下载链接】socd Key remapper for epic gamers 项目地址: https://gitcode.com/gh_mirrors/so/socd 你是否在玩《街头霸王6》时连招总是失败?或者在《Apex英雄》中急停转向时…...
从地图导航到网络路由:深入理解Floyd-Warshall算法的动态规划内核与空间优化技巧
从地图导航到网络路由:深入理解Floyd-Warshall算法的动态规划内核与空间优化技巧 当我们使用地图导航寻找两点间最快路线时,或在数据中心配置网络路由协议时,背后可能都在运行一个经典的图论算法——Floyd-Warshall。这个诞生于1962年的算法以…...
