Posted on 28-11-2008
Filed Under (已报) by waterlin

之前的www.waterlin.org的模板,虽然还不错,但是始终和blog的风格差太远了。

今天花了半天的时间,用blog的模板,做了一个Emacs Muse的风格出来。现在基本上WikiBlog就是一个样了。

嗯,喜欢这样保持一致。内容上大致地区分一下功能:

http://www.waterlin.org
较详细地整理出来的东西,即Wiki,资料来源可以是自己写的blog、网上的文章等。

http://blog.waterlin.org
倾向于写一些即时的想法,至于有没有价值,只能待时间去验证了。

(0) Comments    Read More   
Posted on 27-11-2008
Filed Under (已报) by waterlin

终于在cesky上买了一个空间,把用Emacs Muse做的个人主页放上去了。

其实,在经历了诸多国外优秀服务被盾的情况下,早就想弄一个自己的服务器空间了;无奈于经济紧张,几百块的空间费,对我这个穷人来说,的确不算是一笔小费用,尤其是在创造不了任何经济效益的事情上。

主页的模板用的是http://www.dream-logic.com/的免费模板。以后有时间,我会自己做一个出来,呵

在这个Wiki里,我会努力把blog里写的一些东西整理出来,方便检索,算是经验的一个总结吧~~

通过这个地址访问:http://www.waterlin.org

(0) Comments    Read More   
Posted on 25-11-2008
Filed Under (生活) by waterlin

以前看美国大片的时候,经常看到说美国海军陆战队如何牛,海豹突击队如何如何精英。一直想当然地认为它们都是属于美国海军。

今天在看老冰的博文的时候,里面对比日本海军的时候,提到说美国的海军陆战队并不属于海军。我的好奇心一下起来了,上网google了一把,帮自己扫盲!

节选自百度百科美国海军陆战队词条的几句话:

海军陆战队的任务分为三大范围。主要任务是保持两栖作战能力。此外,海军陆战队亦被要求派遣分遣队到海军基地和海军主要战舰。最后海军陆战队必须实行美国总统所要求的额外任务。在美国,海军陆战队并不直接隶属于海军,而是五种武装力量之一(其馀四种分别为:陆军、海军、空军及海岸巡逻队)。海军陆战队由海军提供运输及舰只,但是拥有独立作战能力,有自己的飞行部队。陆战队司令亦只向海军部长(属文官)直接负责。除了两栖攻击外,美国的海军陆战队还有保护驻海外使馆、为白宫站岗、和负责主要舰只内部保安等传统责任。

根据美国宪法,海军陆战队是美军中唯一的一支无需国会批准总统便可动用的部队。因此,它不象其他国家的陆战队那样属于海军管辖,而是一个独立的军种,其地位甚至还高于其它军兵种。海军陆战队司令与其他军种司令一样,是美国参谋长联席会议的成员,也可担任美国军事统治集团中的最高职务一参谋长联席会议主席。海军陆战队还拥有自己的航空兵、坦克部队、炮兵以及自己的学校等,在军费开支中是优先保障的。因此,它可以购买比其他军兵种列装武器更好的武器装备。

美国海军陆战队海豹突击队

我想提到海军陆战队不得不提到他们之中精鹰中的精鹰,海豹突击队。这是一枝训练有素装备精良的特种部队。

海豹突击队的任务涉及国家头等机密,因此一般很少报道。海豹队员以一、两个人为一组,最多不超过16个人的作战排进行训练和执行任务,其中以8人以下的作战班最为普遍。所执行的任务也是绝对保密的——周密到极小细节的计划和迅如闪电的行动。即使在和平时期,海豹突击队仍然如临战一般训练,因为只有在训练场多流血汗,才能保证战场上的更低伤亡率。海豹突击队队员有两件随身战斗工具,一件是美国斯特赖德(Strider) 战斗刀,一件是美国休·费尔(SureFire )战术灯。

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

以前我截图都是用Firefox里的截图插件,有的时候也用Evernote自带的截图功能,即用键盘上的print Sreen截图到Evernote里。

用Firefox里的插件,非得打得Firefox不可,并且只能截Firefox里的图;用Evernte虽然也蛮方便的,但是截完图后只能保存为png格式,也不能对图片进行简单的编辑。

今天发现了一个功能更强大的、全天候的软件、免费的截图软件PicPick

PicPick是一款免费的Win下截图软件,支持主流的截图方式,除此之外,还有网页截图,滚屏截图等等功能,还有屏幕标尺,坐标,屏幕取色,常用颜色函数的转换,附带简单的图片编辑功能,支持输出PNG。

(0) Comments    Read More   

最近因为项目管理的需要,经常要回复一些close task的邮件。工作其实很简单,就是核实一下对方的工作是否做完;如果做完了,就把这个task关掉。

一般来讲,task都能完成得很不错,所以,我回复的内容基本上都是千篇一律的几句话。

天天输入相同的内容实在是太烦了,于是用Thunderbird的QuickText插件来自动插入我要回复的内容。

QuickText里添加一个template,取这个template的名字为“Task Closure”,然后编辑template的内容为:

Looks good. I have closed it for you.

Thanks

然后每次回Email的时候,前面就有这样一个按钮:

点“Task Closure”按钮就可以直接插入这段话了。现在回邮件再也不会打字打到手抽筋了,哈!

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

Outlook最让人咋舌的是它的日历!你看,收到邮件后,马上记录下别人跟你的约会、有啥事要做,一切掌控全在Outlook里,不用切换,多方便呀?

Thunderbird里的Lightning就是对抗Outlook的利器,你只要把这个插件装上,在Thunderbird里就有日历了。

不过呢,事物总是在发展的。Outlook和Lightning这种日历模式,适合于一天到晚都只用一台机的人!现在,恐怕大家都要在不同的电脑、不同的平台里切换吧?

如果你经常在办公室和家里的电脑之间切换,一个网络日历是必须的。装上这个专门为Google Calendar定制的Provider for Google Calendar插件,你就在Thunderbird里拥有了网络日历。

Provider for Google Calendar里这样设置一下你的Google Calendar:

1)从你的Google Calendar设置里,取到你想加入到Thunderbird的日历的XML地址(如果你不想公开,记得用你的秘密地址)。

2)然后在Thunderbird里,进入Calendar,添加一个Calendar,然后选择添加网上日历,再把你刚刚取得的地址输入进去,输入用户名和密码,这样就把Google Calendar集成到你的Thunderbird里了。

详细的文档参考这里:https://wiki.mozilla.org/Calendar:GDATA_Provider

因为我在公司上班,所以我只把我的工作日历添加到了Thunderbird里。

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

今天需要写了一个elisp的函数,有关时间计算的,上网找了找,记录笔记如下,原文是GNU手册上的Time Calculations

— 函数: time-less-p t1 t2

    如果时间值t1比t2小的话,这个函数返回真。

— 函数: time-subtract t1 t2

    这个函数计算出时间t1和t2之间的差值,即t1-t2,以相同的时间格式来显示。

— 函数: time-add t1 t2

    这个函数计算出时间t1和t2的和,其中的一个应该是时间差值而不是时间的绝对值。

              (time-add time (seconds-to-time seconds))

— 函数: time-to-days time

    This function returns the number of days between the beginning of year 1 and time.

— 函数: time-to-day-in-year time

    This returns the day number within the year corresponding to time.

— Function: date-leap-year-p year

    This function returns t if year is a leap year.

根据这个函数,如果我需要以“年-月-日”这样的格式打印出明天的时间,则只需要用如下代码即可:

(format-time-string “%4Y-%2m-%2d” (time-add (current-time) (seconds-to-time 86400)))

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

经常在 Emacs 里编辑东西的时候,需要把某个字符串替换成其它字符串。一般情况下,只需要用 M-x replace-string 这个命令就可以实现这一操作。

但是当你要替换的字符串的正则表达式比较复杂,且你经常需要在不同的 buffer 引用这一操作的时候,最好的方法还是把这个操作保存到你的 elisp 函数里。每次要用,调用这个 elisp 函数即可。

程序非常的简单,核心的内容就是 re-search-forward 和 replace-match 这两个 elisp 的内置函数。

(while (re-search-forward "foo[ \t]+bar" nil t)
(replace-match "foobar"))

当然,re-search-forward 只会往前搜索当前 buffer,如果你要往后搜,则要用 re-search-backward 这个函数。这两个函数合起来用,就成了一个全文搜索、替换的函数了。例如下面的代码就是把 buffer 里所有的 endtime 字符串替换成当前的时间戳:

(defun endtime ()
(interactive)

  (while (re-search-backward "mendtime" nil t)
(replace-match (format-time-string "%4Y-%2m-%2d %H:%M:%S")))

  (while (re-search-forward "mendtime" nil t)
(replace-match (format-time-string "%4Y-%2m-%2d %H:%M:%S"))))

当然,如果你需要全文替换的话,更优雅的解决办法是这样的:

(defun endtime ()
(interactive)
(save-excursion
(goto-char (point-min))
(while (re-search-forward "mendtime" nil t)
(replace-match (format-time-string "%4Y-%2m-%2d %H:%M:%S")))))
(0) Comments    Read More   

在用了一年Windows自带的Outlook Express之后,我实在是受不了这个单纯简单的邮件客户端了,于是我切换到了Thunderbird。没办法,谁叫Office里的Outlook是要钱的呢!用了一会,感觉还是Thunderbird好呀,可以像Firefox一样,装一大堆的插件!

我在安装的时候,不小心装了中文版的Thunderbird,对于在外企上班的我来说,实在是有点不方便。没办法,谁让你中文版发邮件的时候,非得出来几个类似于“XXX写道”这样的中文字眼呢?

读了读有关如何安装Thunderbird语言包的说明,手动把locate改为美国英语了。其实非常简单,总的来说,安装语言包就只有七个步骤:

1. 到这个页面:http://releases.mozilla.org/pub/mozilla.org/
2. 跳到你需要包的软件目录,在这里,毫无疑问是:thunderbird
3. 跳到Release这个目录;
4. 找到你所用Thunderbird版本所在路径;
5. 再根据你用的操作系统,再进到下一级子目录,我是Win32;
6. 进到这一层的名为xpi的目录;
7. 下载你所需要的语言包,比如fr.xpi,在Thunderbird里装上就可以了。安装方法和Firefox一样。

根据这个方法,我装上了一个英文语言包,再装一个Quick Locale Switcher,这下要中文有中文,要英文有英文,切换随意得很~~

顺便说一下,如果你没有装语言包,装上Quick Locale Switcher进行切换是起不了什么作用的

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

现在的博主们,一般最少有两个博客空间,一个用来对外宣布自己的存在,即主空间;一个算是备份空间吧。万一主空间有啥不测,则用备用空间顶上。

可是,同步更新两个博客,如果都要去后台更新,还挺麻烦的。

其实用Firefox的ScribeFire插件,很容易就能同步更新两个博客。

把这两个或多个博客添加到你的ScribeFire里,在你写完note之后,点发布,发布成功后选Keep Content,再切换到另一个博客,再点发布,就行了。呵,虽然操作是麻烦了一点,不过总的来说,还算方便了。虽然算不上真正意义上的一键发布到多个博客,但是也算是一种同步更新了。

当然,你用Zoundry也可以同步更新多个博客

(1) Comment    Read More