我想在 nautilus 中使用 Vim 打开一个 (文本) 文件。这部分很简单:Right-Click -> Open With Vim
启动一个运行着 vim 的终端,文件已经打开。
当我关闭 vim 时,终端也会关闭。我希望终端保持打开状态,并将工作目录设置为文件所在的目录。
我确信有一个简单的方法可以实现这一点,即创建自定义 bash 脚本并将其添加到上下文菜单(或甚至作为Enter选择文件时的默认操作),但我不知道如何做。那么,如何做到这一点?
我使用的是 ubuntu 18.04,但我希望后续版本也类似。
答案1
也许不是你想要的,但是下面的脚本可以做你想做的事情,当作为Nautilus 脚本目录下~/.local/share/nautilus/scripts/
:
#!/bin/bash
file=$(echo "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" | head -1)
dir=$(dirname "$file")
##zenity --info --no-wrap --no-markup --title="DEBUG" --text="$file : $dir"
gnome-terminal -- /bin/bash -c "/bin/vim \"$file\" ; cd \"$dir\" ; exec /bin/bash"
用法:请将上述脚本内容作为新文件添加到目录下,并使用有意义的名称(例如VIM
)~/.local/share/nautilus/scripts/
。然后,使用鹦鹉螺,选择单个文本文件,右键单击并在弹出菜单中选择脚本→VIM。
__
免责声明:仅在 Ubuntu 21.10 下测试
如果您想将上述功能插入到vim.desktop
系统提供的文件中,您可以通过将此文件的内容复制到目录~/.local/share/applications/
并更改行以调用可基于我上面提供的脚本创建的自定义 shell 脚本来“本地化”此文件的内容(提示:用新脚本中的行替换我的脚本中Exec=vim %F
的行。)file=…
file="$1"