• Stars
    star
    350
  • Rank 118,360 (Top 3 %)
  • Language
    Lua
  • License
    MIT License
  • Created almost 2 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A neovim plugin that lets you easily create Telescope pickers from arbitrary console commands

Hits-of-Code

easypick.nvim

Easypick is a neovim plugin that lets you easily create Telescope pickers (see telescope.nvim) from arbitrary console commands.

installation

use {'axkirillov/easypick.nvim', requires = 'nvim-telescope/telescope.nvim'}

configuration

local easypick = require("easypick")

-- only required for the example to work
local base_branch = "develop"

easypick.setup({
	pickers = {
		-- add your custom pickers here
		-- below you can find some examples of what those can look like

		-- list files inside current folder with default previewer
		{
			-- name for your custom picker, that can be invoked using :Easypick <name> (supports tab completion)
			name = "ls",
			-- the command to execute, output has to be a list of plain text entries
			command = "ls",
			-- specify your custom previwer, or use one of the easypick.previewers
			previewer = easypick.previewers.default()
		},

		-- diff current branch with base_branch and show files that changed with respective diffs in preview
		{
			name = "changed_files",
			command = "git diff --name-only $(git merge-base HEAD " .. base_branch .. " )",
			previewer = easypick.previewers.branch_diff({base_branch = base_branch})
		},

		-- list files that have conflicts with diffs in preview
		{
			name = "conflicts",
			command = "git diff --name-only --diff-filter=U --relative",
			previewer = easypick.previewers.file_diff()
		},
	}
})

recipes

More recipes are available in project wiki

usage

After the setup is called the Easypick command becomes available with all your pickers added to tab completion.

image

Running the :Easypick command with no arguments should result in the picker picker being called image