#日记 #git仓库 #命令行 #用户 #条目 #笔记本 #保持

程序+库 cli-diary

一个基于 CLI 的日记工具,用于动态添加条目

8 个版本 (破坏性更改)

0.8.0 2024年2月14日
0.7.0 2022年2月22日
0.6.0 2022年1月22日
0.5.0 2022年1月14日
0.1.0 2021年11月7日

#1415 in 命令行工具

每月40次下载

Apache-2.0

60KB
1.5K SLoC

CICD Latest version

cli-diary

使用命令行来保持日记。该程序旨在为 CLI 用户设计,以便快速使用命令行保持日记或笔记本。

安装

使用 git 克隆此仓库,并使用 cargo 运行以下命令

cargo build --release

然后将生成的二进制文件 ./target/release/diary 移动到 ~/.cargo/bin/。之后,您可以使用 diary 命令运行程序。

或者,使用 cargo 从 crates.io 安装它

cargo install cli-diary

第一步

通过指定日记文件夹的位置来设置日记。您可以选择 cd 到创建 diary/ 文件夹的位置,或者记下文件路径。然后您需要使用以下子命令 init

diary init <path/to/create>

路径是可选的,如果不提供,新的 diary/ 文件夹将在当前目录中创建。您还可以传递一个可选的 --prefix 标志。提供的值将用作日记文件名的前缀。默认情况下,使用 diary 作为前缀,更多内容请见下文。最后,您还可以包括 --repo 标志以在日记文件夹中自动初始化一个 git 仓库。

配置

在您首次运行 init 后,日记的配置文件将自动放置在以下位置

~/.config/diary/diary.toml

内容

以下是一个示例配置文件。

# The location of the diary.
diary_path = '/home/user/diary'

# The prefix assigned to the diary entries filename,
# e.g. diary_2020-01-01.md
prefix = 'diary'

# The file types to use for diary entries.
# Currently supported: md, rst.
file_type = 'rst'

用法

新命令

您每天应该运行的第一个命令是 new 命令。这将为当天创建一个新的条目(目前只允许一个)。如果您提供 -o--open 标志,您的编辑器将打开,您将能够快速创建第一个条目。保存并退出您的编辑器以将内容添加到条目中。

diary new -o

添加命令

add 命令允许您在动态地添加今天的条目。类似于 new -oadd 命令会打开您的系统编辑器,允许您在新的条目中键入内容。为了使其更简单,建议您使用 nano 或 vim 等命令行文本编辑器。

add 命令还有一个可选的 --tag 标志,允许您指定一个二级标题标签,以自动将其放置在条目上方。

diary new --tag Tip
Content of the new entry.

结果如下

## Tip

Content of the new entry.

Tip
^^^

Content of the new entry.

打开命令

open 命令允许您打开今天的条目以进行审查。类似于 add,它将打开您的系统编辑器,但将打开整个文件。

diary open

要打开不同日期的条目,您可以在 %Y-%m-%d 格式的日期旁边提供 --date 标签,其他格式可能也有效。

dairy open --date 2021-11-01

提交命令

commit 命令允许您将条目提交到 Git 仓库,而无需导航到日记文件夹。

diary commit -m "An optional commit message".

要提交不同日期的条目,您可以在 %Y-%m-%d 格式的日期旁边提供 --date 标签,其他格式可能也有效。

dairy commit --date 2021-11-01

还有一个 --push 标志可以立即推送到远程仓库。

日记文件夹结构

diary/ 文件夹组织成按月划分的子文件夹,每天条目都是一个 markdown 文件。

diary
└── 2021-11
    ├── diary_2021-11-06.md
    └── diary_2021-11-07.md

致谢

向 Cargo 库的作者表示衷心的感谢。这个工具的架构受到了它的强烈启发。

依赖关系

~12–22MB
~403K SLoC