added 'filetypes' provider

main
bhagwan 3 years ago
parent 7b9fe4495e
commit 789e0bf310

@ -178,6 +178,7 @@ nnoremap <c-P> <cmd>lua require('fzf-lua').files()<CR>
|`spell_suggest`|spelling suggestions|
|`tags`|project tags|
|`btags`|buffer tags|
|`filetypes`|neovim filetypes|
|`packadd`|:packadd <package>|

@ -178,6 +178,11 @@ M.spell_apply = function(selected)
vim.cmd("stopinsert")
end
M.set_filetype = function(selected)
if not selected then return end
vim.api.nvim_buf_set_option(0, 'filetype', selected[1])
end
M.packadd = function(selected)
if not selected then return end
for i = 1, #selected do

@ -428,6 +428,12 @@ M.globals.nvim = {
["default"] = actions.spell_apply,
},
},
filetypes = {
prompt = 'Filetypes> ',
actions = {
["default"] = actions.set_filetype,
},
},
packadd = {
prompt = 'packadd> ',
actions = {

@ -81,6 +81,7 @@ M.commands = require'fzf-lua.providers.nvim'.commands
M.command_history = require'fzf-lua.providers.nvim'.command_history
M.search_history = require'fzf-lua.providers.nvim'.search_history
M.spell_suggest = require'fzf-lua.providers.nvim'.spell_suggest
M.filetypes = require'fzf-lua.providers.nvim'.filetypes
M.packadd = require'fzf-lua.providers.nvim'.packadd
M.lsp_typedefs = require'fzf-lua.providers.lsp'.typedefs

@ -260,6 +260,27 @@ M.spell_suggest = function(opts)
end
M.filetypes = function(opts)
opts = config.normalize_opts(opts, config.globals.nvim.filetypes)
coroutine.wrap(function ()
local entries = vim.fn.getcompletion('', 'filetype')
if vim.tbl_isempty(entries) then return end
opts.nomulti = true
opts.preview = nil
opts.preview_window = 'hidden:down:0'
local selected = core.fzf(opts, entries)
if not selected then return end
actions.act(opts.actions, selected)
end)()
end
M.packadd = function(opts)

Loading…
Cancel
Save