From 763124e737b61dafa408575017d68d450e688d3e Mon Sep 17 00:00:00 2001 From: Sonny Bakker Date: Fri, 3 Jan 2025 06:59:50 +0100 Subject: [PATCH 1/4] Focus on current file when toggling nvim-tree --- templates/nvim/lua/keybindings.lua.j2 | 3 +-- templates/nvim/lua/nvim-tree.lua.j2 | 12 ++++++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/templates/nvim/lua/keybindings.lua.j2 b/templates/nvim/lua/keybindings.lua.j2 index 731135a..be7e754 100644 --- a/templates/nvim/lua/keybindings.lua.j2 +++ b/templates/nvim/lua/keybindings.lua.j2 @@ -1,8 +1,7 @@ -- {{ ansible_managed }} -local opts = {noremap=true, silent=true} +local opts = { noremap = true, silent = true } -vim.api.nvim_set_keymap('n', '', ':NvimTreeToggle', opts) vim.api.nvim_set_keymap('n', 'ff', 'lua require("telescope.builtin").find_files()', opts) vim.api.nvim_set_keymap('n', 'fg', 'lua require("telescope.builtin").live_grep()', opts) vim.api.nvim_set_keymap('n', 'fb', 'lua require("telescope.builtin").buffers()', opts) diff --git a/templates/nvim/lua/nvim-tree.lua.j2 b/templates/nvim/lua/nvim-tree.lua.j2 index 904f72b..d81328e 100644 --- a/templates/nvim/lua/nvim-tree.lua.j2 +++ b/templates/nvim/lua/nvim-tree.lua.j2 @@ -2,10 +2,18 @@ local nvim_tree = require('nvim-tree'); local nvim_tree_icons = require('nvim-web-devicons'); +local api = require('nvim-tree.api') + +local function toggle_tree() + api.tree.toggle({ find_file = true, update_root = true, focus = true }) +end + +vim.api.nvim_set_keymap( + 'n', '', '', + { noremap = true, silent = true, callback = toggle_tree } +) local function my_on_attach(bufnr) - local api = require('nvim-tree.api') - local function opts(desc) return { desc = 'nvim-tree: ' .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true } end From a791f70f5f9949f76fa69cd23c1569efbf22b099 Mon Sep 17 00:00:00 2001 From: Sonny Bakker Date: Fri, 3 Jan 2025 07:30:43 +0100 Subject: [PATCH 2/4] Remove separate keybindings module --- tasks/neovim.yml | 4 ---- templates/nvim/init.lua.j2 | 1 - templates/nvim/lua/keybindings.lua.j2 | 12 ------------ templates/nvim/lua/telescope.lua.j2 | 14 +++++++++++++- 4 files changed, 13 insertions(+), 18 deletions(-) delete mode 100644 templates/nvim/lua/keybindings.lua.j2 diff --git a/tasks/neovim.yml b/tasks/neovim.yml index 3e7c323..36d771a 100644 --- a/tasks/neovim.yml +++ b/tasks/neovim.yml @@ -116,10 +116,6 @@ src: 'templates/nvim/lua/auto-commands.lua.j2', dest: '{{ xdg_config_dir }}/nvim/lua/auto-commands.lua', } - - { - src: 'templates/nvim/lua/keybindings.lua.j2', - dest: '{{ xdg_config_dir }}/nvim/lua/keybindings.lua', - } - { src: 'templates/nvim/lua/lsp.lua.j2', dest: '{{ xdg_config_dir }}/nvim/lua/lsp.lua', diff --git a/templates/nvim/init.lua.j2 b/templates/nvim/init.lua.j2 index 74928fa..c540171 100644 --- a/templates/nvim/init.lua.j2 +++ b/templates/nvim/init.lua.j2 @@ -3,7 +3,6 @@ require('options') require('lsp') require('nvim-cmp') -require('keybindings') require('auto-commands') require('tree-sitter') require('lua-line') diff --git a/templates/nvim/lua/keybindings.lua.j2 b/templates/nvim/lua/keybindings.lua.j2 deleted file mode 100644 index be7e754..0000000 --- a/templates/nvim/lua/keybindings.lua.j2 +++ /dev/null @@ -1,12 +0,0 @@ --- {{ ansible_managed }} - -local opts = { noremap = true, silent = true } - -vim.api.nvim_set_keymap('n', 'ff', 'lua require("telescope.builtin").find_files()', opts) -vim.api.nvim_set_keymap('n', 'fg', 'lua require("telescope.builtin").live_grep()', opts) -vim.api.nvim_set_keymap('n', 'fb', 'lua require("telescope.builtin").buffers()', opts) -vim.api.nvim_set_keymap('n', 'fh', 'lua require("telescope.builtin").help_tags()', opts) -vim.api.nvim_set_keymap('n', 'fj', 'lua require("telescope.builtin").jumplist()', opts) -vim.api.nvim_set_keymap('n', 'fl', 'lua require("telescope.builtin").loclist()', opts) -vim.api.nvim_set_keymap('n', 'fq', 'lua require("telescope.builtin").quickfix()', opts) -vim.api.nvim_set_keymap('n', 'fm', 'lua require("telescope.builtin").marks()', opts) diff --git a/templates/nvim/lua/telescope.lua.j2 b/templates/nvim/lua/telescope.lua.j2 index af27925..8e44027 100644 --- a/templates/nvim/lua/telescope.lua.j2 +++ b/templates/nvim/lua/telescope.lua.j2 @@ -1,6 +1,18 @@ -- {{ ansible_managed }} -local telescope = require('telescope'); +local telescope = require('telescope') +local builtin = require('telescope.builtin') + +local opts = { noremap = true, silent = true } + +vim.api.nvim_set_keymap('n', 'ff', '', { callback = builtin.find_files, unpack(opts) }) +vim.api.nvim_set_keymap('n', 'fg', '', { callback = builtin.live_grep, unpack(opts) }) +vim.api.nvim_set_keymap('n', 'fb', '', { callback = builtin.buffers, unpack(opts) }) +vim.api.nvim_set_keymap('n', 'fh', '', { callback = builtin.help_tags, unpack(opts) }) +vim.api.nvim_set_keymap('n', 'fj', '', { callback = builtin.jumplist, unpack(opts) }) +vim.api.nvim_set_keymap('n', 'fl', '', { callback = builtin.loclist, unpack(opts) }) +vim.api.nvim_set_keymap('n', 'fq', '', { callback = builtin.quickfix, unpack(opts) }) +vim.api.nvim_set_keymap('n', 'fm', '', { callback = builtin.marks, unpack(opts) }) telescope.setup({ defaults = { From 6f512112d8206adf07fde5efccb6ebb80885077b Mon Sep 17 00:00:00 2001 From: Sonny Bakker Date: Fri, 3 Jan 2025 07:31:59 +0100 Subject: [PATCH 3/4] Remove unused functions --- templates/nvim/lua/lsp.lua.j2 | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/templates/nvim/lua/lsp.lua.j2 b/templates/nvim/lua/lsp.lua.j2 index 77782d1..37b3645 100644 --- a/templates/nvim/lua/lsp.lua.j2 +++ b/templates/nvim/lua/lsp.lua.j2 @@ -3,11 +3,8 @@ --use an on_attach function to only map the following keys --after the language server attaches to the current buffer local on_attach = function(client, bufnr) - local function buf_set_keymap(...) vim.api.nvim_buf_set_keymap(bufnr, ...) end - local function buf_set_option(...) vim.api.nvim_buf_set_option(bufnr, ...) end - - -- mappings local opts = { buffer = bufnr, noremap = true, silent = true } + vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, opts) vim.keymap.set('n', 'gd', vim.lsp.buf.definition, opts) vim.keymap.set('n', 'K', vim.lsp.buf.hover, opts) From 6115ca4be240d25335f6f638a37dde37ac21362b Mon Sep 17 00:00:00 2001 From: Sonny Bakker Date: Fri, 3 Jan 2025 08:17:21 +0100 Subject: [PATCH 4/4] Replace `vim.api.nvim_set_keymap` with `vim.keymap.set` --- templates/nvim/lua/nvim-tree.lua.j2 | 5 +---- templates/nvim/lua/source-link.lua.j2 | 4 +--- templates/nvim/lua/telescope.lua.j2 | 16 ++++++++-------- 3 files changed, 10 insertions(+), 15 deletions(-) diff --git a/templates/nvim/lua/nvim-tree.lua.j2 b/templates/nvim/lua/nvim-tree.lua.j2 index d81328e..6715d70 100644 --- a/templates/nvim/lua/nvim-tree.lua.j2 +++ b/templates/nvim/lua/nvim-tree.lua.j2 @@ -8,10 +8,7 @@ local function toggle_tree() api.tree.toggle({ find_file = true, update_root = true, focus = true }) end -vim.api.nvim_set_keymap( - 'n', '', '', - { noremap = true, silent = true, callback = toggle_tree } -) +vim.keymap.set('n', '', toggle_tree, { noremap = true, silent = true }) local function my_on_attach(bufnr) local function opts(desc) diff --git a/templates/nvim/lua/source-link.lua.j2 b/templates/nvim/lua/source-link.lua.j2 index abbe9cc..8b7df92 100644 --- a/templates/nvim/lua/source-link.lua.j2 +++ b/templates/nvim/lua/source-link.lua.j2 @@ -4,6 +4,4 @@ local source_link = require('source-link') source_link.setup() -local opts = { noremap = true, silent = true } - -vim.api.nvim_set_keymap('n', '', ':SourceOpen', opts) +vim.keymap.set('n', '', ':SourceOpen', { noremap = true, silent = true }) diff --git a/templates/nvim/lua/telescope.lua.j2 b/templates/nvim/lua/telescope.lua.j2 index 8e44027..b74a42f 100644 --- a/templates/nvim/lua/telescope.lua.j2 +++ b/templates/nvim/lua/telescope.lua.j2 @@ -5,14 +5,14 @@ local builtin = require('telescope.builtin') local opts = { noremap = true, silent = true } -vim.api.nvim_set_keymap('n', 'ff', '', { callback = builtin.find_files, unpack(opts) }) -vim.api.nvim_set_keymap('n', 'fg', '', { callback = builtin.live_grep, unpack(opts) }) -vim.api.nvim_set_keymap('n', 'fb', '', { callback = builtin.buffers, unpack(opts) }) -vim.api.nvim_set_keymap('n', 'fh', '', { callback = builtin.help_tags, unpack(opts) }) -vim.api.nvim_set_keymap('n', 'fj', '', { callback = builtin.jumplist, unpack(opts) }) -vim.api.nvim_set_keymap('n', 'fl', '', { callback = builtin.loclist, unpack(opts) }) -vim.api.nvim_set_keymap('n', 'fq', '', { callback = builtin.quickfix, unpack(opts) }) -vim.api.nvim_set_keymap('n', 'fm', '', { callback = builtin.marks, unpack(opts) }) +vim.keymap.set('n', 'ff', builtin.find_files, opts) +vim.keymap.set('n', 'fg', builtin.live_grep, opts) +vim.keymap.set('n', 'fb', builtin.buffers, opts) +vim.keymap.set('n', 'fh', builtin.help_tags, opts) +vim.keymap.set('n', 'fj', builtin.jumplist, opts) +vim.keymap.set('n', 'fl', builtin.loclist, opts) +vim.keymap.set('n', 'fq', builtin.quickfix, opts) +vim.keymap.set('n', 'fm', builtin.marks, opts) telescope.setup({ defaults = {