6 个版本
0.1.5 | 2021 年 8 月 9 日 |
---|---|
0.1.4 | 2021 年 8 月 7 日 |
#22 in 辅助技术
18KB
302 行
目录
Take Breath
Take Breath 是一款提醒您在电脑前休息的应用程序。
算法
当程序启动时,它会启动一个工作时间计数器。当工作时间计数器超过 45 分钟时,程序会通知您休息,并启动一个电脑空闲时间计数器。当电脑空闲时间计数器小于 15 分钟时,程序会通知您休息时间太短,您应该休息更长一段时间。否则,它将再次启动工作时间计数器。
路线图
- 基本算法实现
- 处理工作期间的空闲时间
- 将应用程序分为库和二进制部分
- 自定义功能
- 编译功能
- 动作自定义功能
- 更好的错误处理
- 自动启动功能
- 命令行界面实现
- 文档
- 支持各种操作系统
- Linux (仅 X)
- Mac (未测试)
- Windows (未测试)
构建
为了编译 Take Breath 程序,您应该安装 Rust 工具链。如果您已经安装了,只需运行以下 shell 命令
git clone https://github.com/markmelix/take-breath.git
cd take-breath
cargo build --release
它将编译好的 take-breath
文件放入 ./target/release 目录。
您还可以使用以下命令获取编译好的 take-breath 程序,而无需克隆仓库:“cargo install take-breath”。它将编译好的 take-breath 文件放入 ~/.cargo/bin 目录。
编译功能
编译功能允许您仅使用所需的程序功能。例如,如果您不使用配置文件或通知,可以禁用这些功能。每个功能的描述
名称 | 描述 | 依赖项 |
---|---|---|
notify | 通知 | notify-rust |
config | 配置文件 | serde/derive, humantime-serde, toml, dirs |
cli | 命令行界面功能 | clap |
默认情况下,所有这些功能都被激活。如果您只想使用特定功能,请在 cargo build/install 命令的末尾添加 --no-default-features --features
。例如
# Activate only config and cli features. So, we can configure the program using
# configuration file (see customization section) and command arguments.
cargo build --release --no-default-features --features config,cli # if you build program manually
cargo install --no-default-features --features config,cli # if you use cargo install
# Activate only notify feature. So, we cannot configure program at all, but we
# can see notification messages to get information.
cargo build --release --no-default-features --features notify # if you build program manually
cargo install --no-default-features --features notify # if you use cargo install
用法
请注意,目前程序仅支持Linux系统
请在终端中运行以下命令:“take-breath &
”。该命令将以后台进程运行take-breath
程序。
自定义
首次启动程序时,它将自动在以下目录之一创建take-breath
配置目录,其中包含config.toml文件,具体取决于系统
平台 | 值 |
---|---|
Linux | $XDG_CONFIG_HOME或$HOME/.config |
macOS | $HOME/Library/Application Support |
Windows | %USERPROFILE%\AppData\Roaming |
创建后,配置文件包含以下数据
[work_time]
duration = '45m'
idle_to_pause = '2m'
[rest_time]
duration = '15m'
此文件以TOML格式编写。每个字段的说明
字段 | 描述 | 默认值 |
---|---|---|
work_time.duration | 工作时间 | 45m |
work_time.idle_to_pause | 计算机空闲多长时间才会暂停工作时间计数器 | 2m |
rest_time.duration | 休息时间 | 15m |
许可证
Take Breath遵循MIT许可。
贡献
欢迎贡献。
依赖项
~0–25MB
~333K SLoC