网淘吧来吧,欢迎您!

topydo技能使用说明

2026-03-30 新闻来源:网淘吧 围观:18
电脑广告
手机广告

topydo - Todo.txt 任务管理器

topydo 是一款强大的命令行工具,用于管理 todo.txt 格式的任务。它支持依赖关系、截止日期、开始日期、重复任务、优先级、项目和上下文。

任务格式参考

(A) 2025-01-11 Task text +Project @Context due:2025-01-15 t:2025-01-10 rec:1w star:1
│   │          │         │        │        │             │            │      │
│   │          │         │        │        │             │            │      └─ Star marker
│   │          │         │        │        │             │            └─ Recurrence
│   │          │         │        │        │             └─ Start/threshold date
│   │          │         │        │        └─ Due date
│   │          │         │        └─ Context
│   │          │         └─ Project
│   │          └─ Task description
│   └─ Creation date
└─ Priority (A-Z)

安装

Homebrew (macOS,推荐方式)

brew install topydo

pip (所有平台)

pip3 install topydo

包含可选功能:

topydo

pip3 install 'topydo[columns,prompt,ical]'

apt (Ubuntu/Debian)

sudo apt install python3-pip && pip3 install topydo

配置

配置文件位置(按优先级顺序):

  • topydo.conf.topydo(当前目录)
  • ~/.topydo~/.config/topydo/config
  • /etc/topydo.conf

示例~/.topydo

[topydo]
filename = ~/todo.txt
archive_filename = ~/done.txt
colors = 1
identifiers = text

[add]
auto_creation_date = 1

[sort]
sort_string = desc:importance,due,desc:priority
ignore_weekends = 1

添加任务

基本任务:

topydo add "Buy groceries"

按优先级(A为最高):

topydo add "(A) Urgent task"

按项目和情境:

topydo add "Write report +ProjectX @office"

按截止日期(绝对日期):

topydo add "Submit proposal due:2025-01-15"

按截止日期(相对日期):

topydo add "Call mom due:tomorrow"

按截止日期(工作日):

topydo add "Weekly review due:fri"

按开始/阈值日期:

topydo add "Future task t:2025-02-01"

按循环周期(每周):

topydo add "Water plants due:sat rec:1w"

按严格循环周期(始终在每月1日):

topydo add "Pay rent due:2025-02-01 rec:+1m"

按依赖关系(必须在任务1之前完成):

topydo add "Write tests before:1"

作为任务1的子任务:

topydo add "Review code partof:1"

列出任务

列出所有相关任务:

topydo ls

包含隐藏/被阻止的任务:

topydo ls -x

按项目筛选:

topydo ls +ProjectX

按情境筛选:

topydo ls @office

按优先级筛选:

topydo ls "(A)"

按优先级范围筛选:

topydo ls "(>C)"

筛选今日截止的任务:

topydo ls due:today

筛选逾期任务:

topydo ls "due:<today"

筛选周五前截止的任务:

topydo ls "due:<=fri"

组合多个筛选条件:

topydo ls +ProjectX @office due:today

排除情境:

topydo ls -- -@waiting

按优先级排序:

topydo ls -s priority

按截止日期降序排序,然后按优先级排序:

topydo ls -s desc:due,priority

按项目分组:

topydo ls -g project

限制为5个结果:

topydo ls -n 5

自定义输出格式:

topydo ls -F "%I %p %s %{due:}d"

输出为JSON格式:

topydo ls -f json

完成任务

按ID完成任务:

topydo do 1

完成多个任务:

topydo do 1 2 3

完成今天到期的所有任务:

topydo do -e due:today

使用自定义日期完成任务:

topydo do -d yesterday 1

优先级管理

设置优先级A:

topydo pri 1 A

为多个任务设置优先级:

topydo pri 1 2 3 B

移除优先级:

topydo depri 1

任务标记

设置截止日期:

topydo tag 1 due tomorrow

标记任务为重要:

topydo tag 1 star 1

移除标签:

topydo tag 1 due

设置带相对日期的自定义标签:

topydo tag -r 1 review 2w

修改任务

向任务追加文本:

topydo append 1 "additional notes"

追加截止日期:

topydo append 1 due:friday

在文本编辑器中编辑任务:

topydo edit 1

编辑项目中的所有任务:

topydo edit -e +ProjectX

删除任务

按ID删除:

topydo del 1

批量删除:

topydo del 1 2 3

按表达式删除:

topydo del -e completed:today

依赖关系

添加依赖(任务2依赖于任务1):

topydo dep add 2 to 1

任务2是任务1的一部分:

topydo dep add 2 partof 1

列出依赖于任务1的内容:

topydo dep ls 1 to

列出任务1依赖的内容:

topydo dep ls to 1

移除依赖:

topydo dep rm 2 to 1

可视化依赖关系(需要graphviz):

topydo dep dot 1 | dot -Tpng -o deps.png

推迟任务

推迟一周:

topydo postpone 1 1w

推迟三天:

topydo postpone 1 3d

推迟包括开始日期:

topydo postpone -s 1 1w

其他命令

排序todo.txt文件:

topydo sort

撤销上一条命令:

topydo revert

显示撤销历史:

topydo revert ls

列出所有项目:

topydo lsprj

列出所有上下文:

topydo lscon

归档已完成任务:

topydo archive

相对日期

  • 今天,明天,昨天
  • 工作日:周一,周二,周三,周四,周五,周六,周日
  • 时间段:1天(日),2周(周),3个月(月),1年(年)
  • 工作日:5b(不包括周末)

排序/分组字段

  • 优先级,截止日期,创建日期,完成日期
  • 重要性,平均重要性
  • 项目,上下文,文本,长度

前缀用desc:表示降序。示例:desc:重要性,截止日期

提示

  • 使用清晰、易于理解的格式向用户展示结果
  • 启用稳定的文本ID:设置标识符 = 文本在配置中
  • 标记重要任务:添加星标:1标签
  • 默认隐藏的标签:id,p,ical
  • 重要性 = 优先级 + 截止日期临近度 + 星标状态

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部

相关文章

您是本站第341052名访客 今日有39篇新文章/评论