92 lines
2.6 KiB
Lua
92 lines
2.6 KiB
Lua
-- Use this file for any UI based plugins
|
|
-- Contains telescope, icons, lualine & whichkey
|
|
return {
|
|
{
|
|
"nvim-telescope/telescope.nvim",
|
|
dependencies = { "nvim-treesitter/nvim-treesitter" },
|
|
cmd = "Telescope",
|
|
init = function()
|
|
local builtin = require('telescope.builtin')
|
|
local wk = require('which-key')
|
|
wk.register({
|
|
['ff'] = { builtin.find_files, "Find File" },
|
|
['fb'] = { builtin.buffers, "Find Buffer" },
|
|
['fg'] = { builtin.live_grep, "Find with Grep" },
|
|
['fh'] = { builtin.help_tags, "Find Help" },
|
|
['fn'] = { ":Telescope file_browser path=%:p:h select_buffer=true<CR>", "File Browser" },
|
|
}, { prefix = "<leader>" })
|
|
end,
|
|
opts = function()
|
|
return {
|
|
defaults = {
|
|
vimgrep_arguments = {
|
|
"rg",
|
|
"-L",
|
|
"--color=never",
|
|
"--no-heading",
|
|
"--with-filename",
|
|
"--line-number",
|
|
"--column",
|
|
"--smart-case",
|
|
},
|
|
previewer = true,
|
|
file_previewer = require 'telescope.previewers'.vim_buffer_cat.new,
|
|
grep_previewer = require 'telescope.previewers'.vim_buffer_vimgrep.new,
|
|
qflist_previewer = require 'telescope.previewers'.vim_buffer_qflist.new,
|
|
},
|
|
extensions = {
|
|
file_browser = {
|
|
theme = "ivy",
|
|
hijack_netrw = true,
|
|
},
|
|
},
|
|
extensions_list = {
|
|
"file_browser",
|
|
},
|
|
}
|
|
end,
|
|
config = function(_, opts)
|
|
local telescope = require "telescope"
|
|
telescope.setup(opts)
|
|
|
|
-- load extensions
|
|
for _, ext in ipairs(opts.extensions_list) do
|
|
telescope.load_extension(ext)
|
|
end
|
|
end,
|
|
},
|
|
{
|
|
"nvim-telescope/telescope-file-browser.nvim",
|
|
dependencies = { "nvim-telescope/telescope.nvim", "nvim-lua/plenary.nvim" }
|
|
},
|
|
{
|
|
'nvim-tree/nvim-web-devicons',
|
|
},
|
|
{
|
|
'nvim-lualine/lualine.nvim',
|
|
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
|
event = "VeryLazy",
|
|
opts = {
|
|
options = {
|
|
icons_enabled = true,
|
|
theme = 'auto',
|
|
component_separators = '|',
|
|
section_separators = { left = '', right = '' },
|
|
},
|
|
},
|
|
},
|
|
-- Only load whichkey after all the gui
|
|
{
|
|
"folke/which-key.nvim",
|
|
keys = { "<leader>", "<c-r>", "<c-w>", '"', "'", "`", "c", "v", "g" },
|
|
cmd = "WhichKey",
|
|
config = function(_, opts)
|
|
local wk = require('which-key')
|
|
wk.setup(opts)
|
|
wk.register({
|
|
['f'] = { name = "Find" },
|
|
}, { prefix = "<leader>" })
|
|
end,
|
|
},
|
|
}
|