From 46ebe4ded77e03bb05ff1258034749faadca8b07 Mon Sep 17 00:00:00 2001 From: Barrett Ruth Date: Mon, 17 Jun 2024 18:30:18 -0500 Subject: [PATCH] feat: default to available picker --- doc/http-codes.txt | 4 ++-- lua/http-codes.lua | 24 +++++++++++++++++------- lua/http-codes/{fzf.lua => fzf-lua.lua} | 0 readme.md | 11 ++++------- 4 files changed, 23 insertions(+), 16 deletions(-) rename lua/http-codes/{fzf.lua => fzf-lua.lua} (100%) diff --git a/doc/http-codes.txt b/doc/http-codes.txt index af99008..4b2d132 100644 --- a/doc/http-codes.txt +++ b/doc/http-codes.txt @@ -24,8 +24,8 @@ Parameters: ~ Usage: ~ >lua require('http-codes').setup({ - -- *REQUIRED*: 'fzf' or 'telescope' - use = 'fzf', + -- defaults to available picker: 'fzf-lua' or 'telescope' + use = 'fzf-lua' -- How the mozilla url is opened. -- Configured by default based on OS: open_url = 'xdg-open %s' -- UNIX diff --git a/lua/http-codes.lua b/lua/http-codes.lua index 5467086..a52e6d1 100644 --- a/lua/http-codes.lua +++ b/lua/http-codes.lua @@ -10,18 +10,28 @@ M.config = { M.http_codes = function() if M.config.use == 'telescope' then require('telescope').extensions.http.list(M.config.open_url) - elseif M.config.use == 'fzf' then - require('http-codes.fzf').pick(M.config.open_url) + elseif M.config.use == 'fzf-lua' then + require('http-codes.fzf-lua').pick(M.config.open_url) end end M.setup = function(user_config) - if - user_config.use == nil - or not vim.tbl_contains({ 'fzf', 'telescope' }, user_config.use) - then + if pcall(require, 'fzf-lua') then + M.config.use = 'fzf-lua' + elseif pcall(require, 'telescope') then + M.config.use = 'telescope' + end + + if M.config.use == nil then + vim.notify_once 'http-codes.nvim: install fzf-lua or telescope.nvim' + return + end + + if user_config.use then M.config.use = user_config.use end + + if not vim.tbl_contains({ 'fzf-lua', 'telescope' }, M.config.use) then vim.notify_once( - 'http-codes.nvim: must specify `use = {fzf,telescope}` in setup.', + 'http-codes.nvim: must specify `use = {fzf-lua,telescope}` in setup.', vim.log.levels.ERROR ) return diff --git a/lua/http-codes/fzf.lua b/lua/http-codes/fzf-lua.lua similarity index 100% rename from lua/http-codes/fzf.lua rename to lua/http-codes/fzf-lua.lua diff --git a/readme.md b/readme.md index b8c7442..6fe0afe 100644 --- a/readme.md +++ b/readme.md @@ -11,19 +11,16 @@ require('lazy').setup({ { 'barrett-ruth/http-codes.nvim' opts = { - -- *REQUIRED*: 'fzf' or 'telescope' - use = 'fzf', + -- defaults to available picker: 'fzf-lua' or 'telescope' + use = 'fzf-lua' -- How the mozilla url is opened. -- Configured by default based on OS: open_url = 'xdg-open %s' -- UNIX -- = 'open %s' -- OSX -- = 'start %s' -- Windows }, - dependencies = { - -- choose your picker: - 'ibhagwan/fzf-lua' - -- 'nvim-telescope/telescope.nvim', - }, + -- or 'nvim-telescope/telescope.nvim' + dependencies = 'ibhagwan/fzf-lua' } }) ```