From 503bd435b1a233e35b6e0151100b70456430821c Mon Sep 17 00:00:00 2001 From: Adam Jeniski Date: Mon, 24 Apr 2023 09:17:21 -0400 Subject: [PATCH] modernize all the things. no errors msgs! --- .config/nvim/after/plugin/lsp.lua | 10 -- .config/nvim/after/plugin/tree.lua | 180 +++++++++++++-------------- .config/nvim/lua/ajet/packer.lua | 9 +- .config/nvim/lua/ajet/treesitter.lua | 2 +- .ideavimrc | 3 +- 5 files changed, 93 insertions(+), 111 deletions(-) diff --git a/.config/nvim/after/plugin/lsp.lua b/.config/nvim/after/plugin/lsp.lua index 876e7ad..3516483 100644 --- a/.config/nvim/after/plugin/lsp.lua +++ b/.config/nvim/after/plugin/lsp.lua @@ -24,16 +24,6 @@ lsp.on_attach(function(client, bufnr) vim.keymap.set("i", "", vim.lsp.buf.signature_help, opts) end) -lsp.configure('sumneko_lua', { - settings = { - Lua = { - diagnostics = { - globals = { 'vim' } - } - } - } -}) - local cmp = require('cmp') local cmp_select = { behavior = cmp.SelectBehavior.Select } lsp.setup_nvim_cmp({ diff --git a/.config/nvim/after/plugin/tree.lua b/.config/nvim/after/plugin/tree.lua index d251711..9857452 100644 --- a/.config/nvim/after/plugin/tree.lua +++ b/.config/nvim/after/plugin/tree.lua @@ -1,107 +1,105 @@ -local lib = require("nvim-tree.lib") -local view = require("nvim-tree.view") +local function on_attach(bufnr) + local api = require('nvim-tree.api') -local git_add = function() - local node = lib.get_node_at_cursor() - local gs = node.git_status + local function opts(desc) + return { desc = 'nvim-tree: ' .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true } + end - -- If the file is untracked, unstaged or partially staged, we stage it - if gs == "??" or gs == "MM" or gs == "AM" or gs == " M" then - vim.cmd("silent !git add " .. node.absolute_path) - -- If the file is staged, we unstage - elseif gs == "M " or gs == "A " then - vim.cmd("silent !git restore --staged " .. node.absolute_path) - end + -- Default mappings. Feel free to modify or remove as you wish. + -- + -- BEGIN_DEFAULT_ON_ATTACH + vim.keymap.set('n', '', api.tree.change_root_to_node, opts('CD')) + vim.keymap.set('n', '', api.node.open.replace_tree_buffer, opts('Open: In Place')) + vim.keymap.set('n', '', api.node.show_info_popup, opts('Info')) + vim.keymap.set('n', '', api.fs.rename_sub, opts('Rename: Omit Filename')) + vim.keymap.set('n', '', api.node.open.tab, opts('Open: New Tab')) + vim.keymap.set('n', '', api.node.open.vertical, opts('Open: Vertical Split')) + vim.keymap.set('n', '', api.node.open.horizontal, opts('Open: Horizontal Split')) + vim.keymap.set('n', '', api.node.navigate.parent_close, opts('Close Directory')) + vim.keymap.set('n', '', api.node.open.edit, opts('Open')) + vim.keymap.set('n', '', api.node.open.preview, opts('Open Preview')) + vim.keymap.set('n', '>', api.node.navigate.sibling.next, opts('Next Sibling')) + vim.keymap.set('n', '<', api.node.navigate.sibling.prev, opts('Previous Sibling')) + vim.keymap.set('n', '.', api.node.run.cmd, opts('Run Command')) + vim.keymap.set('n', '-', api.tree.change_root_to_parent, opts('Up')) + vim.keymap.set('n', 'a', api.fs.create, opts('Create')) + vim.keymap.set('n', 'bmv', api.marks.bulk.move, opts('Move Bookmarked')) + vim.keymap.set('n', 'B', api.tree.toggle_no_buffer_filter, opts('Toggle No Buffer')) + vim.keymap.set('n', 'c', api.fs.copy.node, opts('Copy')) + vim.keymap.set('n', 'C', api.tree.toggle_git_clean_filter, opts('Toggle Git Clean')) + vim.keymap.set('n', '[c', api.node.navigate.git.prev, opts('Prev Git')) + vim.keymap.set('n', ']c', api.node.navigate.git.next, opts('Next Git')) + vim.keymap.set('n', 'd', api.fs.remove, opts('Delete')) + vim.keymap.set('n', 'D', api.fs.trash, opts('Trash')) + vim.keymap.set('n', 'E', api.tree.expand_all, opts('Expand All')) + vim.keymap.set('n', 'e', api.fs.rename_basename, opts('Rename: Basename')) + vim.keymap.set('n', ']e', api.node.navigate.diagnostics.next, opts('Next Diagnostic')) + vim.keymap.set('n', '[e', api.node.navigate.diagnostics.prev, opts('Prev Diagnostic')) + vim.keymap.set('n', 'F', api.live_filter.clear, opts('Clean Filter')) + vim.keymap.set('n', 'f', api.live_filter.start, opts('Filter')) + vim.keymap.set('n', 'g?', api.tree.toggle_help, opts('Help')) + vim.keymap.set('n', 'gy', api.fs.copy.absolute_path, opts('Copy Absolute Path')) + vim.keymap.set('n', 'H', api.tree.toggle_hidden_filter, opts('Toggle Dotfiles')) + vim.keymap.set('n', 'I', api.tree.toggle_gitignore_filter, opts('Toggle Git Ignore')) + vim.keymap.set('n', 'J', api.node.navigate.sibling.last, opts('Last Sibling')) + vim.keymap.set('n', 'K', api.node.navigate.sibling.first, opts('First Sibling')) + vim.keymap.set('n', 'm', api.marks.toggle, opts('Toggle Bookmark')) + vim.keymap.set('n', 'o', api.node.open.edit, opts('Open')) + vim.keymap.set('n', 'O', api.node.open.no_window_picker, opts('Open: No Window Picker')) + vim.keymap.set('n', 'p', api.fs.paste, opts('Paste')) + vim.keymap.set('n', 'P', api.node.navigate.parent, opts('Parent Directory')) + vim.keymap.set('n', 'q', api.tree.close, opts('Close')) + vim.keymap.set('n', 'r', api.fs.rename, opts('Rename')) + vim.keymap.set('n', 'R', api.tree.reload, opts('Refresh')) + vim.keymap.set('n', 's', api.node.run.system, opts('Run System')) + vim.keymap.set('n', 'S', api.tree.search_node, opts('Search')) + vim.keymap.set('n', 'U', api.tree.toggle_custom_filter, opts('Toggle Hidden')) + vim.keymap.set('n', 'W', api.tree.collapse_all, opts('Collapse')) + vim.keymap.set('n', 'x', api.fs.cut, opts('Cut')) + vim.keymap.set('n', 'y', api.fs.copy.filename, opts('Copy Name')) + vim.keymap.set('n', 'Y', api.fs.copy.relative_path, opts('Copy Relative Path')) + vim.keymap.set('n', '<2-LeftMouse>', api.node.open.edit, opts('Open')) + vim.keymap.set('n', '<2-RightMouse>', api.tree.change_root_to_node, opts('CD')) + -- END_DEFAULT_ON_ATTACH - lib.refresh_tree() -end -local function collapse_all() - require("nvim-tree.actions.tree-modifiers.collapse-all").fn() -end -local function edit_or_open() - -- open as vsplit on current node - local action = "edit" - local node = lib.get_node_at_cursor() + -- Mappings removed via: + -- remove_keymaps + -- OR + -- view.mappings.list..action = "" + -- + -- The dummy set before del is done for safety, in case a default mapping does not exist. + -- + -- You might tidy things by removing these along with their default mapping. + vim.keymap.set('n', 'O', '', { buffer = bufnr }) + vim.keymap.del('n', 'O', { buffer = bufnr }) + vim.keymap.set('n', '<2-RightMouse>', '', { buffer = bufnr }) + vim.keymap.del('n', '<2-RightMouse>', { buffer = bufnr }) + vim.keymap.set('n', 'D', '', { buffer = bufnr }) + vim.keymap.del('n', 'D', { buffer = bufnr }) + vim.keymap.set('n', 'E', '', { buffer = bufnr }) + vim.keymap.del('n', 'E', { buffer = bufnr }) - -- Just copy what's done normally with vsplit - if node.link_to and not node.nodes then - require('nvim-tree.actions.node.open-file').fn(action, node.link_to) - view.close() -- Close the tree if file was opened - elseif node.nodes ~= nil then - lib.expand_or_collapse(node) + -- Mappings migrated from view.mappings.list + -- + -- You will need to insert "your code goes here" for any mappings with a custom action_cb + vim.keymap.set('n', 'A', api.tree.expand_all, opts('Expand All')) + vim.keymap.set('n', '?', api.tree.toggle_help, opts('Help')) + vim.keymap.set('n', 'C', api.tree.change_root_to_node, opts('CD')) + vim.keymap.set('n', 'P', function() + local node = api.tree.get_node_under_cursor() + print(node.absolute_path) + end, opts('Print Node Path')) - else - require('nvim-tree.actions.node.open-file').fn(action, node.absolute_path) - view.close() -- Close the tree if file was opened - end + vim.keymap.set('n', 'Z', api.node.run.system, opts('Run System')) end -local function vsplit_preview() - -- open as vsplit on current node - local action = "vsplit" - local node = lib.get_node_at_cursor() - -- Just copy what's done normally with vsplit - if node.link_to and not node.nodes then - require('nvim-tree.actions.node.open-file').fn(action, node.link_to) - elseif node.nodes ~= nil then - lib.expand_or_collapse(node) - - else - require('nvim-tree.actions.node.open-file').fn(action, node.absolute_path) - - end - - -- Finally refocus on tree if it was lost - view.focus() -end - -local function hsplit_preview() - -- open as hsplit on current node - local action = "hsplit" - local node = lib.get_node_at_cursor() - - -- Just copy what's done normally with vsplit - if node.link_to and not node.nodes then - require('nvim-tree.actions.node.open-file').fn(action, node.link_to) - - elseif node.nodes ~= nil then - lib.expand_or_collapse(node) - - else - require('nvim-tree.actions.node.open-file').fn(action, node.absolute_path) - - end - - -- Finally refocus on tree if it was lost - view.focus() -end require("nvim-tree").setup({ - view = { - width = 50, - mappings = { - custom_only = false, - list = { - { key = "l", action = "edit", action_cb = edit_or_open }, - { key = "L", action = "vsplit_preview", action_cb = vsplit_preview }, - { key = "S", action = "hsplit_preview", action_cb = hsplit_preview }, - { key = "h", action = "close_node" }, - { key = "H", action = "collapse_all", action_cb = collapse_all }, - { key = "ga", action = "git_add", action_cb = git_add }, - } - }, - }, - actions = { - open_file = { - quit_on_open = false - } - } + on_attach = on_attach, }) - -vim.api.nvim_set_keymap("n", "", ":NvimTreeToggle", { silent = true, noremap = true }) diff --git a/.config/nvim/lua/ajet/packer.lua b/.config/nvim/lua/ajet/packer.lua index 22628b1..9ddcb77 100755 --- a/.config/nvim/lua/ajet/packer.lua +++ b/.config/nvim/lua/ajet/packer.lua @@ -2,6 +2,7 @@ vim.cmd([[packadd packer.nvim]]) return require('packer').startup(function(use) use 'wbthomason/packer.nvim' + use 'nvim-lua/plenary.nvim' use('nvim-telescope/telescope.nvim', { tag = '0.1.0', requires = { @@ -89,14 +90,6 @@ return require('packer').startup(function(use) require('Comment').setup() end } - use { - 'tjdevries/sg.nvim', - run = "cargo build --workspace", - requires = { "nvim-lua/plenary.nvim" }, - config = function() - require("sg").setup {} - end - } use('TravonteD/tree-sitter-fennel') use({ 'tpope/vim-sexp-mappings-for-regular-people', requires = { 'guns/vim-sexp' } }) use({ diff --git a/.config/nvim/lua/ajet/treesitter.lua b/.config/nvim/lua/ajet/treesitter.lua index a8bab26..402dd91 100644 --- a/.config/nvim/lua/ajet/treesitter.lua +++ b/.config/nvim/lua/ajet/treesitter.lua @@ -1,6 +1,6 @@ require'nvim-treesitter.configs'.setup { -- A list of parser names, or "all" - ensure_installed = { "c", "help", "javascript", "typescript", "lua", "rust" }, + ensure_installed = { }, -- Install parsers synchronously (only applied to `ensure_installed`) sync_install = false, diff --git a/.ideavimrc b/.ideavimrc index f22a595..d7dc47e 100644 --- a/.ideavimrc +++ b/.ideavimrc @@ -35,4 +35,5 @@ nmap id :(Debug) nmap ir :(Run) nmap ib :(ToggleLineBreakpoint) nmap iR :(IdeaVim.ReloadVimRc.reload) -nmap :(SearchEverywhere) \ No newline at end of file +nmap :(SearchEverywhere) +nmap it :(ActivateTerminalToolWindow) \ No newline at end of file