跳到正文
发现
skim:Rust 模糊查找器
命令行工具开发者工具

skim:Rust 模糊查找器

用 Rust 编写的命令行模糊查找器,为文件和命令搜索提供快速交互界面。

admin
发布于 2026-10-28
浏览
5
访问
0
下载
0
版本
v5.9.0
平台
Windows、macOS、Linux
该作品还没有经过官方审核。访问演示、下载或复制命令前,请自行确认来源可信。

详细介绍

项目简介

skim 是一个用 Rust 编写的模糊查找器,核心是名为 sk 的可执行文件。它面向需要在终端中快速定位文件、行内容和命令的用户,可作为类似 grep 的通用过滤工具,也可以作为运行命令的交互式界面。项目还包含 Vim/Nvim 插件,用于在编辑器内调用 sk。

主要功能

  • 直接运行 sk,或通过管道输入候选列表进行模糊筛选;开启 -m 后可用 TAB 多选。
  • 交互模式可动态调用外部命令,例如与 grep、ack、ag、rg 配合搜索项目内容。
  • 提供 Fish、Bash、Zsh 的补全脚本和按键绑定:ctrl-t 选择文件、ctrl-r 选择历史记录、alt-c 进入目录,以及 ** 补全文件路径。
  • 支持自定义按键映射、排序条件、配色,以及预览窗口、字段支持等高级用法。
  • 可作为 Vim 插件使用,也可作为 Rust 库集成。

安装与使用

常用安装方式:

brew install sk
winget install skim
scoop install skim
cargo install skim

也可以使用安装脚本:

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/skim-rs/skim/releases/latest/download/skim-installer.sh | sh

基本用法示例:

# 直接调用 skim
sk

# 通过管道选择 .rs 文件并在 Vim 中打开
vim $(find . -name "*.rs" | sk -m)

交互模式示例:

sk --ansi -i -c 'rg --color=always --line-number {q}'

生成并加载 Bash 补全:

source <(sk --shell bash)

查看内置 man page:

man --local-file <(sk --man)

注意事项

  • README 提醒:交互模式示例中的 {q} 会按当前输入原样展开,因此这些示例执行的是精确查询;需要模糊搜索时,可把命令输出直接管道传给 sk,不要使用交互模式。
  • 使用安装脚本前应先检查脚本内容。
  • Debian/Ubuntu、Fedora/RHEL 等平台需要按 README 添加对应软件源,或下载 release 中的 .deb/.rpm 包安装。

本作品整理自 GitHub 开源项目 skim-rs/skim,原作者 @skim-rs,许可证 MIT。中文介绍由 AI 根据项目 README 整理,以原仓库为准。

更新记录

  1. v5.9.0当前版本

    新增 separator 标志;修复在无需调整窗口大小时内联框未正确清除的问题。

评论