updated neovim config

This commit is contained in:
Stephens Jean-Jacques 2023-09-12 22:59:41 -04:00
parent 98ad2ee32a
commit 8674b85494
2 changed files with 232 additions and 4 deletions

View file

@ -1,3 +1,4 @@
---@diagnostic disable: missing-fields
--[[
=====================================================================
@ -84,9 +85,13 @@ require('lazy').setup({
{ 'williamboman/mason.nvim', config = true },
'williamboman/mason-lspconfig.nvim',
-- Extensions for the built-in LSP support in Neovim
-- for eclipse.jdt.ls to enable LSPs for Java
'mfussenegger/nvim-jdtls',
-- Useful status updates for LSP
-- NOTE: `opts = {}` is the same as calling `require('fidget').setup({})`
{ 'j-hui/fidget.nvim', tag = 'legacy', opts = {} },
{ 'j-hui/fidget.nvim', tag = 'legacy', opts = {} },
-- Additional lua configuration, makes nvim stuff amazing!
'folke/neodev.nvim',
@ -110,7 +115,7 @@ require('lazy').setup({
},
-- Useful plugin to show you pending keybinds.
{ 'folke/which-key.nvim', opts = {} },
{ 'folke/which-key.nvim', opts = {} },
{
-- Adds git related signs to the gutter, as well as utilities for managing changes
'lewis6991/gitsigns.nvim',
@ -124,7 +129,8 @@ require('lazy').setup({
changedelete = { text = '~' },
},
on_attach = function(bufnr)
vim.keymap.set('n', '<leader>gp', require('gitsigns').prev_hunk, { buffer = bufnr, desc = '[G]o to [P]revious Hunk' })
vim.keymap.set('n', '<leader>gp', require('gitsigns').prev_hunk,
{ buffer = bufnr, desc = '[G]o to [P]revious Hunk' })
vim.keymap.set('n', '<leader>gn', require('gitsigns').next_hunk, { buffer = bufnr, desc = '[G]o to [N]ext Hunk' })
vim.keymap.set('n', '<leader>ph', require('gitsigns').preview_hunk, { buffer = bufnr, desc = '[P]review [H]unk' })
end,
@ -189,6 +195,23 @@ require('lazy').setup({
},
},
{ 'echasnovski/mini.pairs', version = false },
{
"folke/flash.nvim",
event = "VeryLazy",
---@type Flash.Config
opts = {},
-- stylua: ignore
keys = {
{ "s", mode = { "n", "o", "x" }, function() require("flash").jump() end, desc = "Flash" },
{ "S", mode = { "n", "o", "x" }, function() require("flash").treesitter() end, desc = "Flash Treesitter" },
{ "r", mode = "o", function() require("flash").remote() end, desc = "Remote Flash" },
{ "R", mode = { "o", "x" }, function() require("flash").treesitter_search() end, desc = "Treesitter Search" },
{ "<c-s>", mode = { "c" }, function() require("flash").toggle() end, desc = "Toggle Flash Search" },
},
},
{
-- Highlight, edit, and navigate code
'nvim-treesitter/nvim-treesitter',
@ -254,6 +277,9 @@ vim.o.completeopt = 'menuone,noselect'
-- NOTE: You should make sure your terminal supports this
vim.o.termguicolors = true
-- Center the cursor in the middle of the screen when scrolling
vim.o.scrolloff = 999
-- [[ Basic Keymaps ]]
-- Keymaps for better default experience
@ -439,7 +465,7 @@ local servers = {
-- gopls = {},
-- pyright = {},
-- rust_analyzer = {},
-- tsserver = {},
tsserver = {},
-- html = { filetypes = { 'html', 'twig', 'hbs'} },
lua_ls = {
@ -450,9 +476,13 @@ local servers = {
},
}
require('flash').toggle(false)
-- Setup neovim lua configuration
require('neodev').setup()
require('mini.pairs').setup()
-- nvim-cmp supports additional completion capabilities, so broadcast that to servers
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities = require('cmp_nvim_lsp').default_capabilities(capabilities)
@ -475,6 +505,8 @@ mason_lspconfig.setup_handlers {
end
}
vim.lsp.set_log_level('debug')
-- [[ Configure nvim-cmp ]]
-- See `:help cmp`
local cmp = require 'cmp'