finds.dev← search

// the find

Shougo/unite.vim

★ 2,832 · Vim Script · NOASSERTION · updated May 2023

:dragon: Unite and create user interfaces

unite.vim is a Vim plugin framework for building fuzzy-finder style interfaces — files, buffers, registers, grep results, anything you can write a source for. It was the dominant fuzzy-picker solution in the Vim ecosystem around 2012–2015, before fzf, telescope.nvim, and Shougo's own successors took over.

The source/kind/action architecture is genuinely well-designed: sources produce candidates, kinds define what actions are valid, actions do the work — clean separation that made the plugin ecosystem around it thrive. Ships with a surprisingly complete set of built-in sources covering files, buffers, registers, jumps, mappings, grep, and more. The filter pipeline (matchers, sorters, converters as composable units) is flexible enough that you can build non-trivial UIs without touching core. Has a real test suite for a Vim plugin, which in 2013 was rare.

Dead. The README says so explicitly — go to ddu.vim. The last real commit was 2023, and even that was just a bug fix. Neovim users will find no async support; unite blocks during file_rec on large trees in a way that will make you close Vim. The configuration surface is massive and poorly discoverable — expect to spend an hour reading `:h unite` just to get a usable file picker. fzf.vim or telescope.nvim will get you 90% of the functionality in 10 minutes with active communities behind them.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →