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打开文件夹:

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

相关推荐
hjjdebug1 小时前
linux 下 signal() 函数的用法,信号类型在哪里定义的?
linux·signal
其乐无涯1 小时前
服务器技术(一)--Linux基础入门
linux·运维·服务器
Diamond技术流1 小时前
从0开始学习Linux——网络配置
linux·运维·网络·学习·安全·centos
斑布斑布1 小时前
【linux学习2】linux基本命令行操作总结
linux·运维·服务器·学习
Spring_java_gg1 小时前
如何抵御 Linux 服务器黑客威胁和攻击
linux·服务器·网络·安全·web安全
✿ ༺ ོIT技术༻1 小时前
Linux:认识文件系统
linux·运维·服务器
会掉头发2 小时前
Linux进程通信之共享内存
linux·运维·共享内存·进程通信
我言秋日胜春朝★2 小时前
【Linux】冯诺依曼体系、再谈操作系统
linux·运维·服务器
饮啦冰美式2 小时前
22.04Ubuntu---ROS2使用rclcpp编写节点
linux·运维·ubuntu