KDE下Qt程序字体问题
弄了几天的问题,终于算是部分解决了。
问题是这样的,在KDE下,并不是所有程序的字体都和KDE设置的是一样的,就连基于Qt的程序也是如此。之前下载了 Qt SDK 1.1.3,自带的Qt Creator 的字体看上去太蛋疼了,模糊,又不好看,怎么设置也没办法弄。
后来在网上找了很多方法,qtconfig 也试过,没有效果,有人质疑 Qt 程序的字体设置和 KDE 默认的冲突,但是也没有找到解决方法。
没办法,最后找到了一个设置微软雅黑字体的办法来试试,结果还是不错的。
在用户目录下有个字体设置文件, .fonts.conf ,就是修改这个文件来修改全局字体。如下所附带的就是一个用于微软雅黑显示所用的代码。其实不知道还有没有更好的办法,因为这样设置后Chrome里的字体也全部微软雅黑了。。。。。。 等学会了 这个文件的原理就能找到好方法了吧。。
================= 9/22 更新 ==============
新配置文件,完全去除windows宋体,建议不使用该字体。新配置文件为 /etc/fonts/local.conf 没有可以新建。
<?xml version='1.0'?> <fontconfig> <!-- # 设置 serif 衬线字体的读取顺序 --> <alias> <family>serif</family> <prefer> <family>Bitstream Vera Serif</family> <family>Microsoft YaHei</family> </prefer> </alias> <!-- # 设置 sans-serif 无衬线字体的读取顺序 --> <alias> <family>sans-serif</family> <prefer> <family>Bitstream Vera Sans</family> <family>Microsoft YaHei</family> </prefer> </alias> <!-- # 设置 monospace 等宽字体的读取顺序 --> <alias> <family>monospace</family> <prefer> <family>Bitstream Vera Sans Mono</family> <family>Microsoft YaHei</family> </prefer> </alias> <!-- # 全局字体的设置 --> <match target="font"> <test compare="contains" name="family"> <string>Tahoma</string> <string>verdana</string> <string>Arial</string> <string>Times New Roman</string> </test> <edit name="globaladvance"> <bool>false</bool> </edit> <edit name="spacing"> <int>0</int> </edit> <edit mode="assign" name="hinting"> <bool>true</bool> </edit> <edit mode="assign" name="autohint"> <bool>false</bool> </edit> <edit mode="assign" name="antialias"> <bool>true</bool> </edit> <edit mode="assign" name="hintstyle"> <const>hintfull</const> </edit> </match> <!-- # 单独设置微软雅黑字体的显示 --> <match target="font"> <test name="family" compare="contains"> <string>Microsoft YaHei</string> <string>微软雅黑</string> </test> <edit name="rgba" mode="assign"> <const>rgb</const> </edit> <edit name="hinting" mode="assign"> <bool>true</bool> </edit> <edit name="autohint" mode="assign"> <bool>false</bool> </edit> <edit name="antialias" mode="assign"> <bool>true</bool> </edit> <edit name="hintstyle" mode="assign" > <const>hintfull</const> </edit> </match> <!-- # 单独设置 Bitstream Vera Sans 字体的显示 --> <match target="font"> <test name="family" compare="contains"> <string>Bitstream Vera Sans</string> </test> <edit name="rgba" mode="assign"> <const>rgb</const> </edit> <edit name="hinting" mode="assign"> <bool>true</bool> </edit> <edit name="autohint" mode="assign"> <bool>false</bool> </edit> <edit name="antialias" mode="assign"> <bool>true</bool> </edit> <edit name="hintstyle" mode="assign" > <const>hintslight</const> </edit> </match> <!-- # 单独设置 Bitstream Vera Serif 字体的显示 --> <match target="font"> <test name="family" compare="contains"> <string>Bitstream Vera Serif</string> </test> <edit name="rgba" mode="assign"> <const>rgb</const> </edit> <edit name="hinting" mode="assign"> <bool>true</bool> </edit> <edit name="autohint" mode="assign"> <bool>false</bool> </edit> <edit name="antialias" mode="assign"> <bool>true</bool> </edit> <edit name="hintstyle" mode="assign" > <const>hintslight</const> </edit> </match> <!-- # 单独设置 Bitstream Vera Sans Mono 字体的显示 --> <match target="font"> <test name="family" compare="contains"> <string>Bitstream Vera Sans Mono</string> </test> <edit name="rgba" mode="assign"> <const>rgb</const> </edit> <edit name="hinting" mode="assign"> <bool>true</bool> </edit> <edit name="autohint" mode="assign"> <bool>false</bool> </edit> <edit name="antialias" mode="assign"> <bool>true</bool> </edit> <edit name="hintstyle" mode="assign" > <const>hintslight</const> </edit> </match> </fontconfig>
使用 Github 中
Git 是个好东西,至少给我的感觉是超级棒的。
最近刚看完了『Unix编程艺术』,感触良多,说实话,这本书值得所有程序猿去看的,虽然讲的是Unix哲学,其实我感觉,对于Windows下的程序猿来讲,这本书里讲了太多值得他们去学习的东西。
最近也开始学习Git了,也在自己的Github帐号上建了几个仓库。恰巧前两天弄出个脚本,用来KDE环境下命令行删除文件到回收站的,比起恐怖的RM命令来说,是个很好的用品。于是就建了一个shell 脚本的仓库,给move2trash脚本上添加了点注释,就提交上来了。不过话说,我的英文真的好烂好烂。。。。。。。
给个链接:
https://github.com/tisyang/shell-script/blob/master/kde-script/move2trash
目前来说,Git还是不大熟悉,继续努力吧。
KDE 命令行删除文件到回收站脚本
#!/bin/bash for fileName in "$@" do if [ ! -e $fileName ];then echo "**** $fileName NOT existed!" exit fi kioclient move "$fileName" trash:/ 2> /dev/null && echo "---- trashed: $fileName" done
经过测试,暂时没有什么问题,我的环境是 Debian 6.0 KDE。 这个脚本仅限KDE环境。
可以把这个脚本丢到 /usr/local/bin/ 下,作为常用命令使用,不要忘了赋予执行权限。
KDE 下的 Chrome 主题和滚动条扩展
一直觉得 Chrome 在 KDE 下过于丑陋了,于是 Google 了一番,找到了解决方法:
http://kde-look.org/content/show.php/?content=136314
但是安装方法我找了好久,手动貌似不好安装,于是我上传到了这个空间里,然后自己下载的时候就会提示安装了。(手动载入时候文件项里是灰色的,无法选择)
地址:
滚动条 http://tisyang.is-programmer.com/user_files/tisyang/Image/Oxychrome%20Scrollbars.crx
主题 http://tisyang.is-programmer.com/user_files/tisyang/Image/Oxychrome%20Theme.crx
如图: 和 KDE 的主题相当般配的说,注意右侧的滚动条,不再是GTK样式了。
Debian 6.0 'Squeeze' KDE 备忘
先贴几张配置之后的图看看。
文件管理器 Dolphin:
终端 Konsole:
'开始菜单' Kickoff:
系统设置:
////*************************************************************************************////
其实是在虚拟机里安装的,所以就没有驱动配置的烦恼,好在主机性能不错,打开bios里的虚拟化之后,Debian的系统运行速度很不错,可以说是相当的快速。
安装CD是从官网下载的 KDE 整合的,http://cdimage.debian.org/debian-cd/6.0.2.1/i386/iso-cd/
在目录的下方会有一个 debian-6.0.2.1-i386-kde-CD-1.iso
安装的过程中就不叙述了,应该没有什么大问题。
下面说一下安装后进入系统需要做的工作:
-
源。参考文章:Debian6 安装小记 http://www.bentutu.com/2011/05/debian6-install-note/
乱码问题没有出现,首先是解决源的问题:
打开 Konsole 终端,输入命令 su 进入 root 权限,需要输入安装时候设置的 root 密码。
更改 /etc/apt/sources.list 权限: chmod 666 /etc/apt/sources.list
然后使用KDE自带编辑器 Kwrite 编辑 /etc/apt/sources.list 文件, 先将所有未注释的行全部注释(头部加 '#'),然后添加源,这里使用 163 的源。 保存之后,再把文件权限更改回来: chmod 644 /etc/apt/sources.list, 然后 apt-get update 更新一下,这样就可以使用 apt-get 或者 aptitude 来安装软件了。
deb http://mirrors.163.com/debian squeeze main non-free contrib deb http://mirrors.163.com/debian squeeze-proposed-updates main contrib non-free deb http://mirrors.163.com/debian-security squeeze/updates main contrib non-free deb-src http://mirrors.163.com/debian squeeze main non-free contrib deb-src http://mirrors.163.com/debian squeeze-proposed-updates main contrib non-free deb-src http://mirrors.163.com/debian-security squeeze/updates main contrib non-free deb http://http.us.debian.org/debian squeeze main contrib non-free deb http://non-us.debian.org/debian-non-US squeeze/non-US main contrib non-free deb http://security.debian.org squeeze/updates main contrib non-free
- sudo。 依然参照 bentutu 的这文章,先安装 sudo : apt-get install sudo, chmod 644 /etc/sudoers 来增加写权限,在 root ALL=(ALL) ALL 语句下添加 username ALL=(ALL) ALL , username 为你当前非root账户用户名。 然后保存并修改权限:chmod 0440 /etc/sudoers 。
-
locales。参考 http://easwy.com/blog/archives/chinese_in_debian_lenny/ 。
终端命令输入 sudo dpkg-reconfigure locales 来配置locales。
跟文章中一样选择 locales :
en_US.ISO-8859-1en_US.UTF-8zh_CN.GB2312zh_CN.GB18030zh_CN.UTF-8zh_CN.GBKzh_TW.BIG5zh_TW.UTF-8设置为
默认 locale 设置为zh_CN.UTF-8 -
KDE 中文化。参考 http://www.linuxsir.org/bbs/showthread.php?p=1757986。这个时候在 KDE 的设置里,选择 语言为中文会没有什么效果,也无法添加中文支持,因为需要下载 中文语言支持文件。
在终端输入命令:sudo aptitude install kde-i18n-zhcn . 安装完成后就可以在 KDE 设置面板里 选择中文了。 -
man 中文包。 终端命令: sudo apt-get install manpages-zh
- 可选的 windows 字体'支持' 。 把 win 下的几个常用字体拷贝过来,使用 KDE 自带的字体安装器安装(需要root 密码),推荐一个 等宽字体 Droid Sans Mono,免费的字体,显示的也很漂亮。 安装字体后,在 KDE 的设置,外观中,调整所有字体,建议使用微软雅黑,因为看起来真的很好很强大,就如上面的图一样。
-
Chrome 的安装。下载 Chrome 的 Deb 包,然后在终端里 输入命令: sudo dpkg -i xxx.deb 来安装这个 deb 包,但是安装过程中会提示有依赖未安装,所以还需要一个命令:sudo apt-get -f install 来解决问题,然后
chrome 就可以用了。PS 最好更改下 Chrome 的字体。。。。 - 输入法。我使用的是 iBus, 安装命令为: sudo aptitude install ibus-pinyin。 KDE 貌似还没有用源生的输入法,不管 ibus 还是 scim 都是基于 Gtk 的,在kde下使用虽然没多少问题,但是那个界面实在是简陋。。。不过好像可以通过设置 gtk 主题来解决。
////**************************************************************//////
其实我开始是想用 openSUSE 的,但是那个安装包,太大了。然后就选择了 Debian,毕竟 Ubuntu 对 KDE 支持很不好。KDE 的确很好用,个人觉得界面什么的比 Gnome 要美观很多,至少风格是以明亮为主。还有一点就是 gnome 使用的是上下双'任务栏',个人觉得很占屏幕空间。。。