AlmaLinux右键菜单(基于GNOME桌面)

文章目录

前言

在使用VSCode的过程中,AlmaLinux没能像Windows一样在右键菜单上显示打开方式,所以找了一下解决方案,罗列出来

前提说明

虽然说无论是media还是StackOverflow都推荐使用这条命令:

shell 复制代码
wget -qO- https://raw.githubusercontent.com/harry-cpp/code-nautilus/master/install.sh | bash

当然,如果你找的是年代比较久远的帖子,你看到的应该是

shell 复制代码
wget -qO- https://raw.githubusercontent.com/cra0zy/code-nautilus/master/install.sh | bash

这只是作者改了个名而已,使用第一个就好了。但是呢,我也查看了源码,对Ubuntu的支持较好,使用了apt-getdnf安装nautius-python,再将作者的Python脚本放入这个插件中,然后就能够出现Open in VSCode之类的字样。

实际上对于AlmaLinux的 9.2 9.2 9.2与 9.3 9.3 9.3来说都是适合的,因为AlmaLinux本来就有dnf。但是呢,我还是想直接利用现有的内容做一点修改。

在文件上右键

针对GNOME桌面,在右键菜单中考虑文件就需要在~/.local/share/applications/mimeapps.list中增加一个可选项,就像usr/share/applications/*.desktop中的文件一样给出一定的配置。

在这里我们仅针对html相关文件进行优化,于是增加配置:

text 复制代码
[Added Associations]
text/html=code.desktop
text/css=code.desktop
text/javascript=code.desktop

当然,如此配置的前提是你有一个code.desktop,即已安装VSCode标准版,而不是VSCodium。如果你选择安装了VSCodium,也没有太大关系,将code.desktop修改为codium.desktop就好了。

P.S.:我个人选择的是源码安装VSCodium,所以codium.desktop是自己写的。如果安装的是deb或者rpm等安装包,可以选择使用安装包自动生成的内容。

这样设置之后,当你在html相关的文件上点击右键的时候,就会出现Open With Visual Studio Code,并且还有VSCode的小logo

在文件夹上右键

借鉴:在Ubuntu的右键菜单中增加open-with-code

很可惜的是,目前还没有发现能够类似Windows一样在任意位置右键都能够打开文件夹的功能。所以我目前使用的是直接右键想要打开的文件夹,出现一个Scripts选项,然后选择其中的open in code选项。

如何实现呢?我们找到这个文件夹:~/.local/share/nautilus/scripts,在这里创建脚本文件open-in-code.sh,并写入如下内容:

shell 复制代码
#!/bin/bash
if [ -n "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" ]; then
    set $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
    if [ $# -eq 1 ]; then
        destination="$1"
    else
        zenity --error --title="Error - Open in Visual Studio Code" \
        --text="You can only select one file/directory."
        exit 1
    fi
else
    destination="`echo "$NAUTILUS_SCRIPT_CURRENT_URI" | sed 's/^file:\/\///'`"
fi

# It's only possible to go to local directories
if [ -n "`echo "$destination" | grep '^[a-zA-Z0-9]\+:'`" ]; then
    zenity --error --title="Error - Open in Visual Studio Code" \
    --text="Only local directories can be used."
    exit 1
fi

exec code "$destination"

然后赋予权限:

shell 复制代码
$ sudo chmod +x ~/.local/share/nautilus/scripts/open-in-code.sh

如果你现在手头没有什么事情的话,重启就能生效。

但如果你有点事情不能立即重启,就需要想办法重启nautilus了。当然等到事情结束了再重启也行。

生效后,我们就可以如图所示使用VSCode打开文件夹:

虽然可能与你想象的不太一样,但是能用。

相关推荐
Gaoithe15 分钟前
ubuntu 端口复用
linux·运维·ubuntu
德先生&赛先生1 小时前
Linux编程:1、文件编程
linux
程序猿小D1 小时前
第16节 Node.js 文件系统
linux·服务器·前端·node.js·编辑器·vim
多多*2 小时前
微服务网关SpringCloudGateway+SaToken鉴权
linux·开发语言·redis·python·sql·log4j·bootstrap
IT界小黑的对象4 小时前
virtualBox部署ubuntu22.04虚拟机 NAT+host only 宿主机ping不通虚拟机
linux·运维·服务器
SilentCodeY4 小时前
Ubuntu 系统通过防火墙管控 Docker 容器
linux·安全·ubuntu·系统防火墙
weixin_527550404 小时前
Linux 环境下高效视频切帧的实用指南
linux·运维·音视频
keson要进步4 小时前
CICD实战(二)-----gitlab的安装与配置
linux·运维·gitlab
藥瓿亭5 小时前
K8S认证|CKS题库+答案| 4. RBAC - RoleBinding
linux·运维·服务器·云原生·容器·kubernetes·cks
吐泡泡_5 小时前
Linux(线程控制)
linux