hoard 项目介绍
概述
hoard
是一个命令组织工具,旨在帮助用户收集和管理复杂或冗长的命令。对于那些常用但记不住的命令,hoard
提供了一种方便的方法来保存它们。每个保存的命令,hoard
会记录下以下信息:
- 命令本身(可以使用可自定义的标记符,例如默认的
#
) - 名称
- 描述
- 所在的命名空间
- 标签(可选)
如果用户在大量的命令历史中迷失,找不到特定的命令,例如无数 docker
命令中的某一个,hoard
可以大显身手。为命令指定名称和描述后,再次查找该命令将变得更加容易。hoard
并不是用来替代像 fzf
、atuin
等 shell 历史查找工具,而是应该与这些工具配合使用。同时,hoard
还支持与 ChatGPT 的集成。
安装指南
hoard
的安装方法多样,支持多种操作系统。
从源码安装
首先使用 rustup 配置 Rust 环境,然后运行:
cargo install hoard-rs
或者自行构建:
cargo build --release
构建完成后,将二进制文件放置到需要的目录(例如 /usr/local/bin/hoard
),或者使用:
cargo install --path .
Linux 平台
支持的发行版包括 Ubuntu、Arch、EndeavourOS。运行以下命令安装:
./install.sh
对于 fish
shell 用户:
LATEST_RELEASE=1.4.2 ./install.fish
对于 AUR (Arch Linux)
paru -S hoard
对于 macOS
使用 Homebrew:
brew tap Hyde46/hoard
brew install hoard
使用 MacPorts:
sudo port install hoard-cli
Windows 平台
建议从源码安装。
使用方法
保存新命令
要保存一个新命令:
hoard new
如果保存时某些参数未知,可以使用 #
(或自定义标记符)。你还可以为参数命名,例如:
echo "My name is #first and I live at #city. Did I tell you my name, #first?"
搜索命令
使用快捷键:
<Ctrl-h>
或者,未安装插件时,可以使用交互式搜索,通过以下命令手动复制命令:
hoard list
ChatGPT 集成
运行 hoard list
时,使用快捷键 Ctrl-a
可以输入提示,让 ChatGPT 根据提示生成并保存新命令。需要 OpenAI 账户和 API Key,可以设置环境变量或在配置文件 ~/.config/hoard/config.yml
中进行配置。
同步命令
使用 hoard sync
实现多终端同步:
-
注册账户:
hoard sync register
-
登录:
hoard sync login
-
保存本地命令至云端:
hoard sync save
-
在其他设备上获取并合并命令:
hoard sync get
命令管理
-
删除命令:
hoard remove <name>
-
删除命名空间下的所有命令:
hoard remove_namespace <namespace_name>
-
编辑命令:
hoard edit <name>
-
查看配置信息:
hoard info
-
设置参数标记:
hoard set_parameter_token <parameter_token>
hoard
工具快捷键
在 GUI 中显示命令列表:
<F1>
浏览命令列表:
-
下一个命令:
<Ctrl-N> / <Down-Arrow>
-
上一个命令:
<Ctrl-P> / <Ctrl-Y> / <Up-Arrow>
-
下一个命名空间标签:
<Ctrl-L> / <Right-Arrow>
-
上一个命名空间标签:
<Ctrl-H> / <Left-Arrow>
-
选择命令:
<Enter>
-
退出:
<Esc> / <Ctrl-D> / <Ctrl-C> / <Ctrl-G>
hoard
作为一个高效的命令管理工具,帮助用户管理那些重要且冗长的命令,使工作流程更加流畅和高效。