2009-03-27

debian下使用docbook

近来完善部门文档,加上前段时间看了些DOCBOOK的资料(其实先前就在WINDOWS下玩过,可最后没玩成),于是决定用DOCBOOK来写。由于先前曾不成功过,有点小没信心,中文的说明不是很多,通过worldhello.net网站看了些,然后自己搞了搞,结果没搞好。看来我的领悟能力有点差,不过我还是对DOCBOOK有了一定的了解,然后开始在自己的机器上瞎鼓捣,结果竟能搞出来一个简单的了,呵呵,把我的经历写下,记录下自己的过程:
因为自己用的DEBINA系统,而DEBIAN的APT比较强大,于是想着用系统自己的包来装好了,结果还真搞好了,由于我看别人都用XML来写,而不是SGML,于是我也就只安装了XML相关的,XGML同理。语句如下

#aptitude install xsltproc docbook-xml docbook-xsl ldp-docbook-xsl

以上语句即安装相关环境。然后写一个简单的temp.xml文件,内容如下

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
<article id="html">
<articleinfo id="head">
<title>测试文件</title>
<subtitle>test</subtitle>
<author><firstname>.Victor</firstname><surname>star</surname></author>
<abstract>
<para>
这是一个测试文件
</para>
</abstract>
</articleinfo>

<sect1 id="body"><title>第一个docbook文件</title>
下面我们就来测试一下了。
</sect1>
</article>

然后执行如下命令

$xsltproc /usr/share/xml/docbook/stylesheet/ldp/html/tldp-sections.xsl temp.xml

其中/usr/share/xml/docbook/stylesheet/ldp/html/tldp-sections.xsl为样式所在URI,这样就会生成两个html文件了,打开看一下,是不是格式比较cool!!:D虽然有一点不十分美观,但这个东西可以通过样式表来调整地。
这时我们要输入的生成命令太长了,另外,生成的HTML和我们的xml文件在一起,看着不大方便,我们可以用更简单的方式来做
建立文件(MakeFile),内容如下:

OBJECT = all
SOURCE = temp.xml
PARAM = param.xsl
COMPILER = xsltproc

$(OBJECT):$(SOURCE) $(PARAM)
$(COMPILER) $(PARAM) $(SOURCE)

clean:
rm -rf *.html


然后执行下$make clean清除下生成的HTML
再建立文件(param.xsl),内容如下

<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

<!--调用样式表-->
<xsl:import href="/usr/share/xml/docbook/stylesheet/ldp/html/tldp-sections.xsl"/>

<xsl:param name="chunker.output.encoding" select="'utf-8'"/>
<!--标准信息所使用的语言-->
<xsl:param name="l10n.gentext.language" select="'zh_cn'"/>
<!--指定样式表-->
<xsl:param name="html.stylesheet" select="'style.css'"/>
<!--对于警告类信息是否使用图形 0 1-->
<xsl:param name="admon.graphics" select="1"/>

<!--生成的HTML文件存放的起始目录-->

<xsl:param name="base.dir" select="'./html/'"/>

<!--生成的HTML文件内容是否进行缩排 yes no-->
<xsl:param name="chunker.output.indent" select="'yes'"/>
<!--给节编号 0 1-->
<xsl:param name="section.autolabel" select="1"/>
<!--节的编号是否包含章的编号 0 1-->
<xsl:param name="section.label.includes.component.label" select="1"/>
<!--表格边框的属性是否使用预设CSS来指定-->
<xsl:param name="table.borders.with.css" select="0"/>
<!--参考书目是否进行编号-->
<xsl:param name="bibliography.numbered" select="1"></xsl:param>


<!--目录深度-->
<xsl:param name="toc.max.depth" select="2"/>
<!--sect#页面上显示目录-->
<xsl:param name="generate.section.toc.level" select="0"/>
<!--sect#可以生成目录条目-->
<xsl:param name="toc.section.depth" select="2"/>
<xsl:param name="generate.toc">
appendix toc
article/appendix nop
article toc,title
book toc,title
chapter toc,title
part toc,title
preface toc,title
qandadiv toc
qandaset toc
reference toc,title
sect1 toc
sect2 toc
sect3 toc
sect4 toc
sect5 toc
section toc
set toc,title
</xsl:param>

<!--在源码中插入 <?linebreak?> 标签,生成Html时替换为<br> -->
<xsl:template match="processing-instruction('linebreak')">
<br/>
</xsl:template>

</xsl:stylesheet>


然后输入$make,是不是直接开始编译了

呵呵,自己也是初学,大家多多交流!以后学得更多了再慢慢写。

‘博士后和民工的区别’有感

联合利华引进了一条香皂包装生产线,结果发现这条生产线有个缺陷:常常会有盒子里没装入香皂。
总不能把空盒子卖给顾客啊,他们请了一个学自动化的博士后设计一个方案来分拣空的香皂盒。
博士后拉起了一个十几人的科研攻关小组,综合采用了机械、微电子、自动化、X射线探测等技术,
花了几十万,成功解决了问题。每当生产线上有空香皂盒通过,两旁的探测器会检测到,并且驱动一只机械手把空皂盒推走。

中国南方有个乡镇企业也买了同样的生产线,老板发现这个问题后大为发火,找了个小工来说:你***给老子把这个搞定,
不然你给老子爬'*'。小工很快想出了办法:他在生产线旁边放了台风扇猛吹,空皂盒自然会被吹走。

这是我所在的一个QQ群中有人转来的,看完后的确有些触动。暂且不说这个小故事的真实性,只从它所折射出来的情况去分析

想法决定做法,民工脑子中没有那么多先进的技术,所以他只从最简单最最实用的思路出法去考虑事情,实现做法可能不是那么清亮,但最终达到了所需要的目的。有时我们脑子中装了太多的想法,以至于我们都不会用最简单最原始的思路去思考了。

联合利华固然不大可能去放几台风扇在生产线上去吹,但是是否我们有时去相信尖端人才却忽视了民众的力量了呢?

2009-03-25

根服务器-备忘

记下这几个,PING之,看那一个返回的速度快,设成DNS服。但根DNS好似只解析.com|.net域名,应急之用还是不错的。

根服务器是互联网域名解析系统中最高级别的域名服务器,共13台。目前的分布是:主根服务器美国1个,设置在弗吉尼亚州的杜勒斯;辅根服务器美国9个,瑞典、荷兰、日本各1个:
字母 IPv4地址 IPv6地址 老域名 运行机构 设置地点 软件
A 198.41.0.4 2001:503:BA3E::2:30 ns.internic.net VeriSign 杜勒斯,弗吉尼亚州 BIND
B 192.228.79.201 2001:478:65::53 ns1.isi.edu 南加州大学-ISI Marina Del Rey,加利福尼亚州 BIND
C 192.33.4.12
c.psi.net Cogent通信 distributed using anycast BIND
D 128.8.10.90
terp.umd.edu 马里兰大学 学院市 College Park,马里兰州 BIND
E 192.203.230.10
ns.nasa.gov NASA 芒廷维尤 BIND
F 192.5.5.241 2001:500:2f::f ns.isc.org ISC distributed using anycast BIND
G 192.112.36.4
ns.nic.ddn.mil 国防信息系统局 哥伦布,俄亥俄州 BIND
H 128.63.2.53 2001:500:1::803f:235 aos.arl.army.mil 陆军研究实验室 Aberdeen Proving Ground,马里兰州 NSD
I 192.36.148.17 2001:7fe::53 (testing) nic.nordu.net Autonomica distributed using anycast BIND
J 192.58.128.30 2001:503:C27::2:30
VeriSign distributed using anycast BIND
K 193.0.14.129 2001:7fd::1
RIPE NCC distributed using anycast NSD
L 199.7.83.42 2001:500:3::42
ICANN distributed using anycast NSD
M 202.12.27.33 2001:dc3::35
WIDE Project distributed using anycast BIND

2009-03-23

DEBIAN下的fcitx

linux下的五笔好难选择,个人从skim(scim)和fcitx之间换了好多次,总是输入法有不太如人意的地方,有点怀念windows:)
看到fcitx转入googlecode后发布的第一个版本(3.6.0rc),虽然是不是正式版。还是赶快移除原来的fcitx,换用新的。
以前都是用aptitude install一个命令了事,这次下的包是tar.gz的,只好自己解压慢慢来了。结果发现自己好多开发工具都没有,一通aptitude install,总算好了。
但发现一个新的问题,在iceweasel下使用五笔拼音(其它情况未测试),输入法输入英文时有时会出现按键重复上屏,如按一个a出两个。使用五笔打字时未出现这种情况。
另:如果在五笔状态下使用shift暂时输入英文字符未发现这种情况

迷茫中,作者也说在ubuntu下发现一些问题,做为ubuntu源头的debian,难道这就是作者说的问题,郁闷中,先用着吧,等实在受不了就还回退到老版本。

又换地方了

BLOG历经磨难,换了好多个地方。最后换到GOOGLE的BLOGGER上了。主要是能绑米。
以前的文章也不找回了,一切从新开始,从头再来。