Skip to content

Neovim plugin. Telescope.nvim extension that adds LuaSnip integration.

License

Notifications You must be signed in to change notification settings

benfowler/telescope-luasnip.nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

telescope-luasnip

This plugin adds a LuaSnip snippet picker to the already-awesome Neovim Telescope plugin.

This is a port of fhill2/telescope-ultisnips.nvim from Ultisnips to LuaSnip. Thanks for the simple great idea!

If you find something wrong, please raise an issue or better yet, raise a PR.

telescope-luasnip.nvim in action

Requirements

Setup

Install the plugin using your favourite package manager.

use {
  "benfowler/telescope-luasnip.nvim",
  module = "telescope._extensions.luasnip",  -- if you wish to lazy-load
}

Then, you need to tell Telescope about this extension somewhere after your require('telescope').setup(), by calling:

require('telescope').load_extension('luasnip')

Usage

require'telescope'.extensions.luasnip.luasnip{}
vim.cmd [[ Telescope luasnip ]]

or

:Telescope luasnip

for windows system

:Telescope luasnip disable_ft=true

Configuration

This Telescope plugin works fine as-is, and requires no further configuration.

However, if you want, you can customise its search behaviour if you wish:

local lst = require('telescope').extensions.luasnip
local luasnip = require('luasnip')

require('telescope').setup {
  extensions = {
    -- ...
    luasnip = {
      search = function(entry)
        return lst.filter_null(entry.context.trigger) .. " " ..
               lst.filter_null(entry.context.name) .. " " ..
               entry.ft .. " " ..
               lst.filter_description(entry.context.name, entry.context.description) ..
               lst.get_docstring(luasnip, entry.ft, entry.context)[1]
      end
    },
     -- ...
  }
}

To change theme, try:

require('telescope').setup {
  luasnip = require("telescope.themes".get_dropdown({
      border   = false,
      preview  = {
        check_mime_type  = true
      },
      search = function ()
        -- ...
      end
    }))
}

Help!

Is there something not quite right or could be improved? Log an issue with a minimal reproduction, or better yet, raise a PR.

About

Neovim plugin. Telescope.nvim extension that adds LuaSnip integration.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages