A Neovim plugin for search-based navigation with quick jump labels, combining pattern matching with single-key jumps.
SJ is a Neovim plugin that enables search-based navigation combined with quick jump features. It allows users to type a search pattern and instantly jump to any match by pressing a single labeled key, reducing the need to repeatedly cycle through matches with traditional search commands. The plugin solves the inefficiency of navigating through many search results by providing direct, predictable jumps.
Neovim users who frequently navigate large buffers and want faster, more precise movement without relying heavily on native search cycling or horizontal motion commands.
Developers choose SJ because it uniquely blends search pattern matching with one-character jump labels, offering predictable and efficient navigation that complements rather than replaces Vim's built-in motions, all while being highly configurable and lightweight.
Search based navigation combined with quick jump features.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Merges pattern search with one-character labeled jumps, enabling direct access to matches without cycling, as shown in the demo where typing a pattern instantly labels matches for quick navigation.
Offers numerous configuration options like search_scope, pattern_type, and keymaps, allowing users to tailor navigation to specific workflows, evident in the detailed Lua config example.
Provides immediate highlighting of matches and labels during search, with color changes for no matches or limit reached, enhancing user awareness as described in the usage notes.
Requires only Neovim 0.9+ with no external dependencies, making it easy to install and integrate into any setup without bloating the environment.
Setting up involves extensive Lua code and keybinding adjustments, which can be daunting for users not proficient in Neovim's configuration system, as seen in the lengthy sample config.
Uses a fixed set of single-character labels, which may be insufficient for buffers with hundreds of matches, forcing users to refine patterns or rely on native search methods.
Mapping keys like 's' or 'S' can interfere with existing Vim motions, requiring careful planning and possible remapping of default commands, as cautioned in the README's disclaimer.