10个版本
0.1.12 | 2021年5月12日 |
---|---|
0.1.11 | 2021年5月12日 |
0.1.8 | 2020年2月15日 |
#26 in #time-tracking
37 每月下载量
115KB
3.5K SLoC
mite时间跟踪的命令行客户端
要求
Rust >=1.41.0(除非你使用预编译的二进制文件)
安装
简单方法
cargo install acari-cli
备选方案:检出项目并执行
cargo install --path cli --force --locked
或者你可以从发布页面下载预编译的静态链接二进制文件。
Shell 完整性
Fish
将 cli/shell_completions/acari.fish
复制到 ~/.config/fish/completions
。
Zsh
将 cli/shell_completions/zsh/_acari
复制到你的 $fpath
中(通常是类似 /usr/local/share/zsh/site-functions
或 /usr/share/zsh/site-functions
的位置)。
注意:现在这个功能测试得很少,可能需要以不同的方式进行。
Bash
目前有三个选项
- 迁移到稍微更有色彩的
zsh
- 迁移到更多色彩的
fish
- 贡献你自己的完整性。我将非常乐意接受拉取请求。
基本用法
初始化
您需要从mite获取API令牌。这可以在您的账户页面找到。然后您只需执行以下操作:
acari init
它将询问您的mite域名和令牌。
或者您可以直接创建一个 ~/.config/acari/config.toml
domain = '<your-company>.mite.yo.lk'
token = '<your-token>'
cache_ttl_minutes = 1440
之后,您可以检查您的连接:
acari check
它将打印您的账户和用户信息。
查询客户/项目/服务
列出客户
acari customers
列出项目
acari projects
或者如果您对特定客户的计划感兴趣
acari projects "<customer-name>"
列出服务
acari services
所有这些信息都将被缓存。您可以在您的 ~/.config/acari/config.toml
中修改缓存持续时间(默认:1天)。
如果您认为缺少某些内容,您可以尝试使用带有 --no-cache
选项的上述命令运行,或者运行
acari clear-cache
或者简单地删除 ~/.cache/acari
目录。
查询时间条目
acari entries <timespan>
其中 timespan
可以是
today
或now
:仅仅今天yesterday
:仅仅昨天this-week
或week
:本周的所有条目last-week
:上周的所有条目this-month
或month
:本月的所有条目last-month
:上月的所有条目YYYY-MM-DD
:特定日期的条目YYYY-MM-DD/YYYY-MM-DD
:从某一天到另一天之间的所有条目
跟踪时间
开始时间跟踪
acari start <customer-name> <project-name> <service-name>
可选地,您也可以添加一个起始偏移量
acari start <customer-name> <project-name> <service-name> <minutes>
而分钟可以是实际分钟或以下形式:hh:mm
。
停止时间跟踪
acari stop
显示当前时间跟踪
acari tracking
(注意:这可能会改变,尚未找到好的命名方法)
修改时间条目
更改今天的条目
acari set <customer-name> <project-name> <service-name> <minutes>
而分钟可以是实际分钟或以下形式:hh:mm
。
更改指定日期的条目
acari set <customer-name> <project-name> <service-name> <minutes> <date>
其中 date
可以是
today
或now
:更改今天yesterday
:更改昨天YYYY-MM-DD
:更改指定日期
注意:如果指定的日期包含同一客户、项目和服务的多个条目,这些条目将被压缩为单个条目。设置命令的目的是仅设置该日任务所花费的时间。
或者,如果您只想添加条目而不考虑该项目/服务的现有条目,您可以使用
acari add <customer-name> <project-name> <service-name> <minutes>
修改输出
所有命令的输出都可以通过 --output
或 -o
选项进行修改。例如:
acari --output=json customers
支持输出格式有
pretty
:显示美观的表格(这是默认值)json
:将所有可用信息作为json格式输出flat
:一种非常紧凑的pretty
形式,可能有助于在shell脚本或awk
中处理信息
配置文件
如果您需要在多个mite账户中跟踪时间,可以使用 --profile
或 -p
选项为每个额外账户创建一个配置文件。例如:
acari --profile=<name> init
acari --profile=<name> customers
... 这是一个相当特殊的用例,不幸的是,这是我的一个用例,所以 ...
依赖项
~8–24MB
~313K SLoC