总之神器就是powertop。
首先,不要以为cpu的占用看起来非常低,就没人消耗你的电了,不是这样的。这在我开发fcitx的时候也有注意。比如说,实现一个等待操作,阻塞和轮询的差别不仅仅在性能上。即使每次300毫秒醒来一次看起来对于性能没有影响的情况,在使用电池时也会产生很明显的影响。
这次不幸knotify4中枪了。
在使用gsteamer后端的时候,knotify4不幸排在了powertop的前列。
似乎是这个bug,我换成vlc后端之后就ok了。
总之神器就是powertop。
首先,不要以为cpu的占用看起来非常低,就没人消耗你的电了,不是这样的。这在我开发fcitx的时候也有注意。比如说,实现一个等待操作,阻塞和轮询的差别不仅仅在性能上。即使每次300毫秒醒来一次看起来对于性能没有影响的情况,在使用电池时也会产生很明显的影响。
这次不幸knotify4中枪了。
在使用gsteamer后端的时候,knotify4不幸排在了powertop的前列。
似乎是这个bug,我换成vlc后端之后就ok了。
KDE4里面有一个很酷的功能,就是Get Hot New Stuff。对应使用的库是KNewStuff。
这个是什么库呢?具体来说就是KDE4里面和opendesktop集成的那个在线下载功能。这是一个能让你的程序迅速拥抱网络的方法。而使用方法也十分简单。
首先你需要一个.knsrc文件,下面是我在Fcitx里面用到的,分类名称是要和opendesktop上面的名称对应。Install Path也很自由,也有不少的描述方式,这里这个就是为了Fcitx写的路径。如果你需要基于.kde4的路径的话,最好使用TargetDir=。后面就是帮你解压罗。
[KNewStuff3] Categories=Fcitx Theme InstallPath=.config/fcitx/skin Uncompress=archive
如果光是简单使用实际上下面一点点代码就够了:
KNS3::DownloadDialog dialog("fcitx-skin.knsrc"); dialog.exec();
它已经替你完成了解压缩,记忆已经安装的内容等等功能。
当然CMakeLists.txt也需要对应的更改,首先需要多链接上
${KDE4_KNEWSTUFF3_LIBS}
其次需要把 .knsrc 安装到正确目录
install(FILES fcitx-skin.knsrc DESTINATION ${CONFIG_INSTALL_DIR})
P.S. 其实写代码的时间相比申请新分类的时间要短得多……
Further Reading:http://techbase.kde.org/Development/Tutorials/Collaboration/HotNewStuff/Introduction
……每每看见很多人折腾来折腾去,一个一个发行版用过去。话说装过几十个系统又如何……
到底这些系统之间的差异在哪,什么更合适自己,这才是更重要的吧。
用Linux的最高目标是不折腾。发行版和发行版之间能有多大差别?没有多大差别,也就是预制工具的多寡和有无而已。
装没装过LFS又如何?世界上的事情你总不可能全都尝试过。
装过那么多发行版,却还不知道“为什么它是这个样子?”,那又有什么意义?
适合自己的才是最好的。类似的还有用Android的最高目标就是不刷机。
我将不余遗力的推进Fcitx和KDE的集成。
要么Fcitx总会被遗忘在历史的尘埃中。
希望不会太迟。
希望能得到你们的帮助。
目前主要希望在扩展更多Fcitx的输入法上。