modernize all the things. no errors msgs!

This commit is contained in:
Adam Jeniski 2023-04-24 09:17:21 -04:00
parent fb22b8ab2d
commit 503bd435b1
5 changed files with 93 additions and 111 deletions

View File

@ -24,16 +24,6 @@ lsp.on_attach(function(client, bufnr)
vim.keymap.set("i", "<C-h>", vim.lsp.buf.signature_help, opts) vim.keymap.set("i", "<C-h>", vim.lsp.buf.signature_help, opts)
end) end)
lsp.configure('sumneko_lua', {
settings = {
Lua = {
diagnostics = {
globals = { 'vim' }
}
}
}
})
local cmp = require('cmp') local cmp = require('cmp')
local cmp_select = { behavior = cmp.SelectBehavior.Select } local cmp_select = { behavior = cmp.SelectBehavior.Select }
lsp.setup_nvim_cmp({ lsp.setup_nvim_cmp({

View File

@ -1,107 +1,105 @@
local lib = require("nvim-tree.lib") local function on_attach(bufnr)
local view = require("nvim-tree.view") local api = require('nvim-tree.api')
local git_add = function() local function opts(desc)
local node = lib.get_node_at_cursor() return { desc = 'nvim-tree: ' .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true }
local gs = node.git_status 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 -- Default mappings. Feel free to modify or remove as you wish.
elseif gs == "M " or gs == "A " then --
vim.cmd("silent !git restore --staged " .. node.absolute_path) -- BEGIN_DEFAULT_ON_ATTACH
end vim.keymap.set('n', '<C-]>', api.tree.change_root_to_node, opts('CD'))
vim.keymap.set('n', '<C-e>', api.node.open.replace_tree_buffer, opts('Open: In Place'))
vim.keymap.set('n', '<C-k>', api.node.show_info_popup, opts('Info'))
vim.keymap.set('n', '<C-r>', api.fs.rename_sub, opts('Rename: Omit Filename'))
vim.keymap.set('n', '<C-t>', api.node.open.tab, opts('Open: New Tab'))
vim.keymap.set('n', '<C-v>', api.node.open.vertical, opts('Open: Vertical Split'))
vim.keymap.set('n', '<C-x>', api.node.open.horizontal, opts('Open: Horizontal Split'))
vim.keymap.set('n', '<BS>', api.node.navigate.parent_close, opts('Close Directory'))
vim.keymap.set('n', '<CR>', api.node.open.edit, opts('Open'))
vim.keymap.set('n', '<Tab>', 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() -- Mappings removed via:
-- open as vsplit on current node -- remove_keymaps
local action = "edit" -- OR
local node = lib.get_node_at_cursor() -- 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 -- Mappings migrated from view.mappings.list
lib.expand_or_collapse(node) --
-- 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 vim.keymap.set('n', 'Z', api.node.run.system, opts('Run System'))
require('nvim-tree.actions.node.open-file').fn(action, node.absolute_path)
view.close() -- Close the tree if file was opened
end
end 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({ require("nvim-tree").setup({
view = { on_attach = on_attach,
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
}
}
}) })
vim.api.nvim_set_keymap("n", "<C-h>", ":NvimTreeToggle<cr>", { silent = true, noremap = true })

View File

@ -2,6 +2,7 @@ vim.cmd([[packadd packer.nvim]])
return require('packer').startup(function(use) return require('packer').startup(function(use)
use 'wbthomason/packer.nvim' use 'wbthomason/packer.nvim'
use 'nvim-lua/plenary.nvim'
use('nvim-telescope/telescope.nvim', { use('nvim-telescope/telescope.nvim', {
tag = '0.1.0', tag = '0.1.0',
requires = { requires = {
@ -89,14 +90,6 @@ return require('packer').startup(function(use)
require('Comment').setup() require('Comment').setup()
end 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('TravonteD/tree-sitter-fennel')
use({ 'tpope/vim-sexp-mappings-for-regular-people', requires = { 'guns/vim-sexp' } }) use({ 'tpope/vim-sexp-mappings-for-regular-people', requires = { 'guns/vim-sexp' } })
use({ use({

View File

@ -1,6 +1,6 @@
require'nvim-treesitter.configs'.setup { require'nvim-treesitter.configs'.setup {
-- A list of parser names, or "all" -- 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`) -- Install parsers synchronously (only applied to `ensure_installed`)
sync_install = false, sync_install = false,

View File

@ -36,3 +36,4 @@ nmap <leader>ir :<Action>(Run)<cr>
nmap <leader>ib :<Action>(ToggleLineBreakpoint)<cr> nmap <leader>ib :<Action>(ToggleLineBreakpoint)<cr>
nmap <leader>iR :<Action>(IdeaVim.ReloadVimRc.reload)<cr> nmap <leader>iR :<Action>(IdeaVim.ReloadVimRc.reload)<cr>
nmap <leader><leader> :<Action>(SearchEverywhere)<cr> nmap <leader><leader> :<Action>(SearchEverywhere)<cr>
nmap <leader>it :<Action>(ActivateTerminalToolWindow)<cr>