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

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

相关推荐
飞行的俊哥4 小时前
Linux 内核学习 3b - 和copilot 讨论pci设备的物理地址在内核空间和用户空间映射到虚拟地址的区别
linux·驱动开发·copilot
hunter2062065 小时前
ubuntu向一个pc主机通过web发送数据,pc端通过工具直接查看收到的数据
linux·前端·ubuntu
不会飞的小龙人6 小时前
Docker Compose创建镜像服务
linux·运维·docker·容器·镜像
不会飞的小龙人6 小时前
Docker基础安装与使用
linux·运维·docker·容器
白粥行7 小时前
linux-ubuntu学习笔记碎记
linux·ubuntu
jerry-898 小时前
通过配置核查,CentOS操作系统当前无多余的、过期的账户;但CentOS操作系统存在共享账户r***t
linux
涛ing8 小时前
21. C语言 `typedef`:类型重命名
linux·c语言·开发语言·c++·vscode·算法·visual studio
0xfather9 小时前
在Debian系统中安装Debian(Linux版PE装机)
linux·服务器·debian
workingman_li9 小时前
centos虚拟机异常关闭,导致数据出现问题
linux·运维·centos
Fireworkitte9 小时前
linux环境变量配置文件区别 /etc/profile和~/.bash_profile
linux