3 个版本 (稳定版)
1.1.0 | 2023年12月20日 |
---|---|
1.0.3 | 2023年12月6日 |
0.1.0 | 2023年11月13日 |
#1403 在 命令行工具 中
14KB
232 行
Clorange
项目的想法是提供一个简单易用的以 shell 为中心的计数器。
(名字来源于《机械姬橙》。我不知道“机械”听起来有点像计数。)
你是否曾经编写了一个简单的函数,结果因为想要计数而变得过于复杂?
让我给你举一个例子。
我有一个鱼函数,它作为一个番茄钟计时器工作。大致是这个样子
function pom
while true
termdown 25m || break
termdown 5m || break
end
end
你不希望随时知道我完成的工作周期数量,对吧?
这就带我们来到了这个可怕的表示式,每次一个周期完成时都会在文件中存储的数字上加一:printf (math (cat /tmp/workie) + 1) > /tmp/workie
真是可怕!当然,这可能是你编写并永远不会再次看过的函数,但你没有方便的方法与这个数字进行交互。
我绝对讨厌输入完整的路径,而现在要更改或查看值,我需要 nvim /tmp/workie
或 cat /tmp/workie
。
当然,我可以为这两个特定的命令创建别名,但这只是把问题掩盖起来,因为我可能要计数的对象是无限的,因此需要无限多的文件和别名。
更不用说,你不再有像“增加”、“减少”等良好的抽象,而是必须 手动输入 printf (math (cat /tmp/workie) + 1) > /tmp/workie
这样的表示式,我真诚地希望你不希望这样做。
该程序通过提供一个干净、简洁的界面来修改单数计数器文件来解决这一问题。
无需预先创建文件:clorange 会为您完成。
简洁简单的子命令:increment
(增加)、decrement
(减少)、add
(添加)、sub
(减去)、show
(显示)——它们确实如您所想的那样执行。
您甚至不需要手动输入它们!所有子命令都有方便的别名,您可以在使用说明部分了解它们。
当您需要设置任意值时,无需手动编辑文件——使用clorange instances set 69
将数字 69 写入名为 "instances" 的计数器中。
想要确保计数器文件存在以供娱乐?我们有一个工具,名为 clorange instances new
。
使用说明
By default, clorange stores counters in a directory named 'clorange' located in
your OS' data directory.
* Linux: /home/username/.local/share/clorange
* MacOS: /Users/username/Library/Application Support/clorange
* Windows: C:/Users/username/AppData/Roaming/clorange
You can override it by setting the environment variable CLORANGE_DATA_DIR to the
path you want.
An even stronger override is using the -d / --data flags.
Both don't require you to create the subdirectories in the path beforehand.
Each counter uses its own file (which contains a single number), that you modify
with subcommands.
The default value in a new counter file is 0.
Counter files are created automatically once you call any subcommand.
You can specify parent directories in the <COUNTER> argument, and they also don't
have to exist beforehand.
The relative-looking path is effectively relative to the data directory.
Usage: clorange [OPTIONS] [COUNTER] [COMMAND]
Commands:
increment [aliases: inc, i]
decrement [aliases: dec, d]
new Ensures that the counter file exists, and creates it if it
doesn't [aliases: create, n]
reset Set the counter to 0. Acts as an equivalent alias to `set 0`
[aliases: r]
set [aliases: t]
add [aliases: a]
subtract [aliases: s, sub]
show [aliases: v, see, look, view]
help Print this message or the help of the given subcommand(s)
Arguments:
[COUNTER] Specify a path to a counter file, relative to the data directory
Options:
-d, --data <PATH> Specify the directory to make the counter files in
-c, --clear Delete the default data directory along with all the counter
files, and then immediately exit. You would usually do this
before uninstalling clorange D: Or to just clean up old
unused counters :D"
-h, --help Print help
-V, --version Print version
安装
cargo install clorange
也支持cargo-binstall
和cargo-quickinstall
。
卸载
clorange --clear
cargo uninstall clorange
依赖关系
约3-15MB
约158K SLoC