办公 · 2024年 1月 3日 0

todo.txt

Todo.txt是lifehacker的Gina Trapani使用bash编写的一个todo列表管理器。Todo.txt 可以应用于任何需要管理任务和提高生产力的场景,特别适用于个人和小团队使用。你可以在命令行对待做事宜进行添加、删除、修改优先级,以及其他各种操作。所有内容都保存在文本文件中。

例如任务A依赖于任务B, 你可以将B设置为A的子任务,只有你完成A之后,B才会出现。

安装

  1. Download the latest stable release of Todo.txt CLI (available as a ZIP or TAR archive) and extract it.
  2. Open a command window. On Windows, this is Cygwin Bash Shell (not Command Prompt!); elsewhere, this is often called Terminal. It usually presents you with a $ prompt. cd into the directory where you extracted todo.sh. Make the todo.sh script executable:

使用方法

  1. 使用 add 添加任务
    t add "Make peace between cylons and humans"
  2. 使用 “+” 关联任务和项目
    t add "Make peace between cylons and humans +国家基金"
  3. 使用 “@” 标注 您将在什么背景下(在哪里、用什么来)完成一项任务
    t add "Make peace between cylons and humans @office"
  4. 可以根据需要多次使用 “@” 和 “+” 表示场景和项目
    t add "Make peace between cylons and humans @office +国家基金 "
  5. 使用 “list”/ “ls” 查看 所有的任务
    t list / t ls
  6. 通过项目名称查看某一项目的所有任务
    t ls +国家基金
  7. 也可以通过关键字查看相关的任务
    t ls cylon
  8. 还可以通过多个关键字过滤任务
    t ls @office +project
  9. 使用 “pri” 操作确定任务的优先级
    t pri 3 A
    这样每种优先级都会由不同的颜色显示
  10. 只显示设置了优先级的任务
    t lsp
  11. 使用 “depri” 取消任务的优先级
    t depri 2
  12. 使用 “do” 命令将任务标记为完成
    t do 1

基本格式

  • todo.txt 文本文件中每行表示一个任务
  • 通过符号((), +, @, :, 空格)划分关键信息
  • 不同信息的输入需要如图所示的特定顺序,可选内容可以空缺

待办事项(todo.txt)

(A) 2023-01-01 email to professor @email

  • (A): 如果要声明优先级,则应出现在行首。以括号中的大写字母表示
  • 2023-01-01可以选择添加创建日期YYYY-MM-DD,应出现于除优先级外的第一个位置
  • 使用@引导内容标签,+引导项目标签

完成事项(done.txt)

x 2023-01-10 2023-01-01 first coursework @cw

  • x: 以小写字母 x 加空格开头的任务标记已完成
  • 2023-01-10: 完成日期位于 x 后,以空格分隔

附加元数据(可选)

使用 key:value 的格式定义附加元数据并放于句尾,例如:

  • due:2023-02-01 设置截止时间-
  • pri:A 再完成事项中保留原始优先级
    参考文献:
    todo.txt
    scateu blog

常用命令:

列出代办事项 todo.sh ls

添加代办事项 todo.sh add "THING @context"

标记为完成todo.sh do ITEM#[, ITEM#, ITEM#, ...]

将完成事项移动到 done.txt 文件 todo.sh archive

删除代办事项 todo.sh rm ITEM# [TERM]

修改任务内容 todo.sh replace ITEM# "UPDATED TODO"

修改任务优先级 todo.sh pri ITEM# PRIORITY

手机端同步

dropbox

  • 手机端:todotxt for android
  • 电脑端:alias t='~/Dropbox/todo/todo -d ~/Dropbox/todo/todo.cfg'

webdav

  1. 配置 webdav 服务,详见 配置webdav服务
  2. 下载安装 simpletask.apk
  3. 打开 simpletask.apk ,输入 http://ip:port/todo/,输入用户名密码

挂载服务器目录到本地

使用sshfs挂载远程linux文件系统或目录

sshfs liupei@152.136.140.85:/sharedav/todo tmp/

然后像操作本地文件一样操作远程文件。

reference

crontab

crontab 定时同步(每隔五分钟)

*/5 * * * * /home/alex/bin/backup.todo.sh

对应的 todo.sh 脚本文件

rsync -azP /home/alex/bin/todo tx:sharedav/
TOC