Skip to content

jkhas8/linefinder.nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

linefinder.nvim

A fast, zero-dependency Neovim plugin for searching and jumping to lines in the current buffer. Type a keyword, fuzzy-filter lines in real-time, and jump to the selected line on Enter.

Neovim

Features

  • Fuzzy matching — characters matched in order, not necessarily adjacent (like fzf)
  • Multi-token search — split query by spaces, tokens matched independently in any order
  • Smart scoring — exact substring matches rank above fuzzy matches; earlier tokens have higher priority
  • Per-character highlighting — each matched character is highlighted individually
  • Floating window UI — centered input + results window with rounded borders
  • Zero dependencies — pure Lua, no external tools required

Installation

{
  "jkhas8/linefinder.nvim",
  keys = {
    { "<leader>fl", "<cmd>LineFinder<cr>", desc = "LineFinder" },
  },
}

Local development

{
  dir = "~/path/to/linefinder.nvim",
  keys = {
    { "<leader>fl", "<cmd>LineFinder<cr>", desc = "LineFinder" },
  },
}

Usage

Open LineFinder with :LineFinder or your configured keymap.

Key Action
Type text Fuzzy-filter lines in real-time
<CR> Jump to selected line
<Esc> Close without jumping
<C-j> / <Down> Move selection down
<C-k> / <Up> Move selection up

Search examples

Query Matches
flt Lines containing f...l...t in order (e.g., "filter")
split token Lines containing both "split" and "token" in any order
fn open Lines containing both "fn" and "open" in any order

API

-- Open the finder
require("linefinder").open()

-- Setup (optional, reserved for future config)
require("linefinder").setup({})

License

MIT

About

A fast, zero-dependency Neovim plugin for fuzzy searching and jumping to lines in the current buffer

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages