Firefox 使用 SMPlayer 打开配置文件目录

Firefox 使用 SMPlayer 打开配置文件目录

每次我去关于:支持并点击“打开目录”,Firefox 使用 SMPlayer 打开它,然后 mpv/mplayer 抱怨:

  Playing: /home/sebastien/.mozilla/firefox-esr/empty6/persdict.dat
Failed to recognize file format.
Exiting... (Errors when loading file)

所以我搜索了“smplayer”关于:偏好设置#应用程序但找不到它。

我也在关于:配置但也找不到它。

最后,我在 XDG mimes 类型定义中搜索了:

$ xdg-mime query filetype ~/.mozilla/firefox-esr/empty6/persdict.dat
text/plain
$ xdg-mime query default text/plain
kate.desktop
$ xdg-mime query filetype ~/
inode/directory
$ xdg-mime query default inode/directory
dolphin.desktop

编辑 0:添加一些xdg-open命令:

$ xdg-open ~/.mozilla/firefox-esr/empty6/persdict.dat
Fontconfig warning: ignoring C.UTF-8: not a valid language tag
$ pgrep -af /persdict.dat
32659 /usr/bin/kate -b /home/sebastien/.mozilla/firefox-esr/empty6/persdict.dat
$ xdg-open Documents
Fontconfig warning: ignoring C.UTF-8: not a valid language tag
$ pgrep -af /Documents
8437 /usr/bin/dolphin --icon system-file-manager -caption Dolphin /home/sebastien/Documents

编辑 1:inode/directory=输入~/.local/share/applications/mimeapps.list

$ grep inode/directory= ~/.local/share/applications/mimeapps.list
inode/directory=dolphin.desktop;smplayer.desktop;kde4-dolphin.desktop;vlc.desktop;caja-2.desktop;kde4-kfmclient_dir.desktop;kde4-gwenview.desktop;easytag.desktop;nemo.desktop;audacious-qt.desktop;Thunar-folder-handler.desktop;qmmp_cue.desktop;audacious.desktop;kde4-k4dirstat.desktop;pcmanfm.desktop;qmmp_dir.desktop;qmmp_enqueue.desktop;
inode/directory=dolphin.desktop

编辑 2:Firefox 找不到 Dolphin 应用程序启动器,因为它位于以下kde4子文件夹中/usr/share/applications/

$ locate /dolphin.desktop
/usr/share/applications/kde4/dolphin.desktop

解释:Firefox 无法找到dolphin.desktop/usr/share/applications/因此它使用文件inode/directory中的下一个 mimetype条目:~/.local/share/applications/mimeapps.listsmplayer.desktop

$ grep inode/directory= ~/.local/share/applications/mimeapps.list
inode/directory=dolphin.desktop;smplayer.desktop;kde4-dolphin.desktop;vlc.desktop;caja-2.desktop;kde4-kfmclient_dir.desktop;kde4-gwenview.desktop;easytag.desktop;nemo.desktop;audacious-qt.desktop;Thunar-folder-handler.desktop;qmmp_cue.desktop;audacious.desktop;kde4-k4dirstat.desktop;pcmanfm.desktop;qmmp_dir.desktop;qmmp_enqueue.desktop;
inode/directory=dolphin.desktop

解决方案:感谢ashvatthama 的回答:要解决这个问题,您可以输入以下命令:

xdg-mime default kde4-dolphin.desktop inode/directory

现在它工作正常:

$ pgrep -af /empty6
29083 dolphin --icon system-file-manager -caption Dolphin /home/sebastien/.mozilla/firefox-esr/empty6

我已经看到这个错误好几年了,我很想解决它。

你能帮助我吗 ?

答案1

$ grep inode/directory= ~/.local/share/applications/mimeapps.list
inode/directory=dolphin.desktop;smplayer.desktop;kde4-dolphin.desktop;vlc.desktop;caja-2.desktop;kde4-kfmclient_dir.desktop;kde4-gwenview.desktop;easytag.desktop;nemo.desktop;audacious-qt.desktop;Thunar-folder-handler.desktop;qmmp_cue.desktop;audacious.desktop;kde4-k4dirstat.desktop;pcmanfm.desktop;qmmp_dir.desktop;qmmp_enqueue.desktop;
inode/directory=dolphin.desktop

$ grep inode/directory= /usr/share/applications/mimeinfo.cache
inode/directory=Thunar-folder-handler.desktop;kde4-kid3.desktop;kde4-gwenview.desktop;kde4-dolphin.desktop;kde4-kfmclient_dir.desktop;nautilus.desktop;caja-folder-handler.desktop;audacious-qt.desktop;nautilus-folder-handler.desktop;pcmanfm.desktop;audacious.desktop;baobab.desktop;nemo.desktop;

因此您应该做的是编辑这两个文件,使得只有以inode/directorysay开头的行inode/directory=dolphin.desktop,没有其他内容。

编辑:子文件夹

根据XDG 桌面入口规范

桌面文件 ID

代表应用程序的每个桌面条目都由其桌面文件 ID 标识,该 ID 基于其文件名。

要确定桌面文件的 ID,请使其完整路径相对于安装桌面文件的 $XDG_DATA_DIRS 组件,删除“applications/”前缀,并将“/”转换为“-”。

例如 /usr/share/applications/foo/bar.desktop 具有桌面文件 ID foo-bar.desktop。

因此您不需要从dolphin.desktop到建立符号链接kde4/dolphin.desktop,您只需指定kde4-dolphin.desktopxdg-mime等即可。

相关内容