#模糊查找器 #命令行工具 #预览 #执行 #Makefile #目标 #窗口

app fzf-make

一个使用模糊查找器和预览窗口执行 make 目标的命令行工具

28 个重大版本更新

0.36.0 2024 年 8 月 2 日
0.35.0 2024 年 6 月 18 日
0.34.0 2024 年 6 月 13 日
0.26.0 2024 年 3 月 25 日
0.10.0 2023 年 11 月 30 日

300命令行工具

Download history 230/week @ 2024-04-29 1/week @ 2024-05-06 319/week @ 2024-05-20 6/week @ 2024-06-03 277/week @ 2024-06-10 186/week @ 2024-06-17 4/week @ 2024-06-24 292/week @ 2024-07-29 14/week @ 2024-08-05 7/week @ 2024-08-12

313 每月下载量

MIT 许可证

4.5MB
2.5K SLoC

fzf-make 是一个使用模糊查找器和预览窗口执行 make 目标的命令行工具。

License:MIT Latest Release crates.io

[英文] [德语] [法语]

🛠️ 功能

  • 通过运行 fzf-make 使用模糊查找器在预览窗口中选择和执行 make 目标!
  • 执行上次执行的目标(通过运行 fzf-make --repeat。)
  • 命令历史记录
  • 支持 include 指令
  • (计划开发中) 支持配置文件

👓 环境要求

  • (如果你不是通过 Homebrew 安装 fzf-make 的包管理器) bat
    • 将来,我们打算让它也能与 cat 一起使用,但当前它只能与 bat 一起使用。

📦 安装

macOS

Homebrew

你不需要安装 bat,因为 fzf-make 会通过 Homebrew 自动安装它。

# install
brew install kyu08/tap/fzf-make
# update 
brew update
brew upgrade fzf-make

Arch Linux

fzf-make 可以使用 AUR 和一个 AUR 辅助工具AUR 安装。例如

paru -S fzf-make

NixOS / Nix(包管理器)

fzf-make 可以从仓库(最新版本)运行

nix run github:kyu08/fzf-make

或从 nixpkgs(版本 >= 23.05)

nix run nixpkgs#fzf-make

注意 你可能需要启用实验性功能。在这种情况下,执行以下命令以启用它们 echo "experimental-features = nix-command flakes" | tee ~/.config/nix/nix.conf

独立于操作系统的安装方法

Cargo

cargo install --locked fzf-make

💡 使用方法

使用模糊查找器运行目标

  1. 在包含 makefile 的目录(文件名应为 GNUmakefilemakefileMakefile 之一)中执行 fzf-make
  2. 选择要执行的 make 命令。如果输入一些字符,列表将会被过滤。 demo demo

从历史记录中运行目标

  1. 在包含 makefile 的目录(文件名应为 GNUmakefilemakefileMakefile 之一)中执行 fzf-make
  2. Tab 键移动到历史记录面板。
  3. 选择要执行的 make 命令。 demo

支持命令

命令 描述
fzf-make 启动 fzf-make
fzf-make --repeat / fzf-make -r / fzf-make repeat 执行最后一次执行的目标
fzf-make --history / fzf-make -h / fzf-make history 以历史记录面板为重点启动 fzf-make
fzf-make --help / fzf-make help 显示帮助
fzf-make --version / fzf-make -v / fzf-make version 显示版本

💻 开发

  1. 克隆此存储库
  2. 更改代码
  3. 运行 make run

要执行测试,请运行 make test(需要 nextest)。

nix

或者你可以使用 nix 创建一个带有项目依赖的开发外壳。

在存储库根目录下,执行以下命令

nix develop

👥 贡献

  • 欢迎贡献!
  • 如果你有功能请求,请先创建一个 issue。
  • 如果你将 fzf-make 添加到某个包管理器中,请通知我。(或者请在 README.md 中发送一个 PR 来添加如何通过包管理器安装的说明)
  • 如果你有任何问题,请随时创建一个 issue 并提问。

🗒 相关文章

依赖项

~11–21MB
~281K SLoC