这是抱怨贴~~~当然也提供了解决方法~敬请期待.

这个帖子中我们介绍如何在ubuntu下安装quartus II 13.1,安装完毕功能正常,但是有个“小问题”就是如何在文件管理器中(这里是nautilus管理器)中由quartus II打开qpf文件,

而不是默认用文本打开,ubuntu12.04之前的做法是右键--“使用其它程序打开”,如果在列表中找不到该程序(这里就是Quartus II),那么还有最后一招就是浏览,但是12.04之后,这个功能被阉割了....结果折腾了好久还是不知道如何管理qpf后缀的文件到quartus II。

这种情况下,我就自然想到了使用Ubuntu-tweak的文件类型管理的功能,结果在他哪里面压根找不到qpf后缀的对应项,而且无法添加新的~~~

在搜索引擎上不断的搜索,终于让哥找到了,使用xdg-mime命令(系统自带的)。

xdg-mime - command line tool for querying information about file type
       handling and adding descriptions for new file types

我们使用man 命令查看xdg-mime的帮助的时候,到最后有提到如何“注册”一个新的类型到系统:

 xdg-mime install shinythings-shiny.xml

其中"shinythings-"是厂商名字,而"shiny"通常是后缀,而这个xml的内容通常是:

<?xml version="1.0"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
<mime-type type="text/x-shiny">
<comment>Shiny new file type</comment>
<glob pattern="*.shiny"/>
<glob pattern="*.shi"/>
</mime-type>
</mime-info>

虽然不太懂xml的语法,但是上面这段代码还是很容易修改的,其中在comment后面的一看就知道就是对这个类型的一个说明或者注释,随意,这里我们改成"Quartus II Project file type"

而<mime-type type="text/x-shiny">应该是对这个类型进行分类,由于qpf说到底是一个文本,所以仍然属于text类(我知道的还有application类),所以我们为qpf建立一个新的text子类(我是如此理解),叫做text/x-quartus,

然后后面两个<glob pattern>明显就是制定后缀,而且我们知道可以指定多个后缀,所以最后我们为qpf文件的xml内容是:

<?xml version="1.0"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
<mime-type type="text/x-quartus">
<comment>Quartus II Project file type</comment>
<glob pattern="*.qpf"/>
<glob pattern="*.qar"/>
</mime-type>
</mime-info>

这个xml的名字取名为:quartus-qml.xml

然后执行:

xdg-mime install quartus-qpf.xml

这样我们的就注册了新的类型了,你打开ubuntu-tweak之后你会发现qpf类型了。

接下来要做的事情就是制定这个新的mime类型(x-quartus)的默认打开程序:

 xdg-mime default  /usr/share/applications/quartus.desktop text/x-quartus

注意也就是在linux中mime类型适合xxx.desktop绑定在一起而不是直接和可执行文件绑定在一起.

好了,重启之后看下效果吧。

ok,上面我们已经做到了在文件管理器直接用quartusII打开qpf文件(也可以打开qar),但是qpf文件的图标仍然是文本的图标,这也许热爱美好有些完美癖的人受不了,所以接下来要说的就是如何修改

某个mime类型的图标。

依然使用xdg-mime命令,在man手册的最后提到了这个

xdg-icon-resource install --context text/x-quartus --size  /opt/altera/13.1/quartus/adm/quartusii.png text-x-quartus

ubuntu12.04之后该死的文件关联的更多相关文章

  1. FAQ&ubuntu12.04 gedit 打开 txt 文件乱码

    ubuntu12.04 gedit 打开 windows 分区中的 txt 文件乱码,是因为 ubuntu 和 windows 两个系统的编码不同.解决办法:终端里依次输入以下2 条命令即可: 代码: ...

  2. 在电脑上装ubuntu12.04系统,内核文件是那个?

    在电脑上装ubuntu12.04系统,我们能看到的是根文件系统,那么内核文件(zlmage)是那个? ???

  3. Ubuntu12.04 cuda5.5安装

    预处理步骤: 首先确认你的电脑装了一个可以运行CUDA程序的GPU. lspci | grep -i nvidia 另外要确认linux版本和gcc版本 具体参考链接:http://docs.nvid ...

  4. 安装Win7和Ubuntu12.04双系统后,意外删除Ubuntu12.04引导文件,出现error:unknown filesystem;grub rescue>错误的解决方案

    很久之前在Win7基础上安装了Ubuntu12.04系统,采用硬盘安装的方法.分了1个10G的硬盘分区F盘用于存放Ubuntu12.04的引导文件,其实完全可以制作一个Ubuntu12.04的U盘启动 ...

  5. Ubuntu12.04下删除文件夹内所有的.svn文件

    前段时间在公司里遇到一个问题,从svn上下载下来的文件含有.svn文件,如何删除当前目录下的所有.svn文件呢? 一个个手动删除显然不可能,太多了.其实在Ubuntu12.04下延伸至其他所搜的Lin ...

  6. Ubuntu12.04.4 Vmware 虚拟机安装总结

    Ubuntu12.04.4 Vmware 虚拟机安装总结 背景:近期准备入手一块树莓派(RaspberryPI),准备一下开发环境,可惜机器硬盘小,又舍不得格调Win7,所以仅仅好装虚拟机了.考虑到对 ...

  7. Win7&Ubuntu12.04 双系统引导问题

    周末的时候手贱,重装系统,导致原来的ubuntu12.04和win7双系统的引导不见了,所以在此进行一下说明,如何修复. 1. win7和ubuntu12.04双系统引导修复 问题描述:    在重装 ...

  8. ubuntu12.04 安装CS:APP Y86模拟器

    下的第一UBUNTU12.04下Y86模拟器的安装:(參考http://archive.cnblogs.com/a/1865627/ 作适当改动) 1.安装bison和flex词法分析工具 sudo ...

  9. RP4412开发板烧写Ubuntu12.04失败原因分析解决

    Ubuntu烧写失败可能是卡的问题 问:用RP4412开发板,卡烧了光盘中的fastboot失败,现在如何补救呢? 答:INAND格式化,利用usb来升级啊. 也有文档,看升级文档. 问:这个是怎么回 ...

随机推荐

  1. HTML插入SWF

    1.插入透明flash代码 <object classid="clsid27CDB6E-AE6D-11cf-96B8-444553540000" codebase=" ...

  2. hexo资源--theme等

    Hexo (https://github.com/hexojs/hexo) [3]hexo你的博客(http://ibruce.info/2013/11/22/hexo-your-blog/) [4] ...

  3. STP详解

    STP详解 Write From YangWj Wednesday, March 5, 2014 一. 生成树协议 STP的主要任务是阻止在第2层网络(网桥或交换机)产生网络环路,它警惕的监视着网络中 ...

  4. 【Unity3D实战】方块跑酷初级开发实战(一)

    [Unity3D实战]方块跑酷初级开发实战(一) 欢迎大家来到LDS的博客,今天开始我们讲解一下跑酷类游戏的基本操作,本文为原创,视频请观看[ http://www.mkcode.net/html/u ...

  5. hdu 1102 Constructing Roads Kruscal

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1102 题意:这道题实际上和hdu 1242 Rescue 非常相似,改变了输入方式之后, 本题实际上更 ...

  6. iOS Foundation框架 -4.NSDate类的简单用法

    NSDate为日期时间类对象,简单操作: 注意:直接NSLog输出NSDate对象,默认是以0时区为标准,因此会比北京时间少8小时 1.将Date格式转换为自定义格式的字符串格式 // 自定义Date ...

  7. 一款类似塔防类的保卫羊村游戏android源码

    一款类似塔防类的保卫羊村游戏源码,这个游戏很像我们平时玩的塔防游戏的,游戏的源码比较完整的,大家可以修改一下或者添加一些广告就可以上线到应用商店了,而且这个游戏目前已经上线国内的一些应用商店了,360 ...

  8. [windows phone开发]新生助手的开发过程与体会二

    上一讲咱们谈了新生助手主页的基本的设计,今天我们谈一谈关于展现实景地图时等动画的设计,即Storyboard的应用. 在Windows phone中,Storyboard类表示通过时间线控制动画,并为 ...

  9. javascript里面技巧整理

    web develop tools secrets: http://jinlong.github.io/blog/2013/08/29/devtoolsecrets/ 1.Date new Date( ...

  10. 解决iOS设备屏幕切换时页面造成的问题

    环境:IOS6~7 Safari 问题:iOS设备屏幕切换时可能会造成屏幕变大,出现左右间距等问题 解决方法: 头部加入<meta name = "viewport" con ...