用 rst2wp 来写 WordPress

很久没有写 Blog 了,没想到一下子拉了这么长时间。 想想最初停止的原因,是因为在看到 reStructuredText 之后, 觉得用来写文章、文档或者 Blog 非常好,就想学着用用。 谁知 rst 太复杂了,光 说明文档 就那么长, 也没有完整的中文版,就想来翻译一下,翻译的结果还是用 rst 来写。 结果卡死在这里了,后来忙了就没有再继续了, Blog 也就没有再更新,翻译也没有进行完。

现在,随着一切在发展,似乎 WordPress 有些没落了, 原来的 rst 支持插件居然也几乎没有了。 大家都热衷于使用 Jekyll, Octopress, Pelican 类似的软件来生成静态 Blog, 摈弃了以前 PHP+Mysql 的动态网站方式, github 还提供配套的 托管服务 。 我不喜欢全静态化的实现方式,网站大了以后更新效率肯定会降低, 好在这些生成工具大多都支持 MarkdownreStructuredText , 继续使用 rst 来写 Blog 也不会太影响将来可能的迁移。

继续 Blog 吧,懒人又开始面临一个不是问题的问题:网络不好,连接速度慢, 直接登录 WordPress 后台写简直太痛苦了。 所以有一段时间我都是在本地编辑,然后粘贴到后台看效果。 这种方式在 rst 在线预览工具 的帮助下还算凑合 (原来有个 rst2a 也挺好用,但已经挂了很久了)。 看过一些 Blog 客户端软件,感觉大多仍然不理想,功能不足, WordPress 推荐工具 多半也不好用, 很多都很长时间没更新了。 于是,继续搜索,找到了现在用的 rst2wp

rst2wp 的工作方式是在本地用任何你喜欢的编辑器写 rst 文档, rst2wp 帮你转换成 html、预览或者上传到 WordPress 中。 rst 文件中可以指定 Category 和 Tag, 上传时会自动记录 Post Id 用于以后的编辑。 我 Fork 之后还增加了记录 date 和 slug 的功能。 一个比较完整的 rst 文档示例如下:

..  -*- mode: rst -*-
..  -*- coding: utf-8 -*-
 
:id: 6
:title: 用 rst2wp 来写 WordPress
:slug: 201211-test-rst2wp
:date: 2012-11-27 00:19:37
:publish: yes
:categories:
    - Blog
    - Tools
:tags:
    - blog
    - git
    - github
    - WordPress
    - RestructuredText
 
 
blah 测试 中文。
 
+---+---+---+
| a | b | c |
+===+===+===+
| 1 | 2 | 3 |
+---+---+---+

先用着吧,顺便熟悉 reStructuredText 的语法。

个人信息管理软件——todo/任务/日程表

Tomboy算是不错的便签软件了,但我还是觉得不够好用,我希望有一个这样的软件:

  • 能够记下我想要作的事情。
  • 能够在我作的时候,记下笔记。
  • 完成的不删除,存档起来供日后查看。
  • 有大的任务能够拆成小的,一项一项来完成。
  • 最好能够和日历结合起来,知道今天该作什么。
  • 有优先级和重要程度标记,紧急的、重要的要先作。
  • 离线使用,不依赖网络,便于管理,效率高。

但找了一大圈,始终没有十分满意的,下面是一些我试过的,以及一点感受,希望对有同等需要的朋友有帮助。

最开始是在便签软件中探索:

knotes 太简单了,只有条目,没有保存历史功能,无法记录笔记。

note 命令行界面,简单小巧,能写东西(vi),但时间的字体有些暗,命令行用起来也不方便。

notebook-gtk2 根本就没法用,点什么都没有反应。

notecase 纯记录东西来说,比tomboy方便,但是无法记录富格式文本,删除(完成)的note仍然无法管理。

rhinote 只能记一个,别的什么也干不了。

xfce4-notes-plugin 过于简单,同样是只能记录的小纸条

然后转向todo任务管理软件:

devtodo 字符界面,带优先级,可查看已删除项,但无法记录详细笔记。

gpe-todo: 总是莫名其妙得退出。

Segmentation fault

gtodo 优先级、查看已完成项都有,就是详细记录(comment)太小了,记不下太多东西,也不支持富文本。已删除的项管理方式也不是很理想。

又从wikipedia上扒出来几个综合的pim软件:

Chandler 侧重于calendar管理,整个一google calendar的离线版。

OpenSync 同步工具,虽然也可以在pim软件之间同步数据,但相信更多的是用于手机、PDA等设备。

Task Coach 侧重于任务管理,尤其适用于需要对大型任务进行分解,逐项管理子人物的情况。需要

python-wxversion python-wxgtk2.8

的支持。 个人觉得比较理想,但似乎在Ubuntu 7.04下安装不能运行,总提示No module named taskcoachlib

其他的像ThunderBird、Evolution什么的就不考虑了,太笨重,继续寻找ing。

Update @ 2007-11-21

Ubuntu Gutsy 7.10下运行Task Coach成功,需要安装python-wxgtk2.8包,中文输入的问题在Edit->Preference, Language中选择Simplified Chinese后,重启应用,换成中文界面之后顺利解决。参考