如何选择打开包含文件夹时应使用哪个应用程序?

如何选择打开包含文件夹时应使用哪个应用程序?

我已经在这里和互联网上阅读了一些问题和答案,但我无法解决我的问题。我认为这与安装有关两个都 ubuntu-desktopkubuntu-desktop

我已经在笔记本电脑上安装了 Ubuntu 14.04另外kubuntu-desktop。我主要使用 KDE 会话,因此我希望所有默认应用程序都使用 KDE 的程序,至少在运行 KDE 会话时是这样。

目前,当我尝试通过 Firefox 打开文件夹时打开包含文件夹...Ubuntu 的文件应用程序已启动。我想看看 Dolphin。

我以为 Firefox 曾经xdg-open打开过外部文件,但事实似乎并非如此,因为:

xdg-open ~

Dolphin在 KDE 会话中打开。

总之:

你怎么明确指定点击时使用哪个应用程序打开包含文件夹...

注 1

我已经设置Dolphin为默认值:

$xdg-mime query default inode/directory
dolphin.desktop
$cat /usr/share/applications/defaults.list | grep inode
inode/directory=kde4/dolphin.desktop

另外,在系统偏好设置中,我已将其选为Dolphin默认文件管理器。

笔记2

我已经尝试在 KDE 会话中重新安装 Firefox(希望这会触发一些重新配置):

sudo apt-get remove firefox
sudo apt-get purge firefox
sudo apt-get install firefox

这并没有改变任何事情。

注 3:我注意到该mimeinfo.cache文件包含:

cat /usr/share/applications/mimeinfo.cache.backup | grep inode
inode/directory=nautilus-folder-handler.desktop;baobab.desktop;kde4-dolphin.desktop;kde4-gwenview.desktop;kde4-kdesvn.desktop;nautilus.desktop;

但是我尝试mv过(并重新启动),但没有任何变化。我尝试用以下代码替换上面的代码:

inode/directory=kde4-dolphin.desktop;kde4-gwenview.desktop;kde4-kdesvn.desktop;nautilus.desktop;

但什么都没改变。

答案1

我已经习惯kde-standardubuntu-desktop,但我的修复漏洞kde-full必须与和kubuntu-desktop一起运作ubuntu-desktop。请遵循以下步骤:

  1. 改名nautilus

    $ sudo mv /usr/bin/nautilus /usr/bin/nautilus.ubuntu
    
  2. 创建一个nautilus脚本,/usr/local/bin/内容如下:

    #!/bin/bash
    if [ '$KDE_FULL_SESSION' == 'true' ]; then
      if [ '${1}' == '--no-desktop' ]; then shift; fi
      /usr/bin/dolphin "$@"
    else
      /usr/bin/nautilus.ubuntu "$@"
    fi
    

就这样!也许你必须再一次终止之前的所有nautilus使用实例。killall nautilus

笔记:我喜欢 K 桌面环境,但我必须开发 GTK 程序:保持 Unity 桌面完整以便进行调试对我来说是一个自然的选择。我的脚本允许同时启动 KDE 上的 Dolphin 和 Unity 上的 Nautilus,而无需删除最后一个sudo apt-get purge nautilus,但如果 Nautilus deb 包收到更新,我必须手动重复此步骤。

相关内容