当前位置:Linux教程 - RedHat - 新手一次搞定RedHat8.0simsun字体的shell程序

新手一次搞定RedHat8.0simsun字体的shell程序

我根据翔羽的<完美的redhat8,,,>的文章,编了这个bash程序,我在这里不能上传,所以
把源文件剪贴拷贝到这里。你可以把#!/bin/bash直到reboot之间的内容拷贝到一个文件中,比如sm.sh
把他放到/usr/local/temp里面,chmod 755 sm.sh,让它可执行。
然后,把simsun.ttc, SimSun18030.ttc, tahoma.ttf, tahomabd.ttf四个文件
拷贝到上述目录中,执行这个脚本程序:./sm.sh
然后就重起动了,然后就能用simsun了。注意两点:要在刚用简体汉字装完,没作任何汉化情况下作;
要用root作。
小心!!!我没测试过!!!哪位好心大侠给测试一下噢:)再次向翔羽致敬致谢!
下面是程序:
#!/bin/bash
#
#change rh8 chinese fonts to simsun
#This is a GPL sript. The content comes form Xiang Yu. Thanks him.
#usage:
#1, install rh8 and select simplified chinese.
#2, make a temple directory in anywhere you prefer.
# for example /usr/local/temp
# copy ''where/it/has/the/windows_fonts/simsun.ttc'' and
#all of these fonts, simsun.ttc、SimSun18030.ttc、tahoma.ttf and tahomabd.ttf
# to this temp place /usr/local/temp
#3, copy this shell script into this directory.
#4, run it
#5, set the fonts to your most prefered ones in gnome, kde and xmms and others.

#first, put the fonts to the correct dir.
export CDIR=/usr/X11R6/lib/X11/fonts/TrueType
mkdir $CDIR

#copy the fonts to it
cp simsun.ttc $CDIR/simsun.ttf
cp SimSun18030.ttc $CDIR/SimSun18030.ttf
cp t* $CDIR/

#copy encodings
cp /usr/X11R6/lib/X11/fonts/encodings/encodings.dir $CDIR/

#make the fonts.dir
echo ''29
simsun.ttf -misc-fixed-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
SimSun18030.ttf -misc-SimSun18030-medium-r-normal--0-0-0-0-c-0-gb18030.2000-0
ai=0.3:SimSun18030.ttf -misc-SimSun18030-medium-i-normal--0-0-0-0-c-0-gb18030.2000-0
ds=y:SimSun18030.ttf -misc-SimSun18030-bold-r-normal--0-0-0-0-c-0-gb18030.2000-0
ds=y:ai=0.3:SimSun18030.ttf -misc-SimSun18030-bold-i-normal--0-0-0-0-c-0-gb18030.2000-0
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-c-0-gb2312.1980-0
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-c-0-gb2312.1980-0
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-c-0-gb2312.1980-0
tahoma.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-iso8859-1
ai=0.3:tahoma.ttf -misc-SimSun-medium-i-normal--0-0-0-0-p-0-iso8859-1
tahomabd.ttf -misc-SimSun-bold-r-normal--0-0-0-0-p-0-iso8859-1
ai=0.3:tahomabd.ttf -misc-SimSun-bold-i-normal--0-0-0-0-p-0-iso8859-1
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-gbk-0
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-p-0-gbk-0
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-p-0-gbk-0
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-p-0-gbk-0
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-fcd8859-15
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-p-0-fcd8859-15
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-p-0-fcd8859-15
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-p-0-fcd8859-15
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-p-0-iso8859-15
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-p-0-iso8859-15
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-p-0-iso8859-15
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-p-0-iso8859-15
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-c-0-iso10646-1
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-c-0-iso10646-1
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-c-0-iso10646-1
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-c-0-iso10646-1'' > $CDIR/fonts.dir

#make the fonts.scale
cat $CDIR/fonts.dir > $CDIR/fonts.scale

#modify /etc/X11/XF86Config
sed -e ''/^Section[[:space:]]*"Files"/,/^EndSection/{
/^[[:space:]]*FontPath[[:space:]]*"/usr/X11R6/lib/X11/fonts/TrueType"/d
/RgbPath/a
FontPath "/usr/X11R6/lib/X11/fonts/TrueType"
}'' -e ''/Section[[:space:]]*"Module"/,/^EndSection/{
/^[[:space:]]*Load[[:space:]]*"freetype"/d
/^[[:space:]]*Load[[:space:]]*"record"/d
/^[[:space:]]*Load[[:space:]]*"type1"/d
s/EndSection/ Load "xtt"
EndSection/
}'' /etc/X11/XF86Config > ~/tmpfile

cat ~/tmpfile > /etc/X11/XF86Config

#modify gtkrc.zh_CN
sed -e ''/style[[:space:]]*"gtk-default-zh-cn"/,/class[[:space:]]*"GtkWidget"[[:space:]]*style[[:space:]]*"gtk-default-zh-cn"/{
s/^[[:space:]]*fontset[[:space:]]*.*"/ fontset = "-*-*-medium-r-normal--12-*-*-*-*-*-iso10646-1,*-r-*"/
}'' /etc/gtk/gtkrc.zh_CN > ~/tmpfile

cat ~/tmpfile > /etc/gtk/gtkrc.zh_CN

#modify gnome/gtkrc
sed -e ''s/^[[:space:]]*fontset[[:space:]]*=.*"/ fontset = "-misc-SimSun-medium-r-normal--12-*-*-*-*-*-iso10646-1"/'' /etc/gnome/gtkrc.zh_CN > ~/tmpfile

cat ~/tmpfile > /etc/gnome/gtkrc.zh_CN

#modify /etc/fonts/fonts.conf
sed -e ''s/<dir>/usr/X11R6/lib/X11/fonts/Type1</dir>/<dir>/usr/X11R6/lib/X11/fonts/TrueType</dir>
<dir>/usr/X11R6/lib/X11/fonts/Type1</dir>/'' /etc/fonts/fonts.conf > ~/tmpfile

cat ~/tmpfile > /etc/fonts/fonts.conf

sed -e ''/If[[:space:]]*the[[:space:]]*font/,/</match>/s/<string>.*</string>/<string>SimSun</string>/'' /etc/fonts/fonts.conf > ~/tmpfile

cat ~/tmpfile > /etc/fonts/fonts.conf

sed -e ''/<string>zh</string>/,/</edit>/s/<bool>.*</bool>/<bool>true</bool>/'' /etc/fonts/fonts.conf > ~/tmpfile

cat ~/tmpfile > /etc/fonts/fonts.conf

sed -e ''/<family>monospace</family>/,/</prefer>/{
/<prefer>/a
<family>SimSun</family>
}'' /etc/fonts/fonts.conf > ~/tmpfile

cat ~/tmpfile > /etc/fonts/fonts.conf

#modify /usr/lib/Chinput/Chinput.ad
sed -e ''s/chinput.gb18030font[[:space:]]*=[[:space:]]*.*/chinput.gb18030font = -misc-SimSun-medium-r-normal--0-0-0-0-c-0-iso10646-1/'' -e ''s/xft.font.family[[:space:]]*=[[:space:]]*zysong18030/xft.font.family = SimSun/'' /usr/lib/Chinput/Chinput.ad > ~/tmpfile
cat ~/tmpfile > /usr/lib/Chinput/Chinput.ad

#cp the files for xmms in the system default locale gb18030
mkdir /usr/share/locale/zh_CN.GB18030
cp -a /usr/share/locale/zh_CN.GB2312/* /usr/share/locale/zh_CN.GB18030/

#Gao Ding it!
reboot