Emacs的Worklog Mode提供了一个追踪你平时工作流的功能。

要安装Worklog Mode很容易,只要把worklog.el扔到你的load-path里,然后在.emacs里加上这段代码:

(require ‘worklog)
(setq worklog-automatic-login t)
(add-hook ’emacs-startup-hook
(function (lambda ()
(worklog-do-task “Hacking emacs” t)
)))

(add-hook ‘kill-emacs-hook
(function (lambda ()
(worklog-do-task “logout” t)
(worklog-finish)
)))

不管你在什么时候,用命令M-x worklog会自动打开预设好的文件来记录你的日志。每次都会新开一个entry,并且在entry的开头提供一个格式如2003-07-22 17:20的时间戳。命令M-x worklog-show也会打开该文件,但却不会自动添加entry。

要修改默认的文件,请在worklog.el里把

(defcustom worklog-file “~/.worklog”

这句中的~/.worklog改为你所想要的文件路径。

你也可以用worklog来简单的统计一下你的工作情况。当然,你需要用login和logout来标记task的开始和结束,然后再用M-x worklog-summarize-tasks来生成报表。

worklog-automatic-login设为非空值时,在emacs启动的时候,会自动添加login标记。worklog-do-task会为每一个运行的任务加一个停止的步骤,即类似于logout标记。当然,你可以自己修改login、logout这些标记文字的值。

Worklog Mode和我前面介绍的M-x journal两者的功能有比较大的区别,Worklog Mode更适合于边工作边记录,即在你工作的时候,每当结束一个工作或是开始一个新的工作的时候,就新建一个entry来记录;而M-x journal更适合于写一段时间的总结,比如说每天的总结汇报呀、日记呀等等比较大块的东西。

更详细的用法、说明请参考worklog.el本身。