好吧,闲话不说。想必用过Ubuntu的人,都使用过Ubuntu tweak吧,它有一个功能,就是调整文件类型与应用程序间关联的功能。比如一个rmvb文件,如果你系统有vlc和smplayer,默认情况下可能使用smplayer打开,可是,如果你想调整,即希望用vlc播放器来播放rmvb文件,而不是smplayer,你可以使用Ubuntu tweak的这个功能来实现。另外,你也可以直接点该rmvb文件,然后在右键属性那选择使用那个应用程序打开这种类型的文件。
不过,如果你不能使用Ubuntu tweak,同时,在你的“属性”中所能选择的程序列表中也找不到你希望打开这类文件的应用程序时,你应该如何是好呢?本人正是遇到这个问题,所以才发现了今天的这个方法(可能有人已经很早就知道,不过我实在是Google不到啊…… )
我的问题就是,我安装了 Arch,然后通过非pacman或yaourt的方式安装了FoxitReader,可是我希望双击PDF文件时,可以自动调用该程序来打开它。但是,右键中没有显示这个程序,也不能在“属性”的程序菜单中找到,Open With的程序列表或者命令中都无法使用(可以看这个帖子:viewtopic.php?f=155&t=290888)。唯一的办法就是首先打开FoxitReader程序,然后再去到目录下去寻找我需要打开的PDF文件。
好吧,问题就是这样。然后经过相当久的摸索,发现了两篇比较有参考价值的帖子:
http://www.linuxsir.org/bbs/showthread.php?t=134703
http://home.phpchina.com/space.php?uid= ... &id=182851
初看两篇帖子好像已经很好地指明了方向,可是按照他们的描述去操作后,仍然无法解决我的问题。
就这样放了两天,突然想起我的计算机上还有个Ubuntu10.04,于是直接去查看Ubuntu10.04下对应的文件,终于找到问题的所在——我的Arch的/usr/share/applications/下没有建立属于FoxitReader的desktop文件。
下面给出我完整地解决这个问题的办法:
1.首先在/usr/share/applications下建立FoxitReader.desktop文件,内容如下:
代码: 全选
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=FoxitReader
Type=Application
GenericName=Foxit PDF Reader
Comment=Read PDF Document
Exec=FoxitReader %F
StartupNotify=true
Icon=/usr/share/pixmaps/fx-icon.png
Terminal=false
Categories=GNOME;GTK;Application;Office;Viewer;
MimeType=application/pdf;application/x-bzpdf;application/x-gzpdf;
Comment[zh_CN]=Read PDF Document
GenericName[zh_CN]=Foxit PDF Reader
2.然后修改/usr/share/applications/defaults.list文件,找到这一行(可能等号后面的值不相同,具体视你安装了什么软件而定,因为我安装了的evince可以用来看pdf,所以系统产生了这个值):
代码: 全选
application/pdf=evince.desktop
代码: 全选
application/pdf=FoxitReader.desktop;evince.desktop
3.修改~/.local/share/applications/mimeapps.list文件,在[Added Associations]这个标题下添加刚才那行(如果有对应的application/pdf,则修改成上述步骤那行一样),即:
代码: 全选
[Added Associations]
.......
application/pdf=FoxitReader.desktop;evince.desktop
.......
4.然后就是见证奇迹的时候了——随便找个PDF文件,然后双击试试,哈哈,调用FoxitReader来打开啦!
而且“属性”的应用程序选择菜单上也出现了FoxitReader这个选项了,右键菜单中FoxitReader也排在了默认打开程序的位置上!
只能选择evince程序打开PDF文件: 终于能选择使用FoxitReader打开PDF文件啦: