Sky Watch

写了一个 WP 发布程序 aka. 我把自己侮辱了

在试用 Charm 未遂的情况下,我决定写自己的 blog 发布程序。看了一下 XML-RPC 的资料,发现 Python 对 XML-RPC 的包装极好,深得我心,于是简单的把 WP 的 API 包装了一下,开始想界面怎么写。Charm 使用了风格比较古老的菜单界面,我不是很喜欢。写起来比较简单的非交互式命令行参数界面好像也不是很合适,想来想去决定写一个类似 Mutt 的界面。

我以前从来没有用过 ncurse。看了一点 Python 的 curse 模块文档以后我发现我丫就是一个 curse/terminal 白痴,但我发扬了我党“一不怕苦,二不怕死”的大无畏精神,找到了一个从文档上看很强大的库 Urwid,开始写界面,结果写的痛不欲生,生不如死,flag 和全局变量满天飞... 总算把发布功能写完了。

以下是我写之前对程序的预期:

  1. 实现 WP XML-RPC 的全部功能
  2. 类似 Mutt 的界面
  3. 从配置文件里读取全部键绑定
  4. 配置文件里实现多 blog 配置

以下是已经实现的功能:

  1. 实现列出 post 和发布新 post 功能
  2. 类似 Mutt 0.0.1 的界面(估计值)
  3. 硬编码全部键绑定
  4. 硬编码 API URI, 用户名和密码

... 最后套用 Mutt 作者的话:All blog publishing programs suck. This one just sucks the most!

Edit: 这是在 Charisma 里编辑的。