neovim

Personal neovim configuration files
git clone git://gtms.dev:neovim
Log | Files | Refs

commit e88833386beced9c2471a675744152c5d2da66e4
parent f84a75aa509d99a84007159e508c84c7bc2ebbc7
Author: Tomas Nemec <nemi@skaut.cz>
Date:   Thu, 23 Feb 2023 05:54:54 +0100

update

Diffstat:
Mafter/plugin/telescope.lua | 94++++++++++++++++++++++++-------------------------------------------------------
Mlua/tms/p/telescope.lua | 24++++++++++++++++++------
2 files changed, 46 insertions(+), 72 deletions(-)

diff --git a/after/plugin/telescope.lua b/after/plugin/telescope.lua @@ -4,20 +4,14 @@ end local telescope = require('telescope') local actions = require('telescope.actions') -local action_generate = require('telescope.actions.generate') -local themes = require('telescope.themes') telescope.setup { - defaults = { - mappings = { - i = { ['<esc>'] = actions.close, ['<c-y>'] = actions.select_default, ['<c-?>'] = action_generate.which_key() }, - }, - }, - extensions = { fzy_native = { override_generic_sorter = false, override_file_sorter = true } }, + defaults = { mappings = { i = { ['<esc>'] = actions.close, ['<c-y>'] = actions.select_default } } }, + -- extensions = { fzy_native = { override_generic_sorter = false, override_file_sorter = true } }, } -- extensions -pcall(telescope.load_extension, 'fzy_native') +-- pcall(telescope.load_extension, 'fzy_native') pcall(telescope.load_extension, 'dap') pcall(telescope.load_extension, 'zk') pcall(telescope.load_extension, 'git_worktree') @@ -26,69 +20,37 @@ vim.cmd.packadd('packer.nvim') require('packer').init() _ = pcall(telescope.load_extension, 'packer') -local layout = require('tms.p.telescope').layout +local l = require('tms.p.telescope').L -vim.keymap.set('n', '<space>h', function() - require('telescope.builtin').help_tags() -end, { desc = 'Telescope Help Tags' }) - -vim.keymap.set('n', '<space>d', function() - require('telescope.builtin').find_files(layout.dd_large_noprev) -end, { desc = 'Telescope Find Files' }) +local builtin = function(name, theme) + return function() + require('telescope.builtin')[name](theme) + end +end -vim.keymap.set('n', '<space>D', function() - local opts = layout.dd_large_noprev +vim.keymap.set('n', '<space>q', builtin('quickfix', l.dd_large()), { desc = 'Telescope Quickfix' }) +vim.keymap.set('n', '<space>k', builtin('keymaps', l.dd_large()), { desc = 'Telescope Keymaps' }) +vim.keymap.set('n', '<space>o', builtin('oldfiles'), { desc = 'Telescope Old Files' }) +vim.keymap.set('n', '<space>s', builtin('spell_suggest', l.dd()), { desc = 'Telescope Spell Suggest' }) +vim.keymap.set('n', '<space>t', builtin('treesitter'), { desc = 'Telescope Treesitter' }) +vim.keymap.set('n', '<space>p', require('telescope').extensions.packer.packer, { desc = 'Telescope Packer' }) +vim.keymap.set('n', '<space>c', builtin('git_status', l.dd_large()), { desc = 'Telescope Git Status' }) +vim.keymap.set('n', '<space>e', builtin('grep_string'), { desc = 'Telescope Grep String' }) +vim.keymap.set('n', '<space>l', builtin('current_buffer_fuzzy_find', l.dd_large_noprev()), + { desc = 'Telescope Buffer Lines' }) +vim.keymap.set('n', '<space>b', builtin('buffers', l.dd_large()), { desc = 'Telescope Buffers' }) +vim.keymap.set('n', '<space>h', builtin('help_tags'), { desc = 'Telescope Help Tags' }) +vim.keymap.set('n', '<space>d', builtin('diagnostics', l.dd_large()), { desc = 'Telescope Diagnostics' }) +vim.keymap.set('n', '<space>f', builtin('git_files', l.dd_large_noprev()), { desc = 'Telescope Find Files' }) +vim.keymap.set('n', '<space>F', function() + local opts = l.dd_large_noprev() opts.no_ignore = true opts.hidden = true require('telescope.builtin').find_files(opts) end, { desc = 'Telescope Find Files' }) -vim.keymap.set('n', '<space>g', function() - require('telescope.builtin').git_files() -end, { desc = 'Telescope Git Files' }) - -vim.keymap.set('n', '<space>b', function() - require('telescope.builtin').buffers(layout.dd_large) -end, { desc = 'Telescope Buffers' }) - -vim.keymap.set('n', '<space>l', function() - require('telescope.builtin').current_buffer_fuzzy_find(layout.dd_large_noprev) -end, { desc = 'Telescope Buffer Lines' }) - -vim.keymap.set('n', '<space>e', function() - require('telescope.builtin').grep_string() -end, { desc = 'Telescope Grep String' }) - -vim.keymap.set('n', '<space>c', function() - require('telescope.builtin').git_status() -end, { desc = 'Telescope Git Status' }) - -vim.keymap.set('n', '<space>q', function() - require('telescope.builtin').quickfix(layout.dd_large) -end, { desc = 'Telescope Quickfix' }) - -vim.keymap.set('n', '<space>k', function() - require('telescope.builtin').keymaps(layout.dd_large) -end, { desc = 'Telescope Keymaps' }) - -vim.keymap.set('n', '<space>o', function() - require('telescope.builtin').oldfiles() -end, { desc = 'Telescope Old Files' }) - -vim.keymap.set('n', '<space>s', function() - require('telescope.builtin').spell_suggest() -end, { desc = 'Telescope Spell Suggest' }) - -vim.keymap.set('n', '<space>t', function() - require('telescope.builtin').treesitter() -end, { desc = 'Telescope Treesitter' }) - -vim.keymap.set('n', '<space>p', function() - require('telescope').extensions.packer.packer() -end, { desc = 'Telescope Packer' }) - vim.keymap.set('n', '<space>P', function() - require('telescope.builtin').reloader(layout.dd_noprev) + require('telescope.builtin').reloader(l.dd_noprev()) end, { desc = 'Telescope Reloader' }) vim.keymap.set('n', '<space>wo', function() @@ -100,7 +62,7 @@ vim.keymap.set('n', '<space>wi', function() end, { desc = 'Telescope Git Worktree Create' }) vim.keymap.set('n', '<space>n', function() - require('telescope.builtin').find_files(themes.get_dropdown { + require('telescope.builtin').find_files(require('telescope.themes').get_dropdown { prompt_title = 'dotfiles', cwd = '~/.config/nvim', previewer = false, @@ -112,7 +74,7 @@ vim.api.nvim_create_autocmd('LspAttach', { group = group, callback = function() vim.keymap.set('n', '<space>m', function() - require('telescope.builtin').lsp_document_symbols(layout.dd_large) + require('telescope.builtin').lsp_document_symbols(l.dd_large()) end, { desc = 'Telescope Lsp Document Symbols' }) vim.keymap.set('n', '<space>M', function() diff --git a/lua/tms/p/telescope.lua b/lua/tms/p/telescope.lua @@ -8,12 +8,24 @@ local sorters = require('telescope.sorters') local M = {} -M.layout = { - dd = themes.get_dropdown(), - dd_noprev = themes.get_dropdown({ previewer = false }), - dd_large = themes.get_dropdown({ layout_config = { width = 120 } }), - dd_large_noprev = themes.get_dropdown { layout_config = { width = 120 }, previewer = false }, -} +local L = {} +M.L = L + +function L.dd() + return themes.get_dropdown() +end + +function L.dd_noprev() + return themes.get_dropdown({ previewer = false }) +end + +function L.dd_large() + return themes.get_dropdown({ layout_config = { width = 120 } }) +end + +function L.dd_large_noprev() + return themes.get_dropdown { layout_config = { width = 120 }, previewer = false } +end M.mail_address = function() pickers.new {