Posted on 31-10-2008
Filed Under (软件) by waterlin

刚开始在Windows下用CVS的时候,就是在Cygwin下用cvs的命令行,这个方法倒也方便快速,就是刚开始要记一大堆的命令,很痛苦;现在管理tasks的时间也长了,整天不停地在不同的目录间跳转,check in和update,打字打得都快要抽筋了。

后来试着用了用WinCVS,配置怎么这么难的?满菜单的找要设置的内容还真不容易。最讨厌的是打开文件的方式,非得让你再选一遍,实在是觉得不好用。

今天知道了TortoiseCVS,原来这么简单的!如果只是想从服务器上更新文件,只要装好它,自动就帮你把已经check out出来的目录设置好了。

TortoiseCVS,简单安装,像浏览文件夹一样浏览CVS!

(0) Comments    Read More   
Posted on 31-10-2008
Filed Under (技术) by waterlin

phpBB里要换模板是很容易的。比如说我喜欢这个RedSilver的皮肤,只要先下载下来,就能很轻松地安装好。

这里要注意的是,phpBB2和phpBB3的模板是不兼容的,注意根据你的phpBB的版本来下载。

根据《如何安装phpBB3风格》一文进行操作:

把解压出来的文件放到你的phpBB3/styles/目录下,用系统管理员的帐号登陆phpBB3的管理后台(在页面底部找到Admin Control panel的入口),点击STYLES标签页,根据页面左边的提示即可安装你的风格。

(0) Comments    Read More   
Posted on 30-10-2008
Filed Under (软件) by waterlin

教育网上不了国外网站,自然不能自动升级小红伞。但是可以上小红伞的官方网站http://www.avira.com
直接下载补丁升级。

在首页里找到Support –> Downloads,或是直接用下面的网址登陆:
http://www.avira.com/en/support/support_downloads.html

在页面的右边,有一个VDF Update的下载链接,把它下载下来,然后打开小红伞的主程序,选择菜单Update –> Manual Update,选择你刚刚下载文件即可。

(0) Comments    Read More   
Posted on 28-10-2008
Filed Under (技术) by waterlin

只要把下面这段代码放到.emacs里,即可像Firefox一样,用”C-+“和”C–“来放大Emacs显示字体的大小,非常地方便。

(defun increase-font-size ()
(interactive)
(set-face-attribute ‘default
nil
:height
(ceiling (* 1.10
(face-attribute ‘default :height)))))
(defun decrease-font-size ()
(interactive)
(set-face-attribute ‘default
nil
:height
(floor (* 0.9
(face-attribute ‘default :height)))))
(global-set-key (kbd “C-+”) ‘increase-font-size)
(global-set-key (kbd “C–“) ‘decrease-font-size)

本代码摘自:http://sachachua.com/wp/2006/09/15/emacs-changing-the-font-size-on-the-fly/

(0) Comments    Read More   
Posted on 21-10-2008
Filed Under (技术) by waterlin

在Muse定义的模板里,如果要对其中一些可变的内容用lisp函数来处理,可以在其中嵌入lisp函数,只要把lisp语句括在<lisp>和</lisp>之间即可。

比如说我在页面的footer里要设定网页发布的时间,就可以加上这么变态的几句来处理:

最后更新:
<lisp>
(format-time-string “%4Y-%2m-%2d-%T”
(nth 5 (file-attributes
muse-publishing-current-file)))
</lisp>

当然,如果你是放到变量muse-xhtml-footer里,对要记得用\”来转义。比如,加入了这一句后,我的muse-xhtml-footer就成了这样:

;;;;  muse xhtml-footer
(setq muse-xhtml-footer ”
<!– end page content –></div>

    <div id=\”footer\”><br />

<!– it’d be super if you left this link intact –>

<a href=\”http://www.dream-logic.com\”>Web Design by dreamLogic</a>

最后更新:
<lisp>
(format-time-string \”%4Y-%2m-%2d-%T\”
(nth 5 (file-attributes
muse-publishing-current-file)))
</lisp>
</div>
</div>

</div>

</body>
</html>
“)

最后转出的效果如下图所示:

(2) Comments    Read More   
Posted on 21-10-2008
Filed Under (技术) by waterlin

完成了Muse的基本配置之后,我们可以继续给自己的Wiki添加更多的功能。当站点的笔记、内容较多的时候,唯有用搜索引擎才能快速地找到我们需要检索的内容。于是,我今天加了一个Google搜索的代码到我的Muse配置文件里。

这一步其实非常简单,只要把

<!–  <lisp>(muse-publishing-directive \”title\”)</lisp> –>
<!– Google Search –>
<div class=\”searchbar\”>
<form id=\”searchbar\” method=\”get\” action=\”http://www.google.com/custom\” title=\”My Site Search\”>
<div id=\”searchbar\”>
<label for=\”q\” title=\”Search this site\”>
<img src=\”common/images/google.gif\” ></label>
<input type=hidden name=domains value=\”http://www.waterlin.org/\”>
<input type=hidden name=sitesearch value=\”http://www.waterlin.org/\”>
<input type=\”text\” id=\”q\” name=\”q\” accesskey=\”s\” size=\”16\”>
<input type=\”submit\” id=\”submit\” value=\”Go\”>
</div>
</form>
</div>
<!– Google Search –>

这段代码添加到你想放Google搜索框的地方即可。记得把其中的http://www.waterlin.org换成你自己的域名。

为了在所有的页面都出现这个搜索框,你最好把这段代码放到muse-xhtml-header或是muse-xhtml-footer变量里。

我把它加入到我的muse-xhtml-header变量里,当然,切记要在你的css文件里为searchbar设值。

(0) Comments    Read More   
Posted on 20-10-2008
Filed Under (技术) by waterlin

现在做Wiki的工具这么多,为什么还要用muse这样老土界面的东西呢?Muse其实有着许多的优点,归结起来,我觉得不外乎这么几个:

其一,你可以专注于写作,而不是排版,一旦你设计好了你的风格,你就可以一劳永逸了,写起来特别地快捷。

其二,用Muse写Wiki的成本很低。大多数个人发布页面,如果要用动态网站的形式,势必给自己添加许多维护上的麻烦。而Muse生成的html静态页面,容易托管和备份。当然,如果你是多人维护的页面或是Wiki,就另当别论了。

其三,Muse可以生成多种格式。你写的一份内容,不仅可以生成html页面,还能生成类似于pdf之类的其它文档,对于保存和发派你的作品,都十分的方便。

因为muse的配置比较长,所以我喜欢把muse配置代码全部放到emacs-muse.el里,在.emacs文件里导入这个文件来加载muse配置代码以及自定义样式的代码,这样可以方便编写调试,而且还能方便在命令行调用。

;; Emacs Muse
(load-file “~/emacs/site-lisp/emacs-muse.el”)

下面就讲一讲我在emacs-muse.el里的配置代码。

1) Muse的基本配置

定义一些基本的格式,没什么特别的。

(require ‘muse-mode)     ; load authoring mode
(require ‘muse-html)     ; load publishing styles I use
(require ‘muse-latex)
(require ‘muse-texinfo)
(require ‘muse-docbook)
(require ‘tp-muse-highlight nil t)
(require ‘muse-project)  ; publish files in projects

2) 自定义自己的样式

Muse提供了函数muse-define-style来自定义格式,还有函数muse-derive-style来继承已定义的格式。本文就介绍一种自定义的HTML格式,所以只需要函数muse-derive-style来继承自HTML格式即可,这里我们定义了两个名为wiki-xhtml和default-xhtml的新格式,它继承自XHTML格式。

(unless (assoc “my-blosxom” muse-publishing-styles)
(muse-derive-style “wiki-xhtml” “xhtml”     ;定义一个派生的style为wiki-xhtml
:header ‘muse-xhtml-header
:footer ‘muse-xhtml-footer
)
(muse-derive-style “default-xhtml” “xhtml”  ;定义另一个派生的style
:header “~/muse/common/templates/default-header.html”
:footer “~/muse/common/templates/default-footer.html”
))

3) 多项目配置

在这里,我们配置了两个项目,一个是ArrAyWiki,另一个是个人主面的MyWiki。从语句中可以看出来,我们给ArrAyWiki配置的是Muse自带的html风格的模式,而给MyWiki配置的却是wiki-xhtml风格的模式。

(setq muse-project-alist
‘((“ArrAyWiki” (“~/ArrAyWiki” :default “index”)
(:base “html” :path “~/public_html/ArrAyWiki”)
(:base “pdf” :path “~/public_html/ArrAyWiki/pdf”))
(“MyWiki” (“~/MyWiki” :default “index”)
(:base “wiki-xhtml” :path “~/public_html/MyWiki”)
(:base “pdf”  :path “~/public_html/MyWiki/pdf”))))

有关多项目配置的详细情况可以看一看我之前写的《Emacs Muse的多项目发布模式和命令》在发布项目的时候,即muse-mode里C-c C-t的时候,对于MyWiki项目要记得用输入wiki-xhtml这个style来生成页面。

4) 具体定义风格

我们虽然在2)中已经定义了样式的名,但其实我们还没有真正的定义出样式的具体内容。我们现在就来对样式的具体内容作出定义,拿wiki-xhtml作为例子。我们可以先从http://www.dream-logic.com/下载我们喜欢的模板文件作为参考模板。

对于wiki-xhtml风格,我们只需要定义muse-xhtml-header和muse-xhtml-footer这两个变量,参考我下载的模板,我对这两个变量进行了如下的定义:

;;;; muse xhtml header
(setq muse-xhtml-header ”
<!DOCTYPE html PUBLIC \”-//W3C//DTD XHTML 1.0 Strict//EN\” \”http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\”>
<html xmlns=\”http://www.w3.org/1999/xhtml\” lang=\”en\” xml:lang=\”en\”>
<head>

<!– change this to the title you want to appear in browser title bar –>

<title>Water Lin</title>
<meta http-equiv=\”Content-Type\” content=\”text/html; charset=utf-8\” />
<meta name=\”author\” content=\”dreamLogic\” />
<meta name=\”description\” content=\” \” />
<link rel=\”stylesheet\” href=\”style.css\” type=\”text/css\” />
</head>

<body>

<div id=\”navcontainer\”>
<ul id=\”navlist\”>

<!– put your navigation links and text here –>

<li><a href=\”#\”>home</a></li>
<li><a href=\”http://blog.waterlin.org\”>blog</a></li>
<li><a href=\”#\”>portfolio</a></li>
<li><a href=\”#\”>links</a></li>
<li><a href=\”#\”>contact</a></li>
<li><a href=\”http://validator.w3.org/check?uri=referer\”>xhtml</a></li>

<!– end navigation –>

</ul>
</div>

<div id=\”wrap\”>

<div id=\”header\”></div>

<!– the title that appear in the page header –>

<div id=\”title\”>Water Lin<br />Sea made by Water Drop</div>

<div id=\”container\”>

<div class=\”content\”>
<!– Page published by Emacs Muse begins here –>\n
“)

;;;;  muse xhtml-footer
(setq muse-xhtml-footer ”
<!– end page content –>

</div>

    <div id=\”footer\”><br />

<!– it’d be super if you left this link intact –>

<a href=\”http://www.dream-logic.com\”>Web Design by dreamLogic</a>

</div>
</div>

</div>
</body>
</html>
“)

在这里,注意所以的号都要用\”来转义。

到这里,Muse的基本配置就算结束了。试着在你的muse文件里,M-x muse-project-publish-this-file试一试看。

(1) Comment    Read More   
Posted on 19-10-2008
Filed Under (技术) by waterlin

经常要在Linux里查找版本信息,列出几种方法备用。

1) cat /etc/issue

返回结果:

Ubuntu intrepid (development branch) \n \l

或者

2) cat /proc/version

返回结果:

Linux version 2.6.22.18-co-0.7.3 (hn@hn-lt) (gcc version 4.1.2) #1 PREEMPT Wed Apr 16 18:50:10 UTC 2008

或者

3) uname -a

返回结果:

Linux andLinux 2.6.22.18-co-0.7.3 #1 PREEMPT Wed Apr 16 18:50:10 UTC 2008 i686 GNU/Linux

或者

4) lsb_release -a

返回结果:

No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu intrepid (development branch)
Release: 8.10
Codename: intrepid

或者

5) cat /etc/lsb-release

返回结果:

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=8.10
DISTRIB_CODENAME=intrepid
DISTRIB_DESCRIPTION=”Ubuntu intrepid (development branch)”

以下是Ubuntu的各个发行版的名称和发布时间,没有仔细核对,应该不会太大出入的:

Ubuntu 4.10 – Warty Warthog(长疣的疣猪),发布日期:2004年10月20日。

Ubuntu 5.04 – Hoary Hedgehog(灰白的刺猬),发布日期:2005年4月8日

Ubuntu 5.10 – Breezy Badger(活泼的獾),发布日期:2005年10月13日

Ubuntu 6.06 – Dapper Drake(整洁的公鸭),发布日期:2006年6月1日

Ubuntu 6.10 – Edgy Eft(急躁的水蜥),发布日期:2006年10月6日

Ubuntu 7.04 – Feisty Fawn(坏脾气的小鹿),发布日期:2007年4月19日

Ubuntu 7.10 – Gutsy Gibbon(勇敢的长臂猿),发布日期:2007年10月18日

Ubuntu 8.06 – Complacent Husky(得意的哈士奇),发布日期:2008年6月7日

(0) Comments    Read More   
Posted on 16-10-2008
Filed Under (技术) by waterlin

有的时候,我们只想对buffer中某一部分的内容进行操作,比如说替换这一段内容中的某些字眼而不影响文章的其它部分。这个时候,应该怎样处理才会比较方便呢?

我自己经常用两种方法,都觉得蛮好用的。

1) 先选中要操作的区域,再直接用命令。

比如说我要全部替换buffer中某个部分的某个单词,我先选中这个部分,然后直接用命令M-x replace-string,根据提示,完成替换操作。

当然,你还可以使用一些其它的命令,比如说M-x count-lines-region之类的,来统计一下该部分有多少行。这个方法的优点是操作比较简单、快速;缺点是,能使用的命令不多,不能进行比较复杂的操作。

2) Narrowing

Narrowing的意思是集中于当前buffer的某一部分,并且隐藏buffer的其它部分。

在选中一个区域之后,用命令C-x n n(M-x narrow-to-region)进入narrow模式,然后你就可以像操作一般的文档一样来操作这个region了。

用命令C-x n w(M-x widen)即可退出narrow模式返回到原来的buffer中,你在narrow里的编辑将带回到原buffer里。

还有两个命令可以让你更加方便地进入narrow模式:

C-x n p(M-x narrow-to-page):    把当前页面用narrow模式来编辑。

C-x n d(M-x narrow-to-defun):   把光标所在行的当前函数用narrow模式来编辑。

(0) Comments    Read More   
Posted on 15-10-2008
Filed Under (软件) by waterlin

早上一早来公司,发现outlook不能用,死活连接不到服务器,呈假死状态;Firefox运作得很正常。打开IE7,试图连一个邮件服务器或是网页,结果死活上不了网。这不是和我家里的电脑一个德性吗?昨天我就因为IE7上不了网折腾到晚上两点,顺带导致金山毒霸升级到一半就断的惨剧。

实在是想不明白微软在干什么,IE7上不了网,为啥要牵连Outlook?非要弄得我整台机都出问题。

一恕之下,我把IE7给删掉了,重新用回IE6好了。果然,一删除IE7,啥事都没有了:IE能上网了,outlook也能用了。

这就是微软的产品,关联得太紧密了吧?紧密得也太过分了。昨天回家前IE7还能上网,今天一开机就啥都用不了了。一打开“局域网设置”IE7就死在那里了。真是想不明白,是我的电脑有问题,还是微软的IE7服务有问题。我也懒得折腾这种自闭的东西,纯粹是浪费我的时间!

先不说IE7先进不先进,安全性高不高。如果连我2g的内存跑起来都有点颤悠悠的,可以预见其它用户用起来是啥感觉了!那些做网站只在IE下测试运行结果的人,也统统是白痴!要不是我们公司的信息管理系统对Firefox支持不好,我早就把IE打入冷宫了!

等我今天回家也把IE7给删掉去,不然我家里的IE永远都不好用。

(0) Comments    Read More