haulm 发表于 2010-11-23 09:18:51

修正 mime 的设置整理默认打开文件的程序

这个收获源于对 mednafen 的开始菜单设置,当我们把一个 desktop 文档指定给一个 mime 类型和相应的应用程序时,那么只要系统没有另外的设置声明就默认用 /usr/share/applications/××××.desktop 指定的程序来打开文件。
注意 desktop 文件中的 Categories= 这项如果不设置那么 KDE4 会自动归类给未知程序,这样多出来的一项未知菜单就和鱼刺一样让人不舒服。所以对已经在 /usr/share/mime/packages/××××.xml 中设置了 mime 类型的文件在 desktop 文件中需要指定对应程序的话,那么开始菜单肯定就要表现出来,如果不想显示在开始菜单中,在 desktop 文件中加入一行NoDisplay=true 即可。
那么如果我需要针对同一种文件类型,双击时和开始菜单时有两种打开指令方法时怎么办?其实可以写两个 desktop 文件,将其中一个 desktop 文件中写入 NoDisplay=true 即可。
以上说明的只是建立打开文件的程序,那如何修正和规范这些 desktop 的行为呢?打开 /usr/share/applications/defaults.list 就可以了解个大概了 ,但是这个文件列出来的全是 MGC 不相干的东西,所以我建议可以删除或修改,如何修改呢?
先测试右击某种文件->锤子按钮,对文件打开方式进行一些修改,然后运行
ls ~/.local/share/applications
kwrite ~/.local/share/applications/mimeapps.list
可以看到自己的修正全部在 ~/.local/share/applications 下面了
所以我可以把简单地把~/.local/share/applications下的 list 文件及 desktop 文件复制替换掉 /usr/share/applications/defaults.list 用来解决打开方式混乱的局面。

[ 本帖最后由 haulm 于 2010-11-24 07:59 编辑 ]

haulm 发表于 2010-11-23 09:41:43

给出一个默认程序的列表,不一定适合你的系统哦,不过乱套也不添乱,系统默认那个 defaults.list 更是乱套。
application/pdf=kde4-okularApplication_pdf.desktop;
application/vnd.rn-realmedia=magic-smplayer.desktop;
application/x-chm=kde4-okularApplication_chm.desktop;
application/x-gameboy-rom=mednafen-2.desktop;
application/x-wine-extension-ini=kde4-kwrite.desktop;
audio/midi=fedora-audacity.desktop;
audio/x-riff=magic-smplayer.desktop;
text/html=kompozer.desktop;mozilla-firefox.desktop;
text/plain=kde4-kwrite.desktop;


application/pdf=gimp.desktop;
application/x-chm=wine-extension-chm.desktop;
application/x-wine-extension-ini=wine-extension-ini.desktop;
text/html=kde4-kfmclient_html.desktop;wine-extension-html.desktop;wine-extension-htm.desktop;wine-extension-txt.desktop;kde4-kwrite.desktop;
text/plain=wine-extension-txt.desktop;


[ 本帖最后由 haulm 于 2010-11-24 07:58 编辑 ]

haulm 发表于 2010-11-23 10:01:16

修正一下 audacity.spec 中的错误,这个书写错误导致生成的desktop 文件名带了个 fedora 头缀,有些朋友会不爽的,这个是软件作者和在我之前那位打包者的错。。。 :mrgreen:
页: [1]
查看完整版本: 修正 mime 的设置整理默认打开文件的程序