快捷搜索:   nginx

linux 桌面之菜单与文件关联

一直都没有搞懂 linux 桌面菜单和关联的问题,这下研究了一下,写点小结。

接触 linux 桌面就会与菜单和文件关联扯上关系,那怎么手动修改呢。

菜单:
首先说菜单,菜单包含三个部分来完成。menu 文件用来把 desktop 文件集中起来形成菜单的样式。directory 文件用来描述菜单的目录层次结构,因为只有 desktop 文件的话就没有目录的层次结构了。

menu 文件的位置
全局:/etc/xdg/menus/
个人:~/.config/menus/

directory 文件的位置
全局:/usr/share/desktop-directories/
个人:~/.local/share/desktop-directories/

desktop 文件的位置
全局:/usr/share/applications/
个人:~/.local/share/applications/

例如 xfce4 的 menu 文件 /etc/xdg/menus/xfce-applications.menu
解释:
<DefaultAppDirs/> 说的就是到默认的路径查找desktop 文件,也就是上面列出的目录。
<DefaultDirectoryDirs/> 到默认的路径查找directory 文件
<Filename> 直接插入一个 desktop 文件条目
<Menuname>可以直接插入一个指定 name 的 menu
<Merge type="all"/> 合并所有其它 menu
<Category> 说的是一个类别,它会扫描所有的 desktop 文件(可以去看一个 desktop 文件,它一般有一个变量就指定了程序应该属于的分类)。把它包含在 <Include> 标识之间就是说在这里要插入所有 Category 是指定值的程序。

文件关联:
按照 http://forum.ubuntu.org.cn/search.php?search_id=egosearch [+] 的说法,

/etc/gnome/defaults.list 保存了全局的打开方式
~/.local/share/applications/defaults.list 保存了个人的打开方式
当两着不一致是,优先采用局部的个人设置。

/usr/share/applications/mimeinfo.cache
~/.local/share/applications/mimeinfo.cache
这两个分别是全局的和局部的打开方式缓存

defaults.list 不是每个桌面环境都有的, xfce4 就没有,所以就不可用。mimeinfo.cache 都就是缓存了,所以一段时间后会刷新,更改它也不起作用。事实上,需要修改的是 desktop 文件。

对于 opera 来说,opera.desktop 文件的最后几行如下
...
Exec=opera %u
Terminal=false
Categories=Application;Qt;Network;WebBrowser;X-Ximian-Main;X-Ximian-Toplevel
Icon=opera.png
MimeType=text/html;text/xml;application/xhtml+xml;application/x-mimearchive;application/xml;application/rss+xml;application/rdf+xml;image/svg+xml;image/gif;image/jpeg;image/png;image/x-bmp;image/x-xbm;application/mime
Comment=Web Browser
Type=Application

看它的 MimeType 属性,可以看到它带了太多的关联,一般我都会去掉它带的 image 关联。上面也可以看到 opera 是属于哪个 Categories,所以我们一般都可以在 Network 目录项中看到它。

顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论