3 个版本 (破坏性更新)

0.3.0 2024年2月14日
0.2.0 2024年2月12日
0.1.0 2024年2月10日

#164 in 日期和时间

GPL-2.0-or-later

28KB
452

Crates.io Build Test

🎂 Bday 🎉

轻松记住并查看即将到来的生日 🎂

功能

  • 显示生日还有多远
  • 支持不指定年份的日期
  • 支持时区,因此您可以在朋友国家午夜时分向他们送上生日祝福
  • 非常快速,即使处理大量数据集 ⚡️

用法

# Adds a birthday
$ bday add --name "Hiyajo Maho" --date 02/11/1989
Added entry for Hiyajo Maho, born: 02/11/1989

# Adds a birthday, without specifying the year
$ bday add --name "Akiha Rumiho" --date 03/04
Added entry for Akiha Rumiho, born: 03/04

# List all birthdays
$ bday list
╭───┬──────────────┬─────────────┬─────────┬─────────────╮
│ # │ Name         │ Date        │ Age     │ In          │
├───┼──────────────┼─────────────┼─────────┼─────────────┤
│ 1 │ Hiyajo Maho  │ 02 November │ 34 🡒 35 │ in 8 months │
├───┼──────────────┼─────────────┼─────────┼─────────────┤
│ 2 │ Akiha Rumiho │ 03 April    │ ?       │ in 2 months │
╰───┴──────────────┴─────────────┴─────────┴─────────────╯

# List birthdays that will occur before a date
$ bday list --before 15/05/2024
╭───┬──────────────┬──────────┬─────┬─────────────╮
│ # │ Name         │ Date     │ Age │ In          │
├───┼──────────────┼──────────┼─────┼─────────────┤
│ 1 │ Akiha Rumiho │ 03 April │ ?   │ in 2 months │
╰───┴──────────────┴──────────┴─────┴─────────────╯

# List only the n birthdays closest to today
$ bday list --limit 1
╭───┬──────────────┬──────────┬─────┬─────────────╮
│ # │ Name         │ Date     │ Age │ In          │
├───┼──────────────┼──────────┼─────┼─────────────┤
│ 1 │ Akiha Rumiho │ 03 April │ ?   │ in 2 months │
╰───┴──────────────┴──────────┴─────┴─────────────╯

显示未来7天内将要发生的生日
我的一个个人喜好是将此添加到我的 ~/.bashrc 中以显示即将到来的生日。

bday -f /tmp/aaa.toml list --before $(date -d "+7 days" "+%Y-%m-%d") 2> /dev/null

请注意,如果没有即将到来的生日,则此功能不会显示任何内容。

安装

使用 Cargo

cargo install bday

从源代码

git clone "https://github.com/Matthieu-LAURENT39/bday"
cd bday
cargo install --path .

特别感谢

本项目受 IonicaBizau 的 "birthday" 工具 启发。
我想尝试用 Rust 编写自己的版本作为学习经验。

许可证

本程序是免费软件;您可以根据自由软件基金会发布的 GNU 通用公共许可证的条款重新分发和/或修改它;许可证版本为 2,或者(根据您的选择)任何较新版本。

依赖关系

~5–17MB
~142K SLoC