#search-pattern #pattern #command-line-tool #tree-structure #grep #ripgrep #run-command

app gret

gret 是一个用于搜索模式并在树结构中显示匹配结果的命令行工具

3 个版本

0.1.2 2023年11月5日
0.1.1 2023年6月10日
0.1.0 2023年6月3日

#1121 in 文本处理

无许可证

1MB
1.5K SLoC

Rust 1K SLoC // 0.1% comments BASH 55 SLoC PowerShell 44 SLoC Elvish 41 SLoC Shell 23 SLoC // 0.1% comments

gret

gret (全局正则表达式树) 是一个命令行实用程序,旨在遍历目录和文件以查找与正则表达式匹配的内容,同时尊重 .gitignore.ignore 文件,结果以树格式呈现,并可启动菜单进行选择。

https://github.com/4imothy/gret/assets/40186632/07043fef-4376-433a-90a2-33c3913570dd

快速安装

cargo install gret

运行

使用 cargo run,第一个位置参数是模式,第二个是搜索路径。如果需要匹配多个模式,请使用 -e 后跟模式。

要启动菜单,请使用标志 -m--menu,这将打开一个匹配选择器。选择一个后按 enter,如果是在 Unix 上,将使用 $EDITOR 启动文件/目录;如果是在 Windows 上,则使用 start。如果未找到 $EDITOR,则会在 macos 上调用 open,在其他非 Windows 操作系统上调用 xdg-open

如何使用

请参阅 options.md 文件。

安装

cargo install gret

更改链接位置后,运行 ./add_to_path.sh 脚本到您的路径上的某个位置。或者分别运行命令

cargo build --release

然后源 completions/ 目录中的正确完成文件。

进行基准测试

在根目录中运行 ./benchmarks/bench。结果可在 benchmarks 目录中的 times 文件中查看。

然后将二进制文件添加到您的路径中,然后源脚本以获得适当的完成。为了使完成在下次登录时正常工作,您必须在每次登录时源它。

Shell 要源入的完成脚本
BASH completions/gret.bash
Zsh completions/_gret
Fish completions/gret.fish
Elvish completions/gret.elv
PowerShell _gret.ps1

依赖关系

~6–16MB
~194K SLoC