最近我突然喜欢做命令行工具了,命令行的好处是跨平台更轻松,也不需要花时间搞样式(比如现在随便做个 GUI 工具都要考虑提供白天黑夜两套主题)。
命令行 todo list 工具有很多,但要么功能非常复杂,而功能简单的又很可能缺少我需要的功能。
为了解决这个矛盾,获得一个功能很少很简单,同时我想要的功能都有的工具,就只能自己做了。
simple todo
我做的这个工具名为 simple todo, 也许不能完全满足你的需求,但你可以参考,可以修改,本工具的代码量很小,都是些简单的 Python 语句,没有啥复杂算法,也没啥奇技淫巧,而且结构清晰,变量命名认真,必要的地方都有注释。
主要功能
- 简便、快捷地临时记录待办事宜;
- 周期提醒,可设置每周、或每月、每年重复提醒。
哲学
每一个效率工具,都体现了一种事务管理哲学。本工具有两个主要理念:
理念 1: 临时待办事项必须尽快清理,不可长期积压。
理念 2: 功能多不一定好,同时代码越少越好。(代码少 bug 就少,容易维护,容易修改)
安装
pip install simpletodo
具体功能与使用方法
基本的功能都实现了:
- todo 打印待办列表
- todo add 添加事项
- todo done 标记为已完成(移至已完成列表)
- todo redo 从已完成列表移至待办列表
- todo edit 修改事项内容描述
- todo delete 彻底删除一个事项
- todo clean 清空已完成列表
还做了一些便利功能:
- todo copy 复制指定事项的描述到剪贴板
- todo --where 查看程序本身的位置、数据库(一个 json 文件)的位置
- todo --dump 打印数据库( json )的全部内容
周期提醒
除了上述基本功能之外,还可以设置周期日程计划,比如:
todo repeat 2 -every month -from today
使用如上所示的命令,可以让序号 2 的事项每个月重复提醒一次,从今天开始。假设今天是 1 月 5 日,那就会在每个月 5 日自动把该事项添加进待办列表中。
其中,还可以选择 -every week 或 -every year。
-from 后面指定具体日期,比如 -from 2022-2-28, 可以使用的简称只有 today 与 tomorrow。
源码
源码及更详细的说明请看 https://github.com/ahui2016/simple-todo

