A fast and versatile fuzzy finder written in Rust, designed to quickly navigate files, lines, and commands.
Skim is a command-line fuzzy finder written in Rust that enables rapid filtering and selection of text, files, and command outputs. It serves as a smarter alternative to traditional tools like grep, integrating seamlessly into shell environments and editors to boost productivity by reducing time spent navigating digital environments.
Developers and command-line users who frequently navigate files, search through codebases, or manage shell history and want a fast, keyboard-driven interface for filtering and selection. It is particularly useful for Vim/Neovim users seeking efficient file and buffer navigation.
Developers choose Skim for its speed, flexibility, and extensive customization options, including multiple search modes (fuzzy, exact, regex), typo-resistant algorithms, and seamless shell and editor integrations. Its interactive mode and preview window provide a powerful, intuitive workflow not always available in alternatives.
Fuzzy Finder in rust!
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages Rust-based algorithms including typo-resistant options like frizbee and arinae, ensuring fast and accurate matching even on large datasets, as demonstrated in the benchmarks section.
Supports multiple search modes (fuzzy, exact, regex) with a flexible query system borrowed from fzf, allowing for complex filtering without leaving the interface, as detailed in the Search Syntax section.
Provides built-in key bindings for shells (Bash, Zsh, Fish) like Ctrl-T for file selection and Ctrl-R for history search, enabling rapid workflow acceleration directly from the terminal.
Offers extensive customization for key maps, color schemes, and preview windows, allowing users to tailor the tool to specific preferences, as shown in the Keymap and Color Scheme sections.
Customizing key bindings, search algorithms, and preview commands requires understanding Skim-specific syntax and options, which can be more complex than simpler fuzzy finders.
Compared to fzf, Skim has fewer community-contributed plugins and integrations, which might limit out-of-the-box functionality in some environments or require custom scripting.
Implements features differently from fzf, leading to inconsistencies in command flags and behavior that may disrupt workflows for users migrating from fzf, as noted in the Differences from fzf section.