From c8075f06e081b0fe6a4b37339c22e921b0107a72 Mon Sep 17 00:00:00 2001 From: Kyren223 Date: Mon, 22 Jul 2024 22:53:56 +0300 Subject: feat(neovim): lazy loaded and refactored a bunch --- .../nvim/lua/custom/configs/language-servers.lua | 27 ++++--- .config/nvim/lua/custom/configs/statusline.lua | 92 ++++++++++++++++++++++ .config/nvim/lua/custom/configs/telescope.lua | 40 ++++++++++ .config/nvim/lua/custom/plugins/alpha.lua | 14 ++-- .config/nvim/lua/custom/plugins/colorschemes.lua | 30 +++---- .config/nvim/lua/custom/plugins/edgy.lua | 9 --- .config/nvim/lua/custom/plugins/motions.lua | 68 ---------------- .config/nvim/lua/custom/plugins/neotree.lua | 1 + .config/nvim/lua/custom/plugins/oil.lua | 53 +++++++------ .config/nvim/lua/custom/plugins/overseer.lua | 41 +++++----- .config/nvim/lua/custom/plugins/statusline.lua | 4 +- .config/nvim/lua/custom/plugins/telescope.lua | 11 ++- .config/nvim/lua/custom/plugins/treesitter.lua | 1 + .config/nvim/lua/custom/plugins/ui.lua | 2 - .config/nvim/lua/custom/plugins/utility.lua | 31 ++++++-- .config/nvim/lua/custom/statusline.lua | 92 ---------------------- .config/nvim/lua/custom/telescope.lua | 40 ---------- 17 files changed, 256 insertions(+), 300 deletions(-) create mode 100644 .config/nvim/lua/custom/configs/statusline.lua create mode 100644 .config/nvim/lua/custom/configs/telescope.lua delete mode 100644 .config/nvim/lua/custom/plugins/motions.lua delete mode 100644 .config/nvim/lua/custom/plugins/ui.lua delete mode 100644 .config/nvim/lua/custom/statusline.lua delete mode 100644 .config/nvim/lua/custom/telescope.lua (limited to '.config/nvim/lua') diff --git a/.config/nvim/lua/custom/configs/language-servers.lua b/.config/nvim/lua/custom/configs/language-servers.lua index 4fd3fff..1165994 100644 --- a/.config/nvim/lua/custom/configs/language-servers.lua +++ b/.config/nvim/lua/custom/configs/language-servers.lua @@ -1,19 +1,20 @@ -- NOTE: A list of language servers (and potentially their config) -- Accepts either true to enable, false to disable or a table with settings return { - lua_ls = { - settings = { - diagnostics = { - globals = { 'vim' }, - }, - workspace = { - library = { - [vim.fn.expand('$VIMRUNTIME/lua')] = true, - [vim.fn.stdpath('config') .. '/lua'] = true, - }, - }, - }, - }, -- lua + -- lua_ls = { + -- settings = { + -- diagnostics = { + -- globals = { 'vim' }, + -- }, + -- workspace = { + -- library = { + -- [vim.fn.expand('$VIMRUNTIME/lua')] = true, + -- [vim.fn.stdpath('config') .. '/lua'] = true, + -- }, + -- }, + -- }, + -- }, -- lua + lua_ls = true, -- lua clangd = true, -- C/C++ gradle_ls = true, -- java package manager jdtls = true, -- java eclipse lsp diff --git a/.config/nvim/lua/custom/configs/statusline.lua b/.config/nvim/lua/custom/configs/statusline.lua new file mode 100644 index 0000000..ce581c4 --- /dev/null +++ b/.config/nvim/lua/custom/configs/statusline.lua @@ -0,0 +1,92 @@ +local lualine = require('lualine') +local lsp_progress = require('lsp-progress') + +local progress_filled = '█' +local progress_empty = '░' +local function progress_bar(percentage, width) + -- Ensure i is an integer between 0 and width (inclusive) + local i = math.max(0, math.min(math.floor(width * percentage), width)) + return string.rep(progress_filled, i) .. string.rep(progress_empty, width - i) +end + +local progress_bar_width = 10 +lsp_progress.setup({ + format = function(client_messages) -- global + local sign = ' LSP' + if #client_messages > 0 then + return sign .. ' ' .. table.concat(client_messages, ' ') + end + if #require('lsp-progress.api').lsp_clients() > 0 then + return sign + end + return '' + end, + client_format = function(_, _, series_messages) -- per lsp + return #series_messages > 0 and table.concat(series_messages, ', ') or nil + end, + series_format = function(title, message, percentage, done) -- per progress + local builder = {} + local has_title = false + local has_message = false + if type(title) == 'string' and string.len(title) > 0 then + table.insert(builder, title .. ':') + has_title = true + end + if percentage then + table.insert(builder, string.format('%.0f%%', percentage)) + table.insert(builder, 1, progress_bar(percentage / 100, progress_bar_width)) + end + if type(message) == 'string' and string.len(message) > 0 then + table.insert(builder, string.format('(%s)', message)) + has_message = true + end + if done and (has_title or has_message) then + table.insert(builder, ' ') + end + return table.concat(builder, ' ') + end, +}) + +lualine.setup({ + options = { + globalstatus = true, + theme = 'auto', + }, + sections = { + lualine_a = { { 'mode', icon = '' } }, + lualine_b = { + require('auto-session.lib').current_session_name, + { 'branch', icon = '' }, + { + 'diagnostics', + symbols = { + error = '󰅙 ', + warn = '󰀦 ', + info = '󰋼 ', + hint = '󰌵 ', + }, + }, + }, + lualine_c = { + function() + return lsp_progress.progress() + end, + }, + lualine_x = { + 'searchcount', + 'encoding', + 'fileformat', + 'filetype', + }, + lualine_y = { 'progress' }, + lualine_z = { 'location' }, + }, + extensions = { 'oil', 'trouble' }, +}) + +-- Refresh lualine when lsp progress is updated +vim.api.nvim_create_autocmd('User', { + group = vim.api.nvim_create_augroup('lualine_augroup', { clear = true }), + pattern = 'LspProgressStatusUpdated', + callback = require('lualine').refresh, +}) diff --git a/.config/nvim/lua/custom/configs/telescope.lua b/.config/nvim/lua/custom/configs/telescope.lua new file mode 100644 index 0000000..b554a33 --- /dev/null +++ b/.config/nvim/lua/custom/configs/telescope.lua @@ -0,0 +1,40 @@ +local telescope = require('telescope') +telescope.setup({ + pickers = { + find_files = { follow = true }, + grep_string = { additional_args = '--follow' }, + live_grep = { additional_args = '--follow' }, + }, + extensions = { + fzf = { + fuzzy = true, -- false will only do exact matching + override_generic_sorter = true, + override_file_sorter = true, + case_mode = 'smart_case', -- default "smart_case" or "ignore_case" or "respect_case" + }, + ['ui-select'] = { + require('telescope.themes').get_dropdown({}), + }, + }, +}) + +pcall(telescope.load_extension('ui-select')) +pcall(telescope.load_extension('fzf')) + +local builtin = require('telescope.builtin') +local function find_all() + builtin.find_files({ + cwd = '~', + hidden = true, + no_ignore = true, + no_ignore_parent = true, + }) +end + +vim.keymap.set('n', 'fs', builtin.find_files, { desc = '[F]ile [S]ystem' }) +vim.keymap.set('n', 'fa', find_all, { desc = '[F]ind [A]ll files' }) +vim.keymap.set('n', 'fh', builtin.help_tags, { desc = '[F]ind [H]elp' }) +vim.keymap.set('n', 'fm', builtin.man_pages, { desc = '[F]ind [M]an Pages' }) +vim.keymap.set('n', 'lv', builtin.live_grep, { desc = '[L]ive [G]rep' }) +vim.keymap.set('n', 'f.', builtin.oldfiles, { desc = '[F]ind Recent Files' }) +vim.keymap.set('n', 'th', builtin.colorscheme, { desc = 'List [Th]eme' }) diff --git a/.config/nvim/lua/custom/plugins/alpha.lua b/.config/nvim/lua/custom/plugins/alpha.lua index 72af0a5..fa0740c 100644 --- a/.config/nvim/lua/custom/plugins/alpha.lua +++ b/.config/nvim/lua/custom/plugins/alpha.lua @@ -53,14 +53,16 @@ return { dashboard.section.buttons.opts.spacing = 0 dashboard.section.buttons.val = { dashboard.button('e', ' > New file', 'ene startinsert'), - dashboard.button('w', ' > Find file', 'cd ' .. find_file_path .. ' | Telescope find_files'), + dashboard.button('f', ' > Find file', 'cd ' .. find_file_path .. ' | Telescope find_files'), dashboard.button('r', ' > Recent', 'Telescope oldfiles'), dashboard.button('c', ' > Configuration', 'e $MYVIMRC | cd %:p:h'), - dashboard.button( - 's', - '󱎠 > Last Session', - 'lua require("auto-session.session-lens.actions").alternate_session()' - ), + -- FIX: doesn't seem to work so great, probably just use a project manager + -- will most likely make my own project manager plugin + -- dashboard.button( + -- 's', + -- '󱎠 > Last Session', + -- 'lua require("auto-session.session-lens.actions").alternate_session()' + -- ), dashboard.button('q', '󰈆 > Quit NVIM', 'qa'), } diff --git a/.config/nvim/lua/custom/plugins/colorschemes.lua b/.config/nvim/lua/custom/plugins/colorschemes.lua index 8fa17af..e3dc5bd 100644 --- a/.config/nvim/lua/custom/plugins/colorschemes.lua +++ b/.config/nvim/lua/custom/plugins/colorschemes.lua @@ -8,19 +8,19 @@ return { require('colorschemes.dapui').set() end, }, - 'rktjmp/lush.nvim', - 'catppuccin/nvim', - 'marko-cerovac/material.nvim', - 'rebelot/kanagawa.nvim', - 'projekt0n/github-nvim-theme', - 'EdenEast/nightfox.nvim', - 'rose-pine/neovim', - 'rafi/awesome-vim-colorschemes', - 'datsfilipe/min-theme.nvim', - 'nechaev/darkstorm.nvim', - 'briones-gabriel/darcula-solid.nvim', - 'okaihe/okai', - 'uloco/bluloco.nvim', - 'doums/darcula', - 'pineapplegiant/spaceduck', + -- 'rktjmp/lush.nvim', + -- 'catppuccin/nvim', + -- 'marko-cerovac/material.nvim', + -- 'rebelot/kanagawa.nvim', + -- 'projekt0n/github-nvim-theme', + -- 'EdenEast/nightfox.nvim', + -- 'rose-pine/neovim', + -- 'rafi/awesome-vim-colorschemes', + -- 'datsfilipe/min-theme.nvim', + -- 'nechaev/darkstorm.nvim', + -- 'briones-gabriel/darcula-solid.nvim', + -- 'okaihe/okai', + -- 'uloco/bluloco.nvim', + -- 'doums/darcula', + -- 'pineapplegiant/spaceduck', } diff --git a/.config/nvim/lua/custom/plugins/edgy.lua b/.config/nvim/lua/custom/plugins/edgy.lua index 7f01245..872247f 100644 --- a/.config/nvim/lua/custom/plugins/edgy.lua +++ b/.config/nvim/lua/custom/plugins/edgy.lua @@ -23,15 +23,6 @@ return { end, size = { height = 0.5 }, }, - { - title = 'Neo-Tree Git', - ft = 'neo-tree', - filter = function(buf) - return vim.b[buf].neo_tree_source == 'git_status' - end, - pinned = true, - open = 'Neotree position=right git_status', - }, }, }, } diff --git a/.config/nvim/lua/custom/plugins/motions.lua b/.config/nvim/lua/custom/plugins/motions.lua deleted file mode 100644 index 9ab3fed..0000000 --- a/.config/nvim/lua/custom/plugins/motions.lua +++ /dev/null @@ -1,68 +0,0 @@ -return { - { - 'christoomey/vim-tmux-navigator', - config = function() - vim.keymap.set('n', '', 'TmuxNavigateLeft') - vim.keymap.set('n', '', 'TmuxNavigateDown') - vim.keymap.set('n', '', 'TmuxNavigateUp') - vim.keymap.set('n', '', 'TmuxNavigateRight') - end, - }, - { - 'ggandor/leap.nvim', - dependencies = { 'tpope/vim-repeat' }, - config = function() - -- vim.keymap.set({ 'n', 'x', 'o' }, 's', '(leap-forward)') - -- vim.keymap.set({ 'n', 'x', 'o' }, 'S', '(leap-backward)') - -- vim.keymap.set({ 'n', 'x', 'o' }, 'gs', '(leap-from-window)') - - vim.keymap.set('n', 's', '(leap)') - vim.keymap.set('n', 'S', '(leap-from-window)') - vim.keymap.set({ 'x', 'o' }, 's', '(leap-forward)') - vim.keymap.set({ 'x', 'o' }, 'S', '(leap-backward)') - vim.keymap.set({ 'n', 'o' }, 'gs', function() - require('leap.remote').action() - end) - - -- Define equivalence classes for brackets and quotes, in addition to - -- the default whitespace group. - require('leap').opts.equivalence_classes = { ' \t\r\n', '([{', ')]}', '\'"`' } - - -- Set background to gray in searchable area - vim.api.nvim_set_hl(0, 'LeapBackdrop', { fg = '#777777' }) - end, - }, - { - 'windwp/nvim-autopairs', - event = 'InsertEnter', - config = true, - }, - { - 'numToStr/Comment.nvim', - opts = { - padding = true, - ignore = nil, - - toggler = { line = 'gcc', block = 'gbc' }, - opleader = { line = 'gc', block = 'gb' }, - extra = { above = 'gcO', below = 'gco', eol = 'gcA' }, - - mappings = { - basic = true, -- `gcc` `gbc` `gc[count]{motion}` `gb[count]{motion}` - extra = false, -- `gco`, `gcO`, `gcA` - }, - }, - config = function() - local api = require('Comment.api') - local esc = vim.api.nvim_replace_termcodes('', true, false, true) - local toggole_linewise_selection = function() - vim.api.nvim_feedkeys(esc, 'nx', false) - api.toggle.linewise(vim.fn.visualmode()) - end - - -- means Ctrl slash, `_` is a `/` - vim.keymap.set('n', '', api.toggle.linewise.current, { noremap = true, silent = true }) - vim.keymap.set('v', '', toggole_linewise_selection, { noremap = true, silent = true }) - end, - }, -} diff --git a/.config/nvim/lua/custom/plugins/neotree.lua b/.config/nvim/lua/custom/plugins/neotree.lua index 72f8b36..d008b69 100644 --- a/.config/nvim/lua/custom/plugins/neotree.lua +++ b/.config/nvim/lua/custom/plugins/neotree.lua @@ -9,6 +9,7 @@ return { 'nvim-tree/nvim-web-devicons', 'MunifTanjim/nui.nvim', }, + cmd = 'Neotree', config = function() require('neo-tree').setup({ open_files_do_not_replace_types = { 'terminal', 'Trouble', 'qf', 'edgy' }, diff --git a/.config/nvim/lua/custom/plugins/oil.lua b/.config/nvim/lua/custom/plugins/oil.lua index 0c193a9..0d81fca 100644 --- a/.config/nvim/lua/custom/plugins/oil.lua +++ b/.config/nvim/lua/custom/plugins/oil.lua @@ -1,29 +1,34 @@ return { 'stevearc/oil.nvim', dependencies = { 'nvim-tree/nvim-web-devicons' }, - config = function() - local oil = require('oil') - oil.setup({ - default_file_explorer = true, - skip_confirm_for_simple_edits = true, - keymaps = { - ['gs'] = false, - [''] = false, - [''] = false, - [''] = false, - [''] = false, - [''] = 'actions.select_split', - [''] = 'actions.select_vsplit', - [''] = 'actions.refresh', - [''] = 'actions.close', - ['gS'] = 'actions.change_sort', - }, - view_options = { - show_hidden = true, - natural_order = true, - }, - }) - vim.keymap.set('n', 'ob', 'Oil', { desc = '[O]il [B]uffer' }) - vim.keymap.set('n', 'of', oil.toggle_float, { desc = '[O]il [F]loat' }) + keys = { + { 'ob', 'Oil', desc = '[O]il [B]uffer' }, + { 'of', 'lua require("oil").toggle_float', desc = '[O]il [F]loat' }, + }, + opts = { + default_file_explorer = true, + skip_confirm_for_simple_edits = true, + keymaps = { + ['gs'] = false, + [''] = false, + [''] = false, + [''] = false, + [''] = false, + [''] = 'actions.select_split', + [''] = 'actions.select_vsplit', + [''] = 'actions.refresh', + [''] = 'actions.close', + ['gS'] = 'actions.change_sort', + }, + view_options = { + show_hidden = true, + natural_order = true, + }, + }, + cmd = 'Oil', + event = function() + if vim.fn.isdirectory(vim.fn.expand('%')) == 1 then + return 'VimEnter' + end end, } diff --git a/.config/nvim/lua/custom/plugins/overseer.lua b/.config/nvim/lua/custom/plugins/overseer.lua index f1015ba..38a9a85 100644 --- a/.config/nvim/lua/custom/plugins/overseer.lua +++ b/.config/nvim/lua/custom/plugins/overseer.lua @@ -1,25 +1,24 @@ return { 'stevearc/overseer.nvim', - opts = {}, - config = function() - require('overseer').setup({ - templates = { 'builtin', 'custom' }, - task_list = { - min_height = 0.5, - bindings = { - ['o'] = false, - [''] = false, - [''] = false, - [''] = false, - [''] = false, - [''] = false, - [''] = false, - [''] = 'ScrollOutputUp', - [''] = 'ScrollOutputDown', - }, + opts = { + templates = { 'builtin', 'custom' }, + task_list = { + min_height = 0.5, + bindings = { + ['o'] = false, + [''] = false, + [''] = false, + [''] = false, + [''] = false, + [''] = false, + [''] = false, + [''] = 'ScrollOutputUp', + [''] = 'ScrollOutputDown', }, - }) - vim.keymap.set('n', 'or', 'OverseerRun', { desc = '[O]verseer [R]un' }) - vim.keymap.set('n', 'ot', 'OverseerToggle', { desc = '[O]verseer [T]oggle' }) - end, + }, + }, + keys = { + { 'or', 'OverseerRun', desc = '[O]verseer [R]un' }, + { 'ot', 'OverseerToggle', desc = '[O]verseer [T]oggle' } + } } diff --git a/.config/nvim/lua/custom/plugins/statusline.lua b/.config/nvim/lua/custom/plugins/statusline.lua index 8c37eab..8dfe41f 100644 --- a/.config/nvim/lua/custom/plugins/statusline.lua +++ b/.config/nvim/lua/custom/plugins/statusline.lua @@ -1,8 +1,8 @@ return { 'nvim-lualine/lualine.nvim', dependencies = { 'nvim-tree/nvim-web-devicons', 'linrongbin16/lsp-progress.nvim' }, + event = 'BufWinEnter', config = function() - require('custom.statusline') + require('custom.configs.statusline') end, - event = 'BufWinEnter', } diff --git a/.config/nvim/lua/custom/plugins/telescope.lua b/.config/nvim/lua/custom/plugins/telescope.lua index 1d8f49c..945dc2e 100644 --- a/.config/nvim/lua/custom/plugins/telescope.lua +++ b/.config/nvim/lua/custom/plugins/telescope.lua @@ -8,6 +8,15 @@ return { }, cmd = 'Telescope', config = function() - require('custom.telescope') + require('custom.configs.telescope') end, + keys = { + 'fs', + 'fa', + 'fh', + 'fm', + 'lv', + 'f.', + 'th', + }, } diff --git a/.config/nvim/lua/custom/plugins/treesitter.lua b/.config/nvim/lua/custom/plugins/treesitter.lua index ec3136c..a5fba2d 100644 --- a/.config/nvim/lua/custom/plugins/treesitter.lua +++ b/.config/nvim/lua/custom/plugins/treesitter.lua @@ -1,6 +1,7 @@ return { { 'nvim-treesitter/nvim-treesitter', + lazy = true, build = ':TSUpdate', config = function() ---@type userdata diff --git a/.config/nvim/lua/custom/plugins/ui.lua b/.config/nvim/lua/custom/plugins/ui.lua deleted file mode 100644 index 97aeadd..0000000 --- a/.config/nvim/lua/custom/plugins/ui.lua +++ /dev/null @@ -1,2 +0,0 @@ -return { -} diff --git a/.config/nvim/lua/custom/plugins/utility.lua b/.config/nvim/lua/custom/plugins/utility.lua index 5deee38..66e88a8 100644 --- a/.config/nvim/lua/custom/plugins/utility.lua +++ b/.config/nvim/lua/custom/plugins/utility.lua @@ -25,9 +25,18 @@ return { require('auto-session').setup({ log_level = 'error', auto_session_suppress_dirs = { '~/', '/' }, + session_lens = { load_on_setup = false }, }) - local session = require('auto-session.session-lens') - vim.keymap.set('n', '', session.search_session, { desc = '[S]ession Manager' }) + + local session_lens_setup_done = false + local function search_session() + if not session_lens_setup_done then + require('auto-session').setup_session_lens() + session_lens_setup_done = true + end + require('auto-session.session-lens').search_session() + end + vim.keymap.set('n', '', search_session, { desc = '[S]ession Manager' }) end, }, { 'wakatime/vim-wakatime', lazy = false }, @@ -144,11 +153,7 @@ return { vim.api.nvim_set_hl(0, 'LeapBackdrop', { fg = '#777777' }) end, }, - { - 'windwp/nvim-autopairs', - event = 'InsertEnter', - config = true, - }, + { 'windwp/nvim-autopairs', event = 'InsertEnter', config = true }, { -- 'numToStr/Comment.nvim', 'os-mey/Comment.nvim', @@ -168,4 +173,16 @@ return { vim.keymap.set('v', '', toggle_linewise_selection, { noremap = true, silent = true }) end, }, + { + 'j-morano/buffer_manager.nvim', + dependencies = { 'nvim-lua/plenary.nvim' }, + keys = { + { + 'e', + function() + require('buffer_manager.ui').toggle_quick_menu() + end, + }, + }, + }, } diff --git a/.config/nvim/lua/custom/statusline.lua b/.config/nvim/lua/custom/statusline.lua deleted file mode 100644 index ce581c4..0000000 --- a/.config/nvim/lua/custom/statusline.lua +++ /dev/null @@ -1,92 +0,0 @@ -local lualine = require('lualine') -local lsp_progress = require('lsp-progress') - -local progress_filled = '█' -local progress_empty = '░' -local function progress_bar(percentage, width) - -- Ensure i is an integer between 0 and width (inclusive) - local i = math.max(0, math.min(math.floor(width * percentage), width)) - return string.rep(progress_filled, i) .. string.rep(progress_empty, width - i) -end - -local progress_bar_width = 10 -lsp_progress.setup({ - format = function(client_messages) -- global - local sign = ' LSP' - if #client_messages > 0 then - return sign .. ' ' .. table.concat(client_messages, ' ') - end - if #require('lsp-progress.api').lsp_clients() > 0 then - return sign - end - return '' - end, - client_format = function(_, _, series_messages) -- per lsp - return #series_messages > 0 and table.concat(series_messages, ', ') or nil - end, - series_format = function(title, message, percentage, done) -- per progress - local builder = {} - local has_title = false - local has_message = false - if type(title) == 'string' and string.len(title) > 0 then - table.insert(builder, title .. ':') - has_title = true - end - if percentage then - table.insert(builder, string.format('%.0f%%', percentage)) - table.insert(builder, 1, progress_bar(percentage / 100, progress_bar_width)) - end - if type(message) == 'string' and string.len(message) > 0 then - table.insert(builder, string.format('(%s)', message)) - has_message = true - end - if done and (has_title or has_message) then - table.insert(builder, ' ') - end - return table.concat(builder, ' ') - end, -}) - -lualine.setup({ - options = { - globalstatus = true, - theme = 'auto', - }, - sections = { - lualine_a = { { 'mode', icon = '' } }, - lualine_b = { - require('auto-session.lib').current_session_name, - { 'branch', icon = '' }, - { - 'diagnostics', - symbols = { - error = '󰅙 ', - warn = '󰀦 ', - info = '󰋼 ', - hint = '󰌵 ', - }, - }, - }, - lualine_c = { - function() - return lsp_progress.progress() - end, - }, - lualine_x = { - 'searchcount', - 'encoding', - 'fileformat', - 'filetype', - }, - lualine_y = { 'progress' }, - lualine_z = { 'location' }, - }, - extensions = { 'oil', 'trouble' }, -}) - --- Refresh lualine when lsp progress is updated -vim.api.nvim_create_autocmd('User', { - group = vim.api.nvim_create_augroup('lualine_augroup', { clear = true }), - pattern = 'LspProgressStatusUpdated', - callback = require('lualine').refresh, -}) diff --git a/.config/nvim/lua/custom/telescope.lua b/.config/nvim/lua/custom/telescope.lua deleted file mode 100644 index b554a33..0000000 --- a/.config/nvim/lua/custom/telescope.lua +++ /dev/null @@ -1,40 +0,0 @@ -local telescope = require('telescope') -telescope.setup({ - pickers = { - find_files = { follow = true }, - grep_string = { additional_args = '--follow' }, - live_grep = { additional_args = '--follow' }, - }, - extensions = { - fzf = { - fuzzy = true, -- false will only do exact matching - override_generic_sorter = true, - override_file_sorter = true, - case_mode = 'smart_case', -- default "smart_case" or "ignore_case" or "respect_case" - }, - ['ui-select'] = { - require('telescope.themes').get_dropdown({}), - }, - }, -}) - -pcall(telescope.load_extension('ui-select')) -pcall(telescope.load_extension('fzf')) - -local builtin = require('telescope.builtin') -local function find_all() - builtin.find_files({ - cwd = '~', - hidden = true, - no_ignore = true, - no_ignore_parent = true, - }) -end - -vim.keymap.set('n', 'fs', builtin.find_files, { desc = '[F]ile [S]ystem' }) -vim.keymap.set('n', 'fa', find_all, { desc = '[F]ind [A]ll files' }) -vim.keymap.set('n', 'fh', builtin.help_tags, { desc = '[F]ind [H]elp' }) -vim.keymap.set('n', 'fm', builtin.man_pages, { desc = '[F]ind [M]an Pages' }) -vim.keymap.set('n', 'lv', builtin.live_grep, { desc = '[L]ive [G]rep' }) -vim.keymap.set('n', 'f.', builtin.oldfiles, { desc = '[F]ind Recent Files' }) -vim.keymap.set('n', 'th', builtin.colorscheme, { desc = 'List [Th]eme' }) -- cgit v1.3.1