A deprecated Neovim motion plugin that enables fast, efficient cursor navigation using 2-character search patterns with ahead-of-time labeling.
Lightspeed.nvim was a motion plugin for Neovim that enabled fast, efficient cursor navigation using 2-character search patterns. It solved the problem of slow, interruptive navigation by showing target labels ahead of time, allowing users to jump to any visible position with minimal keystrokes and mental effort.
Neovim users who want to improve their editing speed and reduce cognitive load during navigation, particularly those familiar with plugins like Sneak, EasyMotion, or Hop.
Developers chose Lightspeed for its unique ahead-of-time labeling, which eliminated the frustrating pause between entering a search pattern and selecting a target. It offered a streamlined, distractionless experience that felt native to Neovim.
deprecated in favor of leap.nvim
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Target labels appear immediately after the first keystroke, allowing continuous typing without pauses—a unique feature that eliminates the frustrating delay common in other motion plugins.
Automatically jumps to unique characters in the search direction, saving keystrokes when possible, with these characters highlighted beforehand for user awareness.
Overrides native Vim f/t commands to work over multiple lines and support same-key repeat, expanding their utility beyond single-line navigation.
Provides consistent instant repeat, cold repeat, and dot-repeat behaviors across all motions, integrated with repeat.vim for reliable operator repetition.
The plugin is officially deprecated in favor of Leap.nvim, meaning no new features, bug fixes, or active support—making it risky for long-term use.
Features like shortcut labels and match grouping can create a hectic, distracting interface; the README even suggests disabling them for a 'calmer' experience similar to Hop.
Multiline f/t motions interfere with macro recording and :normal commands, requiring cumbersome workarounds like expression mappings or using :normal! to avoid problems.