为您的taskwarrior数据库提供Python绑定
项目描述
这是一个针对 taskwarrior 命令行工具的python API。
它包含两个实现: taskw.TaskWarriorShellout 和 taskw.TaskWarriorDirect。第一个实现是上游taskwarrior核心项目推荐支持的实现。它使用 task export 和 task import 命令来操作任务数据库。第二个实现直接打开任务数据库文件并直接操作它。它存在是为了向后兼容,但仅在必要时使用。
构建状态
分支 |
状态 |
---|---|
master |
|
develop |
获取taskw
安装
使用 taskw 需要先安装 taskwarrior。
使用 pip 从 http://pypi.python.org/pypi/taskw 安装它非常简单
$ pip install taskw
源代码
您可以在github上找到源代码:http://github.com/ralphbean/taskw
示例
查看任务
>>> from taskw import TaskWarrior >>> w = TaskWarrior() >>> tasks = w.load_tasks() >>> tasks.keys() ['completed', 'pending'] >>> type(tasks['pending']) <type 'list'> >>> type(tasks['pending'][0]) <type 'dict'>
添加任务
>>> from taskw import TaskWarrior >>> w = TaskWarrior() >>> w.task_add("Eat food") >>> w.task_add("Take a nap", priority="H", project="life", due="1359090000")
检索任务
>>> from taskw import TaskWarrior >>> w = TaskWarrior() >>> w.get_task(id=5)
更新任务
>>> from taskw import TaskWarrior >>> w = TaskWarrior() >>> id, task = w.get_task(id=14) >>> task['project'] = 'Updated project name' >>> w.task_update(task)
删除任务
>>> from taskw import TaskWarrior >>> w = TaskWarrior() >>> w.task_delete(id=3)
完成任务
>>> from taskw import TaskWarrior >>> w = TaskWarrior() >>> w.task_done(id=46)
灵活性
您可以将 taskw 指向不同的 taskwarrior 数据库。
>>> from taskw import TaskWarrior >>> w = TaskWarrior(config_filename="~/some_project/.taskrc") >>> w.task_add("Use 'taskw'.")
查看配置
>>> from taskw import TaskWarrior >>> w = TaskWarrior() >>> config = w.load_config() >>> config['data']['location'] '/home/threebean/.task' >>> config['_forcecolor'] 'yes'
使用适合Python的类型(日期、UUID等)
>>> from taskw import TaskWarrior >>> w = TaskWarrior(marshal=True) >>> w.get_task(id=10) (10, { 'description': 'Hello there!', 'entry': datetime.datetime(2014, 3, 14, 14, 18, 40, tzinfo=tzutc()) 'id': 10, 'project': 'Saying Hello', 'status': 'pending', 'uuid': UUID('4882751a-3966-4439-9675-948b1152895c') } )
项目详情
下载文件
下载适合您平台文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源代码分发
taskw-2.0.0.tar.gz (42.6 kB 查看哈希值)
构建分发
taskw-2.0.0-py3-none-any.whl (47.8 kB 查看哈希值)