FreeBSD下KDE桌面系统配置与使用
作为一个自由软件爱好者,出于系统性和稳定性考虑,选择FreeBSD做为我的基本系统,我钟意KDE桌面环境给我带来的方便和使用上的乐趣。在我看来FreeBSD+KDE是一个很好的学习平台,这个组合提供了很多界面友好、功能强大的工具软件可以让我把注意力集中在想要学习的内容上,而不是纠缠在某个具体的操作细节。
FreeBSD+KDE这个组合可以汇集大量的资料让我边学习边操作,我觉得这是学习FreeBSD非常好的一种方法——边学习边使用。而且相当重要的一点是我喜欢KDE给我带来的一致性美感,这和FreeBSD本身是一脉相承的。尤其目前FreeBSD桌面化在KDE与FreeBSD结合上研究探索的进展,诸如PC-BSD,更让人看到一种希望,那就是FreeBSD桌面系统可以和Windows一样的易用,进而可以成为一种选择,我想这对FreeBSD也是一件好事。
接触KDE时间越长,越觉得KDE的强大,使用KDE越多,越觉得自己掌握的东西太少。虽说可以通过个人努力,解决一些问题,但是学习中更多的体会是别人的点滴经验可以让你的学习事半功倍,也正是出于这个出发点,弄了这篇文章,想法只有一个,就是与大伙一起学习、交流,一起努力对“FreeBSD环境下KDE桌面系统配置与使用”的经验与网络资源做一些力所能及的整理与汇总,减少一些重复劳动。真诚期待大伙参与,一起共享学习中的体会和使用上的经验!
主要范围是以下几个:
1、FreeBSD下KDE的安装
2、FreeBSD系统针对KDE的系统优化、配置
3、KDE的中文化配置
4、KDE软件介绍与使用配置 选择[Configure]->[Distributions]->[X.Org],如下图:
接下来会出现一个菜单让你选择所需要安装的X.Org的包,如下图所示,请进入每一个选项里选取ALL.
接着选择Exit回到选择安装来源.您可以选择CD/DVD为安装本源,放入第一张CD即可开始安装.
安装KDE:
leo# sysinstall
选择[Configure]->[Packages]->[kde],选择kde-3.5.1如下图:
选择OK,然后Install会有提示要求您放第二张光盘.这里需要等比较长的时间.安装完就退出.运行
xorgcfg –textmode
配置xorg
本机上所生成的/etc/X11/xorg.conf文件内容如下
leo# cat /etc/X11/xorg.conf
Section “ServerLayout”
Identifier “Layout0″
Screen 0 “Screen0″ 0 0
InputDevice “Keyboard0″ “CoreKeyboard”
InputDevice “Mouse0″ “CorePointer”
EndSection
Section “Files”
EndSection
Section “Module”
Load “freetype”
# Load “xtt”
Load “extmod”
Load “glx”
Load “dri”
Load “dbe”
Load “record”
Load “xtrap”
Load “type1″
Load “speedo”
EndSection
Section “InputDevice”
Identifier “Mouse0″
Driver “mouse”
Option “Protocol” “Auto”
Option “Emulate3Buttons”
Option “Device” “/dev/sysmouse”
EndSection
Section “InputDevice”
Identifier “Keyboard0″
Driver “kbd”
Option “XkbModel” “pc101″
Option “XkbLayout” “us”
EndSection
Section “Monitor”
### Comment all HorizSync and VertSync values to use DDC:
Identifier “Monitor0″
### Comment all HorizSync and VertSync values to use DDC:
HorizSync 31.5 – 57.0
VertRefresh 50.0 – 90.0
EndSection
Section “Device”
Identifier “Card0″
Driver “vmware”
EndSection
Section “Screen”
Identifier “Screen0″
Device “Card0″
Monitor “Monitor0″
DefaultDepth 24
SubSection “Display”
Viewport 0 0
Depth 24
Modes “1024×768″ “800×600″
EndSubSection
EndSection在 /root 目录下 编辑 .xinitrc 文件:.(注:用edit 编辑一个 .xinitrc 文件)
加入下面行
exec /usr/local/bin/startkde
然后执行
startx
即可进入KDE
接着我们要将KDE 汉化,如果要在X-Window 中看到中文的菜单,必须先装中文字体kcfont(国乔字体)及arphicttf(文鼎字体),以及中文信息档(i18n)
# cd /usr/ports/chinese/kcfonts
# make install clean
# cd /usr/ports/chinese/arphicttf
# make install clean
# cd /usr/ports/chinese/kde3-i18n-zh_CN
# make install clean
# cd /usr/ports/chinese/koffice-i18n-zh_CN
# make install clean
接着编辑/etc/X11/xorg.conf
leo# vi /etc/X11/xorg.conf
在Section “Files”之间加入下面三行,以使X-Window能找到正确的字体路径,如下:
Section “Files”
FontPath “/usr/X11R6/lib/X11/fonts/TrueType”
FontPath “/usr/X11R6/lib/X11/fonts/local”
FontPath “/usr/X11R6/lib/X11/fonts/misc”
EndSection
更改保存后进入KDE。
找到Setting->Desktop Setting Wizard进行设置:
按Next一直到最后即可。如果您想要有Windows的字体,可以到将Win上面的字体COPY到下面的目录
#cd /usr/X11R6/lib/X11/fonts/TrueType
然后打开“控制中心”->外观和主题->字体,里面设置你所需要的字体和字体大小。我是把windows下面的simsun.ttc和tohoma.ttf拷贝到了FreeBSD上面,然后应用windows的字体,这样感觉比较舒服,毕竟是平时看惯了windows的字体了。看其它字体感觉怪怪的。
-rw-r–r– 1 root wheel 10507340 May 14 19:07 simsun.ttc
-rw-r–r– 1 root wheel 379856 May 14 19:07 tahoma.ttf
中文输入法安装:
cd /usr/ports/chinese/scim-tables/
make install
cat >> /etc/csh.cshrc << OK
setenv LANG zh_CN.eucCN
setenv LC_CTYPE zh_CN.eucCN
setenv XMODIFIERS @im=SCIM
setenv GTK_IM_MODULE scim
OK
另外在进入X之前需要执行(在~/.xinitrc中加入)
exec scim -d &
此行一定要放在exec /usr/local/bin/startkde之前
leo# cat /root/.xinitrc
exec scim -d &
exec /usr/local/bin/startkde
重新启动KDE就可以输入中文了。 概要:以KDE桌面环境为例,试析Fontconfig的运作机制
一、Fontconfig在桌面系统中的作用
KDE是类Unix系统中建立在X基础上的一个主流桌面环境,对用户来说,它提供了良好的图形界面和语言切换机制,用以满足来自不同国家、使用不同语言的用户的使用需求,这种机制简称“国际化”。主要包括界面文字的翻译,多种语言字体的管理、显示的支持以及输入法等等。这其中系统层面字体的管理和显示的支持直接关系到文字的显示效果,因此显得尤为重要。在KDE系统中,字体管理、显示的支持采用的是如下框架。
Fontconfig(字体配置)——–>Freetype(字库操作)————–>xft(字体渲染)
Fontconfig : 管理系统安装的字体,根据应用程序的字体配置,match(匹配)一种字体,填充match字体的各种属性。
Freetype : 以Fontconfig匹配到的字体为参数,根据应用程序需要读取相应的字库。
xft: 对需要显示的语言文字进行渲染
二、X系统中字体的管理
作为KDE底层支持的X,它使用字体服务器(xfs)对安装的字体进行管理,也称之为“核心字库管理系统”,基本配置原理是xfs使用可维护的字体安装目录和fonts.dir文件对字体进行操作。
X为之提供了一些工具来完成管理操作。诸如 :
mkfontdir,mkfontscale 用来生成安装字体的 fonts.dir和fonts.scale。
xlsfonts 用来显示安装的字体。
xfd 用来显示指定字库的信息。
xset 用来管理字体服务器。
对于FreeBSD,在安装了xorg 7.2并且X server运行的情况下,字体安装目录可用 xset q来查询
shell>xset q
上面显示的是X系统安装时定义的字体目录。在这些目录中,都有利用mkfontdir生成的fonts.dir(对于true type 字体需要使用mkfontscale 生成 fonts.scale,然后拷贝到fonts.dir中)。fonts.dir是个文本文件,里面保存的是所在目录的字体信息。关于这些信息的具体含义,可以参见X的man手册,这里不再赘述。
Font Path:
/usr/local/lib/X11/fonts/misc/,/usr/local/lib/X11/fonts/TTF/,
/usr/local/lib/X11/fonts/OTF,/usr/local/lib/X11/fonts/Type1/,
/usr/local/lib/X11/fonts/100dpi/,/usr/local/lib/X11/fonts/75dpi/,
/home/dbhrscom/.fonts
如果准备把一个字体安装到X系统中,并且使用Xfs进行管理,大致需要以下过程:
1、建立一个目录,并且把字库文件拷贝到这个目录下
2、运行mkfontdir或者mkfontscale,生成安装字库的fonts.dir文件。
3、运行“mkfontdir -e 系统编码目录” 生成encodings.dir 文件(可选)
4、运行 “xset +fp 字体目录” 或者 “xset fp+ 字体目录”,把字体目录添加到xfs的字体目录列表中。需要注意的是当字体目录没有fonts.dir这个文件时,这种添加字体目录操作会失败。
5、运行“xset rehash”进行更新,确保新添加的字体可用。
注意:作为一种X系统的约定,安装字体最方便的做法是把字体文件拷贝到“$HOME/.fonts/“目录下,这样省去了添加字体目录的操作,而且xset +fp 是针对当前会话有效,如果准备系统启动时有效,还要修改相关的配置文件。
三、Fontconfig的字体管理
简单的说Fontconfig是使用字体缓存的机制来进行字体管理的。这个Xfs有所不同。fontconfig提供fc-cache来建立这个缓存。
shell >fc-cache -v
fc-cache的运行原理是扫描fontconfig的配置文件中定义的字体目录,然后利用扫描的结果生成系统字体缓存。在这个fc-cache -v的运行结果中可以看到,它所扫描的路径已经涵盖了xfs所管理的系统字体路径。但这并不表示fontconfig和xfs的继承关系,fontconfig扫描这些目录,完全是因为在配置文件fonts.conf中有这样的定义!
/usr/local/lib/X11/fonts: skipping, 0 fonts, 12 dirs
/usr/local/lib/X11/fonts/100dpi: skipping, 398 fonts, 0 dirs
/usr/local/lib/X11/fonts/75dpi: skipping, 398 fonts, 0 dirs
/usr/local/lib/X11/fonts/Fonts: skipping, 4 fonts, 0 dirs
/usr/local/lib/X11/fonts/OTF: skipping, 23 fonts, 0 dirs
/usr/local/lib/X11/fonts/TTF: skipping, 13 fonts, 0 dirs
/usr/local/lib/X11/fonts/Type1: skipping, 29 fonts, 0 dirs
/usr/local/lib/X11/fonts/bitstream-vera: skipping, 10 fonts, 0 dirs
/usr/local/lib/X11/fonts/cyrillic: skipping, 0 fonts, 0 dirs
/usr/local/lib/X11/fonts/encodings: skipping, 0 fonts, 1 dirs
/usr/local/lib/X11/fonts/encodings/large: skipping, 0 fonts, 0 dirs
/usr/local/lib/X11/fonts/local: skipping, 0 fonts, 0 dirs
/usr/local/lib/X11/fonts/misc: skipping, 55 fonts, 0 dirs
/usr/local/lib/X11/fonts/util: skipping, 0 fonts, 0 dirs
/home/dbhrscom/.fonts: skipping, 0 fonts, 0 dirs
/var/db/fontconfig: not cleaning unwritable cache directory
/home/dbhrscom/.fontconfig: cleaning cache directory
fc-cache: succeeded
<!– Font directory list –>
fc-cache所作的扫描都是基于以上的<dir></dir>定义。
<dir>/usr/local/lib/X11/fonts</dir>
<dir>~/.fonts</dir>
<!– Font cache directory list –>
<cachedir>/var/db/fontconfig</cachedir>
<cachedir>~/.fontconfig</cachedir>
这个配置文件在fontconfig最新版本中,默认放在下面的目录中
/usr/local/etc/fonts/
而生成的字体缓存按照系统和当前用户,分别存放到
/var/db/fontconfig
~/.fontconfig
这两个目录中,诸如下面所看到的
0c3f6abf7a2705d2e8570f7f70e9302d-x86.cache-2
1e99991e6eeb0b3e05d4185c886f4b19-x86.cache-2
2550ddc31d0b62d94bc27b0fea358aba-x86.cache-2
55cbb48b13195d29d336fd465f155e7b-x86.cache-2
75ff5e8ddb5aa19e5f229f72d89c73db-x86.cache-2
.cache-2 就是fc-cache的运行记号,fontconfig通过这个缓存来管理系统安装的字体,也因为这种机制在系统中安装字体变得非常简单,只要把字体文件放到fonts.conf定义的目录中,然后运行一下fc-cache。
甚至fc-cache一下也不需要,因为在fonts.conf中定义了刷新时间:
<!–
Rescan configuration every 30 seconds when FcFontSetList is called
–>
<rescan>
<int>30</int>
</rescan>
由此看出,fontconfig和xfs相比,fontconfig提供了更加灵活的字体管理机制,目前系统中保持xfs和fontconfig并行工作的理由,只能是为必须使用xfs机制的程序提供一种支援。而作为KDE,它使用的就是fontconfig进行字体管理。举例来说,KDE的控制中心有个“字体安装”模块,通过分析可知它进行字体安装的原理就是自定义一个安装路径,放到fontconfig的配置文件中,然后把字体拷贝到自定义的目录。 四、Fontconfig配置文件的结构
在2.4.2以后的版本中,Fonfconfig的配置文件采用了模块化的结构。配置文件由以下文件组成
/usr/local/etc/fonts/fonts.conf
/usr/local/etc/fonts/conf.avail/*.conf
/usr/local/etc/fonts/conf.d/*.conf
/usr/local/etc/fonts/conf.d/ 目录下的文件大多数是 conf.avail/ 目录下的连接,大致是如下这些:
20-fix-globaladvance.conf
20-lohit-gujarati.conf
20-unhint-small-vera.conf
30-amt-aliases.conf
30-urw-aliases.conf
40-generic.conf
49-sansserif.conf
50-user.conf
51-local.conf
60-latin.conf
65-fonts-persian.conf
65-nonlatin.conf
69-unifont.conf
80-delicious.conf
90-synthetic.conf
前面的数字用来控制执行的先后顺序,从名称上就可以看出,每个.conf文件都有针对性的字体特性进行处理。
而实现这种模块化,所借助的就是 /usr/local/etc/fonts/fonts.conf 文件。
<!–
Load local system customization file
–>
<include ignore_missing=”yes”>conf.d</include>
分析/usr/local/etc/fonts/conf.d 目录下的文件,并通过打开Fontconfig的调试功能,可知这些配置文件的执行顺序:
Loading config file /usr/local/etc/fonts/fonts.conf
Scanning config dir /usr/local/etc/fonts/conf.d
Loading config file /usr/local/etc/fonts/conf.d/20-fix-globaladvance.conf
Loading config file /usr/local/etc/fonts/conf.d/20-lohit-gujarati.conf
Loading config file /usr/local/etc/fonts/conf.d/20-unhint-small-vera.conf
Loading config file /usr/local/etc/fonts/conf.d/30-amt-aliases.conf
Loading config file /usr/local/etc/fonts/conf.d/30-urw-aliases.conf
Loading config file /usr/local/etc/fonts/conf.d/40-generic.conf
Loading config file /usr/local/etc/fonts/conf.d/49-sansserif.conf
Loading config file /usr/local/etc/fonts/conf.d/50-user.conf
Loading config file /home/dbhrscom/.fonts.conf
Loading config file /usr/local/etc/fonts/conf.d/51-local.conf
Loading config file /usr/local/etc/fonts/conf.d/60-latin.conf
Loading config file /usr/local/etc/fonts/conf.d/65-fonts-persian.conf
Loading config file /usr/local/etc/fonts/conf.d/65-nonlatin.conf
Loading config file /usr/local/etc/fonts/conf.d/69-unifont.conf
Loading config file /usr/local/etc/fonts/conf.d/80-delicious.conf
Loading config file /usr/local/etc/fonts/conf.d/90-synthetic.conf
五、Fontconfig所提供的调试功能
Fontconfig提供了调制功能,用来诊断字体配置运行时的信息,使用调制功能非常简单,在KDE环境下用模拟终端定义 FC_DEBUG 这个环境变量的值即可:
例如:csh环境下
setenv FC_DEBUG 1
在模拟终端中启动相应的程序,就可以查看设定的调试信息。可以按照下面Fontconfig用户手册介绍的说明设定具体显示的调试信息。
MATCH 1 Brief information about font matching 字体匹配信息
MATCHV 2 Extensive font matching information
EDIT 4 Monitor match/test/edit execution 显示match/test/edit信息
FONTSET 8 Track loading of font information at startup
CACHE 16 Watch cache files being written
CACHEV 32 Extensive cache file writing information
PARSE 64 (no longer in use)
SCAN 128 Watch font files being scanned to build caches
SCANV 256 Verbose font file scanning information
MEMORY 512 Monitor fontconfig memory usage
CONFIG 1024 Monitor which config files are loaded 显示配置文件装载信息
LANGSET 2048 Dump char sets used to construct lang values
OBJTYPES 4096 Display message when value typechecks fail 六、Fontconfig的字体匹配
Fontconfig的字体匹配模块是它的功能核心,设计的目标是确保根据“使用Fontconfig的应用程序所题出来的字体要求”能在系统安装的字体中找到一个匹配的字体,并为后续的字体渲染、字体显示填充一些用户可以控制的属性。字体匹配的原理简单的说就是“字体之间属性距离的计算”,通过比较应用程序所要求的字体与Fontconfig所管理的字体一些属性之间的距离,来确保可以找到一个字体,理想的字体匹配是“完全满足应用程序的要求”,但一般情况下,因为受系统中安装字体种类的限制、用户审美取向的不同以及Fontconfig配置文件的具体设定等因素的影响,只能依据“综合距离最小”的原则匹配到一种字体。然后根据Fontconfig配置文件中对具体字体的设定,以及后续字体渲染的一些要求,最终“加工”出一个“具有完整属性”的字体。
在整个字体匹配过程中,Fontconfig提供了一种非常灵活的控制字体匹配的机制,它通过可定制的的配置文件(fonts.conf)生成可对字体匹配造成影响的匹配规则,利用这些规则,用户可以替换字体,可以对可用字体进行排序,可以针对不同语言环境进行优化调整,甚至可以针对一种字体的不同大小,进行字体渲染的微调,这一切都可以利用Fontconfig的配置文件来调整,这一切也都是利用配置文件来控制,而这正符合Unix应用哲学中的“高可定制性”,因此想要掌握桌面系统的字体匹配,首先必须要了解掌握的就是Fontconfig的配置文件—fonts.conf和conf.d下的所有配置文件。
在第一部分已经提到了目前fonts.conf的一种发展趋势,就是模快化设计,但是fontconfig系统运行时,是加载全部的配置文件。
为了更深层次的对fontconfig的字体匹配机制进行分析,先明确几个概念性的东西:
(一)字体的属性
在fontconfig中定义了35种字体属性,在fontconfig的用户手册中有所介绍,现摘录如下:
每个属性都有一个或多个值,用来描述字体的某方面特征。如 lang,它保存的是字体所支持的语言字符串,里面可以有多个值, 如 hinting ,它保存的是该字体在显示时是否进行hint渲染,值只能是 true 或 fasle。
从属性的功用上分,大致可以分为三类:
1、为后续的字体渲染所定义,fontconfig可以对这些属性进行设定,影响后续的字体显示动作。如:antialias、hinting、hintstyle、rgba 等等
2、为字体匹配所定义,这些属性用来完成字体匹配的运算。如:family、style 、lang
3、为标识字体所定义,这部分属性一般不参与字体匹配与字体渲染的操作,但用来标识字体的信息。如 fontversion。
一个具体的例子:simsun的字体属性,部分属性是根据fontconfig的配置文件生成。
family: “SimSun”(s) :字体家族名
familylang: “en”(s) :家族语言
style: “Regular”(s) :正常风格
stylelang: “en”(s) :语言风格
slant: 0(i)(s) :倾斜
weight: 80(i)(s) :一些字体参数
width: 100(i)(s)
size: 12(f)(s)
pixelsize: 12.5(f)(s)
spacing: 90(i)(s)
foundry: “unknown”(s) :出品公司
antialias: FcTrue(w) :可antialias
hintstyle: 2(i)(w) :hint风格
hinting: FcTrue(w) :可hinting
verticallayout: FcFalse(s) :纵向输出
autohint: FcFalse(s) :不antohint
globaladvance: FcTrue(s) :高级控制可用
file: “/usr/local/lib/X11/fonts/Fonts/simsun.ttc”(s) :字体位置
index: 0(i)(s) :索引
outline: FcTrue(s) :可outline
scalable: FcTrue(s) :可scalable
dpi: 75(f)(s) :DPI值
rgba: 5(i)(w) :rgba方式
scale: 1(f)(s) :缩放方式
charset: 0000: 00000000 ffffffff ffffffff 7fffffff 00000000 ffffffff ffffffff ffffffff (这里删去很多)
lang: aa|ast|ay|bg|bi|br|ch|co|da|de|en|es|eu|fj|fo|fr|fur|fy|gd|gl|gv|ho|ia|id|ie|io|is|it|kum|lb|mg|nb|nds|nl|nn|
no|oc|om|os|pt|rm|ru|sel|sma|smj|so|sq|sv|sw|tn|ts|vo|wa|xh|yap|zh-cn|zh-sg|zu(s) :支持zh-cn语言
fontversion: 131072(i)(s) :字体版本
capability: “otlayout:hani”(s) :兼容
fontformat: “TrueType”(s) :字体格式
embeddedbitmap: FcTrue(s) :位图字体增强
decorative: FcFalse(s) :可修饰
(二)、pattern
pattern是fontconfig字体匹配的核心数据结构,所有的匹配操作都是围绕着pattern来完成的,pattern可以理解成为一个在流水线上制造的汽车,汽车的用户需求相当于应用程序提出的字体要求,可以非常简单,比如sans serif字体,大小12号,这也是pattern的最初形态 ,Fontconfig相当于制造流水线,根据配置文件中所定义的匹配规则,对这个最初的pattern进行加工,随着工序的逐步完成,pattern变得有模有样,无论是功能还是外形,都按照匹配规则的定义进行了设定,最终当fontconfig的所有流水作业完成时,pattern已经被武装成了一种具体的字体 ,并添加了控制后续字体显示,渲染的属性参数。
这就是pattern,它最终表示的是一种设置周全的字体,满足应用程序,或者说用户的要求。
(三)、匹配规则
就是Fontconfig的配置文件中定义的那些规则,在进行字体匹配时fonts.conf和conf.d目录下的配置文件都要被fontconfig读取、分析,然后形成匹配规则列表,匹配规则可以分为三类
1、与pattern相关,这些规则用于进行字体匹配运算,最终可以得到一种字体
这种类型的规则在配置文件中大都以下面的形式进行定义:
<match target=”pattern”>
<test qual=”any” name=”family”>
<string>sans</string>
</test>
<edit name=”family” mode=”assign”>
<string>sans-serif</string>
</edit>
</match>
简单说明一下:这个语句块的作用是,对pattern进行匹配操作,当pattern中的family属性中包含有sans时,匹配成功,执行下面的操作 —— 把pattern 中 family 属性中的 sans字体 替换成 sans-serif 字体。这里不对语句快中的具体参数进行解释,可以参看fontconfig的用户手册。
2、与font相关,这些规则主要是对匹配得到的字体进行进一步调整,满足用户的需求
<match target=”font”>
<test name=”family”>
<string>SimSun</string>
</test>
<edit name=”hinting”>
<bool>false</bool>
</edit>
</match>
简单说明一下:这个语句块的作用是,对匹配到的字体pattern进行字体匹配,如果这个字体pattern中的family属性是SimSun,则对这个匹配到的pattern做如下修改:把hinting的属性设定成false ,整个语句块的作用就是把simsun的hinting设定成假,如果匹配到的字体是simsun,那么这个设定就生效。如果没有匹配到simsun这个字体,这个匹配操作无效。
3、与字体渲染属性相关,这些规则主要是按照用户的需求,对字体的显示作一些定义。
<match target=”font” >
<edit mode=”assign” name=”antialias” >
<bool>true</bool>
</edit>
</match>
简单说明一下:这个语句块是对fontconfig匹配到的字体,无论是什么字体,都修改antialias属性为true,这个语句块摘自用户目录下的.fonts.conf文件,由KDE控制中心的字体配置中进行设定。1、安装xorg kde,以freebsd 6-stable为例,在保证网络联通的情况下,可用下面命令安装:
pkg_add -r xorg ;安装xorg
pkg_add -r kde ;安装kde
2、运行xorgcfg命令,在用户目录下生成 xorg.conf.new
cp ~/xorg.conf.new /etc/X11/xorg.conf
3、在用户目录下生成 .xinitrc 文件,文件的内容是
exec startkde
可以用如下命令生成 .xinitrc 文件
echo “exec startkde”>~/.xinitrc
4、运行startx命令,如果xorg.conf和.xinitrc文件正确,应该可以进入kde了
5、安装中文字体和输入法,可以输入和显示中文。推荐的方法是使用ports
cd /usr/ports/chinese/auto-cn-i10n
make install ;安装
make clean ;清除编译时产生的文件
6、安装kde中文包,界面中文化
pkg_add -r kde3-i18n-zh_CN
7、设置区域:
K菜单–>设置->区域和辅助功能->国家地区以及语言->添加语言->选择“简体中文”,并放到最上面,确定之后,可以显示中文界面
8、调整用户的locale,主要是设置LANG变量,以startx方式启动kde为例:
如果shell是csh,在用户目录下找到 .cshrc 任意位置填入 setenv LANG zh_CN.UTF-8
以上是建立kde中文桌面的大致过程,基本上就可以实现KDE桌面环境的中文化了。以前用Fctix就可以工作,今天装了Scim进入系统那个键盘标为灰色的,按Ctrl+space也不管用。
最终解决方法:重装了一下Scim
如果shell是sh,在用户目录下找到.profile 任意位置输入 export LANG=zh_CN.UTF-8
环境变量在.profile中设置一下。就行了。
.profile
代码:
export LANG=zh_CN.eucCN
export LC_ALL=zh_CN.eucCN
export LC_CTYPE=zh_CN.eucCN
.xinitrc
代码:
export XIM=”scim”
export XMODIFIERS=”@im=scim”
export GTK_IM_MODULE=”scim”
cat .xinitrc
export LANG=”zh_CN.eucCN”
export LC_CTYPE=”zh_CN.eucCN”
export LC_ALL=”zh_CN.eucCN”
export XMODIFIERS=’@im=scim’
exec scim -d&
exec gnome-session
pkg_info |grep scim
scim-1.4.4_2 Smart Common Input Method platform
scim-table-imengine-0.5.6_2 SCIM table based input method engine
zh-scim-tables-0.5.4_3 SCIM table based Chinese input methods
分析:
出问题有可能是升级了内核后需要重装一下Scim从windows转到KDE来的,可能一开始会不习惯,想找几个在windows里用的比较的顺手的软件。这里就推荐几个:
一、“我的电脑”->“系统”
从windows过来,可能要习惯性地找“我的电脑”,我的电脑里,基本上可以找到系统的一切。在KDE的世界里,这个变了名字,叫做“系统”了,当然,位置还没变,还在桌面的左上角。
当然,如果你愿意,完全可以把它改名为“我的电脑”,但是,改名的时候注意哦,在windows中,单击名称可以改名,但是在KDE中,单击是打开程序。
当然这个鼠标行为是可以改掉的,KDE中还有很多在windows中不可能改的东西都可以改。(这是后话,先知道有这么回事就行了)
进了“我的电脑”了,咦?C盘和D盘到哪儿去了?对不起,这是Unix,没有C盘和D盘的概念,在Unix中,所有的文件,都是统一在根(root,用“/”表示,斜杠,不是DOS里的把斜杠)目录下面的,不论你有几个硬盘,所有分区都在根(/)下面。而在根(/)下面,有几个目录是必须有的,你自己想建目录,最好别在根下面建,到/home里建最好,因为那个是你自己的地盘。
注意看两个地方:菜单栏和下半部分左边。菜单栏可以折行。左边部分显示了本机常用的资源,从网络到设备。在Unix中,还要有个概念,就是所有的设备也是一个文件,所以,没有“系统设备”那一个说明,看系统中有什么设备,到/dev/里面看一下就行了。可能一开始看懂,接触多了就能看懂一部分,到看懂所有的设备文件,就成为“大师”了。^_^
在最右边,还有一个kde的图标,这个表示开启一个新的窗口。
其它的方面,都和windows下差不多,注意默认情况下,单击是打开程序,而不是选择。
二、”记事本”->“kedit“,“UltraEdit”->“Kate”
进了系统,也许第一件事就是打几个字过过瘾了。在windows中,最简单的是“记事本”,在KDE中,则是“K菜单”->“实用工具”->“编辑器”->“Kedit 简单文本编辑器”。
这个编辑器,只有最简单的功能。基本上和“记事本”差不多。想要点高级点的功能,那就看一下“K菜单”->“实用工具”->“编辑器”->“Kate 高级文本编辑器”,这个功能多了很多,但是,不要把它等同于”写字板”。“写字板”可以进行简单的文字编辑,改一改字体、颜色、大小什么的。这个“Kate”可不能,想要实现那个功能,去看“koffice”。这个“Kate”是个编辑器,那么它编辑什么呢?最善长的就是源程序,你写的C、JAVA、PERL等程序,都可以在这儿写,说白了,就相当于“UltraEdit”之类的工具,但是不具备16进制编辑。
既然提到16进制编辑,那么KDE下用什么来实现16进制编辑呢?在“K菜单”->“实用工具”->文件->“KHexEdit”,这个功能比“UltraEdit”还要强大哦!(当然,某些方面,^_^)
对了,在Unix里面,你可能要面对一个很严肃的问题:中文编码。也许你意识不到在Windows里还有编码的事,但是在Unix里面,就不行了,如果编码不对,将显示乱码。“Kate”就可以让你切换字符编码。设置的地方在”工具里面“。
三、“开始菜单”->“K菜单”及“任务栏”
进来半天了,还没仔细看一下“开始菜单”和“任务栏”吧。如果你用习惯了“WindowsXP”的“开始菜单”,你可能又觉得“K菜单”不习惯了。“K菜单”和Windows2000的开始菜单差不多,功能也相似,感觉就像是只换了一个图标而已。
“任务栏”也差不多,只有两个地方不太一样:第一个就是多了“一、二、三、四”字样,第二个就是最右边多了个小小的箭头(不仔细看还看不到!)。
“一、二、三、四”表示是四个“虚拟桌面”,你最多可以设置到20个桌面,在每个桌面上可以运行不同的程序,每个桌面还可以单独命名,比如把它们命名成为“上网”、“打字”、“电影”、“程序”、“图片”……这样,在干大活的时候,就不至于在桌面上堆满乱七八糟的窗口了。
“任务栏”最右边,是一个小箭头,按一下,看下效果。怎么样?吃了一惊吧!“任务栏”没有了!看你怎么操作计算机!不过没关系,再点一下仅余的一点点小箭头,任务栏又回来了。
这个有什么用呢?搞过多媒体的都知道,干活的时候,经常嫌屏幕小了,多了这么一行屏幕空间,有很多时候也是非常有用的。“寸屏寸金”啊!
也许你觉得这个跟“自动隐藏”差不多,其实它也可以“自动隐藏”的,在“任务栏”的空白处或栏交界处“右击”->“配置面板”,打开看一下,肯定吓你一跳,这里面有很多Windows里不可以想像的选项,比如说把“任务栏”变短变窄,注意:可不是windows意义上的变窄哦!
多在里面逛逛吧!你会发现,KDE里,比Windows里更自由!
四、“画图”->“KolourPaint”,“Photoshop”->“Krita”
想画个图试试吗?“K菜单”->“图像”->“KolourPaint 绘图程序”。这个绘图程序应该比Windows里自带的“画图”功能更多一些。经常有人说,Windows的“画图”仅仅是初学者的学习之地,而”KolourPaint”则有一定的实用价值。按下“ctrl+M”(或菜单“图像”-“更多效果”),可以调出“更多效果”面板,这里,可以有“柔化”“亮度”“对比度”等简单的功能,如果不是进行大的修改,一般的图片都可以在这儿进行。
谈到图像,马上就想起PhotoShop来。Unix下面没有Photoshop(更正:这提法其实不对,因为Mac系统就是FreeBSD,但是普通意义上讲还可以说得通),想用Photoshop的强大功能怎么办呢?那么就试试krita吧,打开路径是:“K菜单”->“图像”->“Krita 绘图和图像编辑”,这个图像功能更强大一些,包括很多滤镜在内。由于本人不是图像狂热爱好者,所以也没法试用所有功能,但是,对于一般人来说,虽然跟不上 Photoshop,平时用应该足够了。具体用法,还是去看一下帮助吧,可能开始会不习惯。
原文链接:http://jswz.jiashanedu.net/wordpress/?p=7
这确实解决我的问题,谢谢!