就这么简单。我可以删除菜单项吗?
(我实际上想要它,因为当在 gnome-terminal 中启动自定义编辑时它会损坏,所以我编译了以前可以工作的 16.04 之前的旧扩展,但现在我有两个“在终端中打开”菜单项)。
答案1
从 Ubuntu 18.04 开始,负责“在终端中打开”上下文菜单选项的 Nautilus 扩展是名为 的单独软件包的一部分nautilus-extension-gnome-terminal
。此软件包不是gnome-terminal
所需依赖项的一部分(它只是推荐的一部分),因此可以通过运行以下命令安全地删除:
sudo apt remove nautilus-extension-gnome-terminal
如果有人感兴趣的话,扩展文件现在位于
/usr/lib/x86_64-linux-gnu/nautilus/extensions-3.0/libterminal-nautilus.so
而不是旧/usr/lib/nautilus/extensions-3.0/libterminal-nautilus.so
位置。考虑到它由包管理器管理,我不建议触碰它,但我觉得我应该包括这些信息以保证答案的完整性。
答案2
在较新版本的 Nautilus(例如 3.14(包含在 Ubuntu 15.04 中))中,在终端中打开命令是 gnome-terminal 包的一部分,它会安装 libterminal-nautilus 扩展(在
/usr/lib/nautilus/extensions-3.0/libterminal-nautilus.so
)。
可以使用 sudo 在终端中轻松删除它:
$ sudo mv -vi /usr/lib/nautilus/extensions-3.0/libterminal-nautilus.so{,.bak}
之后你需要退出 Nautilus 才能看到应用的更改:
$ nautilus -q
(nautilus:16373): GLib-GIO-CRITICAL **: g_dbus_interface_skeleton_unexport: assertion 'interface_->priv->connections != NULL' failed
(nautilus:16373): GLib-GIO-CRITICAL **: g_dbus_interface_skeleton_unexport: assertion 'interface_->priv->connections != NULL' failed
(nautilus:16373): Gtk-CRITICAL **: gtk_icon_theme_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed
(nautilus:16373): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(nautilus:16373): GLib-GObject-CRITICAL **: g_signal_connect_object: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
如果 Nautilus 没有通过这种方式成功退出(例如,您看到超时),您可以命令操作系统将其终止:
$ pkill -e nautilus
nautilus killed (pid 15962)
之后您可以重新启动 Nautilus,它将显示已删除的条目。
前:
后:
参考文献: