10个版本

0.2.1 2021年12月4日
0.2.0 2020年7月14日
0.1.7 2020年7月14日

#2173解析实现

每月 48 次下载

MIT/Apache

25KB
444

查看Rust代码中每个TODO项的工具

安装

$ cargo install cargo-todo

用法

您可以为TODO项添加参数

//todo 18-11-2001 5 !clement implement getters

支持的参数包括

  • 优先级:1到9之间的数字
  • 截止日期:格式为yyyy/mm/dd的日期
  • 成员:以'!'开头的文本
  • 内容:除上述内容之外的所有文本都将被视为内容


这些参数可以以任何顺序添加,只要它们遵循语法,就会自动添加

运行

$cargo todo
src/main.rs line: 331 //todo 
Member: clement
Priority: 5
Deadline: 2020-08-14
implement getters

默认支持的正则表达式

  • ^s*//s*todo\b (//todo)
  • ^s*//s*fix\b (//fix)
  • ^s*//s*fixme\b (//fixme)

cargo todo现在支持可自定义的正则表达式

将所有自定义正则表达式添加到~/.cargo/todo_config文件中(将在启动时创建)
所有正则表达式都是不区分大小写的

功能

  • -i, --inline : 在一行中显示TODO
$cargo todo -i
src/main.rs line: 331 //todo  Member: clement Priority: 5 Deadline: 2020-08-14 implement getters
  • -v, --verbose : 设置详尽程度
    默认或-vv
    完全详尽 -v 较少详尽
$cargo todo -v
src/main.rs line: 331 //todo 
implement getters
  • -x, --exclude ... : 从列表中排除某些TODO
$cargo todo -x //fix
//wil display every todos expect those having the '//fix' keyword
  • -f, --filter ... : 过滤要显示的TODO
$cargo todo -f //fix
//wil only display todos having the '//fix' keyword
  • -l, --list : 要显示的值的数量
$cargo todo -l 5
///wil display the first 5 todos
  • m, --member ... : 从成员过滤
$cargo todo -m clement
///wil only display todos having as member clement
  • -s, --sort : 对TODO进行排序 [可能值:priority, deadline, member]
$cargo todo -s priority
///wil display todos sorted by their priority

旧版模式

可用于旧代码库,因为它支持todo!()和unimplemented!()

将显示所有带有支持标记的行(如下所示)以及宏内部的内容

/!\ 旧版模式比默认模式慢得多,并且缺少许多酷炫功能

示例

代码库

todo!("implement getters");

运行

$ cargo todo --legacy
src/main.rs TODO Line  125 : implement getters

支持标记

  • //todo
  • todo!()
  • unimplemented!()
  • fix

/!\ 警告

cargo todo将不再使用正则表达式,而只使用上述列出的默认标记

依赖项

~4–13MB
~131K SLoC