2 个版本
0.1.1 | 2021 年 3 月 15 日 |
---|---|
0.1.0 | 2021 年 3 月 13 日 |
在 命令行工具 中排名第 2721
68KB
1.5K SLoC
ct
一个命令行时间跟踪工具。
什么是 ct
ct
如其名所示,是一个 CLI 时间跟踪工具,用 Rust 编写,根据项目的方式跟踪您的时间。
计划用途
因为这项开发刚刚开始,所有这些都可能改变。
开始一个新项目
当在非存在的项目上使用 start
时,这将自动完成。
$ ct create ct
Created new project 'ct'
跟踪项目中花费的时间(可能仅在 v0.2.0 之前)
开始跟踪新项目
$ ct start -p ct
Created new project 'ct'
Started tracking project 'ct'
开始跟踪现有项目
$ ct start -p ct
Time spent on project 'ct' already: 8h5m4s
Started tracking project 'ct'
在跟踪另一个项目的同时开始跟踪现有项目
$ ct start -p ct
Already tracking project 'npp'
Stopped tracking project 'npp'
Time spent on project 'npp' already: 8h5m4s
Time spent on project 'npp' in this session: 4h0m0s
Time spent on project 'ct' already: 8h5m4s
Started tracking project 'ct'
在跟踪另一个项目的同时开始跟踪新项目
$ ct start -p ct
Already tracking project 'npp'
Stopped tracking project 'npp'
Time spent on project 'npp' already: 8h5m4s
Time spent on project 'npp' in this session: 4h0m0s
Created new project 'ct'
Started tracking project 'ct'
停止跟踪项目
$ ct stop -p # without a specific project
Time spent on project 'ct' already: 8h5m4s
Time spent on project 'ct' in this session: 4h0m0s
Stopped tracking project 'ct'
$ ct stop -p ct # with a specific project
Time spent on project 'ct' already: 8h5m4s
Time spent on project 'ct' in this session: 4h0m0s
Stopped tracking project 'ct'
跟踪项目中任务的时间(v0.2.0)
开始跟踪新任务
$ ct start ct.tracking
Started tracking task 'tracking' in project 'ct'
开始跟踪现有任务
$ ct start ct.tracking
Time spent on 'ct.tracking' already: 8h5m4s
Started tracking task 'tracking' in project 'ct'
停止跟踪
$ ct stop #without specific task
Stopped tracking task 'tracking' in project 'ct'
Time spent on 'ct.tracking' already: 8h5m4s
Time spent on 'ct.tracking' in last session: 4h0m0s
$ ct stop ct.tracking #with a specific task
Stopped tracking task 'tracking' in project 'ct'
Time spent on 'ct.tracking' already: 8h5m4s
Time spent on 'ct.tracking' in last session: 4h0m0s
在另一个任务正在进行时开始跟踪任务
$ ct start ct.export
Already tracking task 'tracking' in project 'ct'
Stopped tracking task 'tracking' in project 'ct'
Time spent on ct.tracking already: 8h5m4s
Time spent on ct.tracking in last session: 4h0m0s
Started tracking task 'export' in project 'ct'
路线图/计划功能
0.1.0
- 能够跟踪 JSON 文件中的时间
- 目前只支持基于项目的跟踪
- 基本时间报告
- 能够列出已存在的项目(目前只限于项目)
- 能够清除所有项目
- 能够删除特定的项目
0.2.0
- 特定任务的跟踪
- 能够手动添加/减去任务/项目中的时间
- 使用 termcolor 等工具的彩色输出
- 使用 config.json/config.toml 配置
ct
- 默认保存位置
- 参数默认值(颜色等)
- 时间格式
- 以某种方式与 0.1.0 兼容
- 升级命令升级旧记录
- 基于项目的传统时间跟踪
0.3.0
- 导出到 markdown(和其他格式)
- 以多种格式报告(并导出)按项目划分的时间,例如
- 每天花费的时间
- 能够报告一天中花费的时间
目前未计划(但很好)
- 加密花费的时间
- 备份选项
- 能够备份跟踪的数据并恢复备份
- 多用户(?)
- VS Code 扩展(?)
- 用户界面集成
- 绑定到工作区
- 以某种方式集成到 git(见下文)
- Git 集成
- 扫描 ct 被调用的路径,检查它是否是 git 仓库,并使用一些元数据(项目、分支等)
- 一个图形用户界面客户端,可能使用类似 libui 的库。
依赖项
~5–15MB
~200K SLoC