TL;DR — Quick Summary

skim (sk) is a fuzzy finder written in Rust. fzf-compatible API with interactive previews, multi-select, regex mode, and Vim integration — find anything fast.

skim is fzf in Rust. Fuzzy search, previews, multi-select — find anything, fast.

Installation

# macOS
brew install sk

# Arch Linux
sudo pacman -S skim

# Cargo
cargo install skim

Usage

# Basic fuzzy search
sk

# File search with preview
sk --preview 'bat --color=always {}'

# Ripgrep integration
sk --ansi -c 'rg --color=always {}'

# Multi-select
sk -m

# Regex mode
sk --regex

# Interactive mode (re-run command on query change)
sk -i -c 'grep -r {} src/'

# Custom delimiter
echo "a:b:c" | sk -d ':' --nth 2

# Reverse layout
sk --layout=reverse

# Height
sk --height 40%

# Bind keys
sk --bind 'ctrl-y:execute(echo {} | xclip)'

Shell Integration

# Bash/Zsh (add to .bashrc/.zshrc)
# Ctrl+T: file search
# Ctrl+R: history search
# Alt+C: cd to directory
source /usr/share/skim/key-bindings.bash
source /usr/share/skim/completion.bash

Summary

  • skim (sk) is a Rust fuzzy finder, fzf-compatible API
  • Interactive previews, multi-select, regex mode
  • Interactive command execution mode
  • Shell integration: Ctrl+T, Ctrl+R, Alt+C
  • Written in Rust — fast, memory-safe