blink.nvim

June 13, 2025 ยท View on GitHub

blink.nvim

Experimental library of neovim plugins with a focus on performance and simplicity

Modules

statusmoduledescription
stableblink.chartoggleToggles a character at the end of the current line
stableblink.cmpPerformant autocompletion plugin, inspired by nvim-cmp
alphablink.pairsRainbow highlighting and intelligent auto-pairs
stableblink.indentIndent guides with scope on every keystroke
WIPblink.selectGeneric selection UI with built-in providers
alphablink.treeTree plugin with async io and FFI git, similar to neo-tree but eventually to be rewritten to be like oil.nvim

Installation

lazy.nvim

{
  'saghen/blink.nvim',
  build = 'cargo build --release', -- for delimiters
  keys = {
	-- chartoggle
	{
	  '<C-;>',
	  function()
	  	require('blink.chartoggle').toggle_char_eol(';')
	  end,
	  mode = { 'n', 'v' },
	  desc = 'Toggle ; at eol',
	},
	{
	  ',',
	  function()
	  	require('blink.chartoggle').toggle_char_eol(',')
	  end,
	  mode = { 'n', 'v' },
	  desc = 'Toggle , at eol',
	},

	-- tree
	{ '<C-e>', '<cmd>BlinkTree reveal<cr>', desc = 'Reveal current file in tree' },
	{ '<leader>E', '<cmd>BlinkTree toggle<cr>', desc = 'Reveal current file in tree' },
	{ '<leader>e', '<cmd>BlinkTree toggle-focus<cr>', desc = 'Toggle file tree focus' },
  },
  -- all modules handle lazy loading internally
  lazy = false,
  opts = {
    chartoggle = { enabled = true },
    tree = { enabled = true }
  }
}