3 个版本 (破坏性更新)
0.3.0 | 2024 年 3 月 8 日 |
---|---|
0.2.0 | 2024 年 1 月 7 日 |
0.1.0 | 2024 年 1 月 1 日 |
#8 in #mini
38KB
964 行
一个迷你 todo-cli
文档可在 docs.rs 找到
关于
这是一个用 Rust 编写的用于学习的小型 todo 应用。
功能
- 一个易于使用的 TUI,包含所有快捷键的解释
- 任务存储在本地存储中,以便以后可以访问
- 高性能,即使在慢速设备上也没有延迟
- 适用于不需要 TUI 的高级用户的 cli 命令
如何安装
使用二进制文件
从 GitHub 最新版本下载您平台的可执行文件!
使用 cargo
使用 git 克隆此仓库
git clone "https://github.com/Manikya-Sharma/todo-cli"
进入目录并使用 Cargo 构建
cd todo-cli
cargo build --release
只需在 target/release
目录中运行创建的可执行文件
或者,在 Cargo.toml
中提供 opt-level=3
时使用 cargo run。
用法
开始 TUI
不带任何参数运行以启动 TUI
todo-cli
帮助
获取有关 cli 的帮助信息
todo-cli help
您还可以在任何子命令上运行帮助,例如
todo-cli list help
列表
列出所有任务
todo-cli list
列出所有尚未完成的任务
todo-cli list -p true # p stands for pending
列出所有已完成的任务
todo-cli list -c true
使用模糊搜索查找任务
todo-cli list -f "buy" # list all tasks with buy
您可以组合多个标志以进行更具体的搜索
todo-cli list -p true -f "cmp" # all pending tasks with fuzzy
# e.g. "organize computer" task
# which is pending will match
清除所有数据
todo-cli clean
编辑任务
目前,只有 TUI 支持编辑任务,但 CLI 功能将很快添加!
制作方式
todo-cli 采用非常简单的方法,将所有任务保存在 csv 文件中,并在需要时高效访问。
本项目站在巨人的肩膀上,通过管理大多数外部依赖项的要求。
改进空间
该项目尚未完成,需要许多改进
- 在 TUI 中导航任务时提高性能
- 为任务添加哈希值并正确存储在 csv 文件中,以实现快速访问和管理
- 添加仅使用 CLI 添加和管理任务的选项
- 对于任务 ID,使用哈希算法而不是 RNG
缺少的功能/错误
- 还不能使用 CLI 编辑任务
- 过多的任务会从 TUI 中溢出
- 在TUI中尚无方法了解任务ID或状态
- 任务在TUI中以原始方式渲染,不提供定制。
- 没有存储任务创建/编辑时日期的配置
一些雄心勃勃的功能
此列表包括目前不是高优先级但可以改进用户体验的功能
- 允许使用yml/toml自定义主题
- 通过允许加粗、斜体、高亮、内部和外部链接使任务更丰富
- 适用于遵循常见想法的任务标签
- 进行中任务额外的状态
依赖关系
~9–18MB
~207K SLoC