3 个版本
0.0.3 | 2022 年 8 月 11 日 |
---|---|
0.0.2 | 2022 年 8 月 11 日 |
0.0.1 | 2022 年 8 月 10 日 |
#77 在 #grep
83KB
2K SLoC
gredit - 搜索并编辑
在后台运行 grep (ripgrep 的库),允许交互式选择其结果并在选择的文本编辑器(默认为 vim)中打开所选匹配项。
这是 igrep 的一个分支,增加了上下文查看器以查看匹配项的上下文。此外,当您退出编辑器时,gredit 不会退出。
gredit
支持 macOS 和 Linux。据报道,它也可以在 Windows 上运行。
用法
gredit[选项] <模式|--类型-列表> [路径]
参数
<PATTERN> Regular expression used for searching.
<PATH> File or directory to search. Directories are searched recursively.
If not specified, searching starts from current directory.
选项
-., --hidden Search hidden files and directories. By default, hidden files and
directories are skipped.
--editor <EDITOR> Text editor used to open selected match [possible values: vim,
neovim, nvim, nano, code, vscode, emacs, emacsclient]
-g, --glob <GLOB> Include files and directories for searching that match the given glob.
Multiple globs may be provided.
-h, --help Print help information
-i, --ignore-case Searches case insensitively.
-S, --smart-case Searches case insensitively if the pattern is all lowercase.
Search case sensitively otherwise.
-t, --type <TYPE_MATCHING> Only search files matching TYPE.
Multiple types may be provided.
-T, --type-not <TYPE_NOT> Do not search files matching TYPE-NOT.
Multiple types-not may be provided.
--theme <THEME> UI color theme [default: dark] [possible values: light, dark]
--type-list Show all supported file types and their corresponding globs.
-V, --version Print version information.
注意:如果设置了环境变量 RIPGREP_CONFIG_PATH
,则 gredit
会在 配置文件 中尊重 ripgrep
,并从中读取所有支持选项。
快捷键
键 | 动作 |
---|---|
q ,Esc |
退出 |
Down ,j |
选择下一个匹配项 |
Up ,k |
选择上一个匹配项 |
Right ,l ,PageDown |
选择下一个文件中的匹配项 |
Left ,h ,PageUp |
选择上一个文件中的匹配项 |
gg ,Home |
跳转到第一个匹配项 |
Shift-g ,End |
跳转到最后一个匹配项 |
Enter |
打开当前文件 |
dd ,Delete |
过滤掉所选匹配项 |
dw |
过滤掉当前文件中的所有匹配项 |
F5 |
重新运行搜索 |
指定文本编辑器
gredit
支持 Vim,Neovim,nano,VS Code(稳定和内部版本),Emacs 和 EmacsClient。要指定编辑器,请使用以下选项之一(按优先级列出)
--editor
选项,$GREDIT_EDITOR
变量。$EDITOR
变量。
优先级较高的选项会覆盖优先级较低的选项。如果这两个选项都没有设置,则默认使用 vim。
安装
预构建的二进制文件
gredit
二进制文件可以从 GitHub 下载。
从源码构建
通过运行以下命令从源码构建和安装使用 Rust 工具链: cargo install gredit
。
依赖项
~15–25MB
~411K SLoC