diff --git a/lua/plugins/completions.lua b/lua/plugins/completions.lua index de38cbf..2488da8 100644 --- a/lua/plugins/completions.lua +++ b/lua/plugins/completions.lua @@ -1,59 +1,54 @@ return { - { - "L3MON4D3/LuaSnip", - dependencies = { - "saadparwaiz1/cmp_luasnip", - "rafamadriz/friendly-snippets", - }, - }, - { "hrsh7th/cmp-nvim-lsp" }, - { - "hrsh7th/nvim-cmp", - config = function() - local cmp = require "cmp" + { + "L3MON4D3/LuaSnip", + dependencies = { + "saadparwaiz1/cmp_luasnip", "rafamadriz/friendly-snippets" + } + }, {"hrsh7th/cmp-nvim-lsp"}, { + "hrsh7th/nvim-cmp", + config = function() + local cmp = require "cmp" - cmp.setup { - snippet = { - -- REQUIRED - you must specify a snippet engine - expand = function(args) - -- vim.fn["vsnip#anonymous"](args.body) -- For `vsnip` users. - require("luasnip").lsp_expand(args.body) -- For `luasnip` users. - -- require('snippy').expand_snippet(args.body) -- For `snippy` users. - -- vim.fn["UltiSnips#Anon"](args.body) -- For `ultisnips` users. - -- vim.snippet.expand(args.body) -- For native neovim snippets (Neovim v0.10+) + cmp.setup { + snippet = { + -- REQUIRED - you must specify a snippet engine + expand = function(args) + -- vim.fn["vsnip#anonymous"](args.body) -- For `vsnip` users. + require("luasnip").lsp_expand(args.body) -- For `luasnip` users. + -- require('snippy').expand_snippet(args.body) -- For `snippy` users. + -- vim.fn["UltiSnips#Anon"](args.body) -- For `ultisnips` users. + -- vim.snippet.expand(args.body) -- For native neovim snippets (Neovim v0.10+) - -- For `mini.snippets` users: - -- local insert = MiniSnippets.config.expand.insert or MiniSnippets.default_insert - -- insert({ body = args.body }) -- Insert at cursor - -- cmp.resubscribe({ "TextChangedI", "TextChangedP" }) - -- require("cmp.config").set_onetime({ sources = {} }) - end, - }, - window = { - --completion = cmp.config.window.bordered(), - --documentation = cmp.config.window.bordered(), - }, - mapping = cmp.mapping.preset.insert { - [""] = cmp.mapping.scroll_docs(-4), - [""] = cmp.mapping.scroll_docs(4), - [""] = cmp.mapping.complete(), - [""] = cmp.mapping.abort(), - [""] = cmp.mapping.confirm { select = true }, -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. - }, - sources = cmp.config.sources({ - --{ name = "nvim_lsp" }, - --{ name = "vsnip" }, -- For vsnip users. - { name = "luasnip" }, -- For luasnip users. - -- { name = 'ultisnips' }, -- For ultisnips users. - -- { name = 'snippy' }, -- For snippy users. - }, { - { name = "buffer" }, - }), - } + -- For `mini.snippets` users: + -- local insert = MiniSnippets.config.expand.insert or MiniSnippets.default_insert + -- insert({ body = args.body }) -- Insert at cursor + -- cmp.resubscribe({ "TextChangedI", "TextChangedP" }) + -- require("cmp.config").set_onetime({ sources = {} }) + end + }, + window = { + -- completion = cmp.config.window.bordered(), + -- documentation = cmp.config.window.bordered(), + }, + mapping = cmp.mapping.preset.insert { + [""] = cmp.mapping.scroll_docs(-4), + [""] = cmp.mapping.scroll_docs(4), + [""] = cmp.mapping.complete(), + [""] = cmp.mapping.abort(), + [""] = cmp.mapping.confirm {select = true} -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. + }, + sources = cmp.config.sources({ + -- { name = "nvim_lsp" }, + -- { name = "vsnip" }, -- For vsnip users. + {name = "luasnip"} -- For luasnip users. + -- { name = 'ultisnips' }, -- For ultisnips users. + -- { name = 'snippy' }, -- For snippy users. + }, {{name = "buffer"}}) + } - -- To use git you need to install the plugin petertriho/cmp-git and uncomment lines below - -- Set configuration for specific filetype. - --[[ cmp.setup.filetype('gitcommit', { + -- To use git you need to install the plugin petertriho/cmp-git and uncomment lines below + -- Set configuration for specific filetype. + --[[ cmp.setup.filetype('gitcommit', { sources = cmp.config.sources({ { name = 'git' }, }, { @@ -61,30 +56,24 @@ return { }) }) require("cmp_git").setup() ]] - -- + -- - -- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore). - cmp.setup.cmdline({ "/", "?" }, { - mapping = cmp.mapping.preset.cmdline(), - sources = { - { name = "buffer" }, - }, - }) + -- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore). + cmp.setup.cmdline({"/", "?"}, { + mapping = cmp.mapping.preset.cmdline(), + sources = {{name = "buffer"}} + }) - -- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore). - cmp.setup.cmdline(":", { - mapping = cmp.mapping.preset.cmdline(), - sources = cmp.config.sources({ - { name = "path" }, - }, { - { name = "cmdline" }, - }), - matching = { disallow_symbol_nonprefix_matching = false }, - }) + -- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore). + cmp.setup.cmdline(":", { + mapping = cmp.mapping.preset.cmdline(), + sources = cmp.config.sources({{name = "path"}}, + {{name = "cmdline"}}), + matching = {disallow_symbol_nonprefix_matching = false} + }) + require("luasnip.loaders.from_vscode").lazy_load() - require("luasnip.loaders.from_vscode").lazy_load() - - end, - }, + end + } } diff --git a/lua/plugins/iceberg.lua b/lua/plugins/iceberg.lua index b93087f..8973b0b 100644 --- a/lua/plugins/iceberg.lua +++ b/lua/plugins/iceberg.lua @@ -1,6 +1,4 @@ return { - 'cocopon/iceberg.vim', - config = function() - vim.cmd('colorscheme iceberg') - end + 'cocopon/iceberg.vim', + config = function() vim.cmd('colorscheme iceberg') end } diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua index 40ac307..f2b619e 100644 --- a/lua/plugins/lsp.lua +++ b/lua/plugins/lsp.lua @@ -1,37 +1,27 @@ return { - { - "williamboman/mason.nvim", - config = function() - require('mason').setup() - end - }, - { - "williamboman/mason-lspconfig.nvim", - config = function() - require('mason-lspconfig').setup { - ensure_installed = { "nil_ls", "pyright" }, - } - end - }, - { - "neovim/nvim-lspconfig", - config = function() - local lspconfig = require('lspconfig') + { + "williamboman/mason.nvim", + config = function() require('mason').setup() end + }, { + "williamboman/mason-lspconfig.nvim", + config = function() + require('mason-lspconfig').setup { + ensure_installed = {"nil_ls", "pyright", "gopls"} + } + end + }, { + "neovim/nvim-lspconfig", + config = function() + local lspconfig = require('lspconfig') -local capabilities = require('cmp_nvim_lsp').default_capabilities() - lspconfig.pyright.setup({ - capabilities = capabilities - }) - lspconfig.nil_ls.setup({ - capabilities = capabilities - }) - vim.keymap.set('n', 'K', vim.lsp.buf.hover, {}) - vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { - desc = 'Go to definition' - }) - vim.keymap.set('n', 'ca', vim.lsp.buf.code_action, { - desc = 'Show Code Actions' - }) - end - } + local capabilities = require('cmp_nvim_lsp').default_capabilities() + lspconfig.pyright.setup({capabilities = capabilities}) + lspconfig.nil_ls.setup({capabilities = capabilities}) + vim.keymap.set('n', 'K', vim.lsp.buf.hover, {}) + vim.keymap.set('n', 'gd', vim.lsp.buf.definition, + {desc = 'Go to definition'}) + vim.keymap.set('n', 'ca', vim.lsp.buf.code_action, + {desc = 'Show Code Actions'}) + end + } } diff --git a/lua/plugins/lualine.lua b/lua/plugins/lualine.lua index 142b9f4..a706c47 100644 --- a/lua/plugins/lualine.lua +++ b/lua/plugins/lualine.lua @@ -1,38 +1,40 @@ return { 'nvim-lualine/lualine.nvim', - dependencies = { 'nvim-tree/nvim-web-devicons' }, + dependencies = {'nvim-tree/nvim-web-devicons'}, config = function() - local iceberg = require('lualine.themes.iceberg_dark') - iceberg.normal.c.bg = nil - iceberg.inactive.c.bg = nil - require('lualine').setup { - options = { - theme = iceberg, - component_separators = '', - section_separators = { left = '', right = '' }, - }, - sections = { - lualine_a = { { 'mode', separator = { left = '' }, right_padding = 2 } }, - lualine_b = { 'filename', 'branch' }, - lualine_c = { - '%=', --[[ add your center compoentnts here in place of this comment ]] - }, - lualine_x = {}, - lualine_y = { 'filetype', 'progress' }, - lualine_z = { - { 'location', separator = { right = '' }, left_padding = 2 }, - }, - }, - inactive_sections = { - lualine_a = { 'filename' }, - lualine_b = {}, - lualine_c = {}, - lualine_x = {}, - lualine_y = {}, - lualine_z = { 'location' }, - }, - tabline = {}, - extensions = {}, - } + local iceberg = require('lualine.themes.iceberg_dark') + iceberg.normal.c.bg = nil + iceberg.inactive.c.bg = nil + require('lualine').setup { + options = { + theme = iceberg, + component_separators = '', + section_separators = {left = '', right = ''} + }, + sections = { + lualine_a = { + {'mode', separator = {left = ''}, right_padding = 2} + }, + lualine_b = {'filename', 'branch'}, + lualine_c = { + '%=' --[[ add your center compoentnts here in place of this comment ]] + }, + lualine_x = {}, + lualine_y = {'filetype', 'progress'}, + lualine_z = { + {'location', separator = {right = ''}, left_padding = 2} + } + }, + inactive_sections = { + lualine_a = {'filename'}, + lualine_b = {}, + lualine_c = {}, + lualine_x = {}, + lualine_y = {}, + lualine_z = {'location'} + }, + tabline = {}, + extensions = {} + } end } diff --git a/lua/plugins/neotree.lua b/lua/plugins/neotree.lua index 6a9010f..90309f9 100644 --- a/lua/plugins/neotree.lua +++ b/lua/plugins/neotree.lua @@ -1,13 +1,12 @@ return { - "nvim-neo-tree/neo-tree.nvim", - --branch = "v3.x", - dependencies = { - "nvim-lua/plenary.nvim", - "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended - "MunifTanjim/nui.nvim", - --{"3rd/image.nvim", opts = {}}, -- Optional image support in preview window: See `# Preview Mode` for more information - }, - config = function() - vim.keymap.set('n', '', ':Neotree filesystem reveal left', {}) - end - } + "nvim-neo-tree/neo-tree.nvim", + -- branch = "v3.x", + dependencies = { + "nvim-lua/plenary.nvim", "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended + "MunifTanjim/nui.nvim" + -- {"3rd/image.nvim", opts = {}}, -- Optional image support in preview window: See `# Preview Mode` for more information + }, + config = function() + vim.keymap.set('n', '', ':Neotree filesystem reveal left', {}) + end +} diff --git a/lua/plugins/nonels.lua b/lua/plugins/nonels.lua index 98d6201..a4d6b31 100644 --- a/lua/plugins/nonels.lua +++ b/lua/plugins/nonels.lua @@ -1,15 +1,35 @@ return { - "nvimtools/none-ls.nvim", - dependencies = { "nvim-lua/plenary.nvim", "nvimtools/none-ls-extras.nvim" }, - config = function() - local null_ls = require "null-ls" - null_ls.setup { - sources = { - null_ls.builtins.formatting.stylua, - null_ls.builtins.formatting.alejandra, - null_ls.builtins.diagnostics.pylint, - }, - } - vim.keymap.set("n", "", vim.lsp.buf.format, {}) - end, + "nvimtools/none-ls.nvim", + dependencies = {"nvim-lua/plenary.nvim", "nvimtools/none-ls-extras.nvim"}, + config = function() + local null_ls = require("null-ls") + local helpers = require("null-ls.helpers") + local lua_format = { + meta = { + url = "https://github.com/Koihik/LuaFormatter", + description = "Reformats your Lua source code." + }, + method = null_ls.methods.FORMATTING, + filetypes = {"lua"}, + generator = null_ls.generator({ + command = "lua-format", + to_stdin = true, + format = nil, + on_output = function(params, done) + done({{text = params.output}}) + end + }) + + } + null_ls.setup { + sources = { + null_ls.builtins.formatting.alejandra, + null_ls.builtins.formatting.black, + null_ls.builtins.formatting.gofmt, + null_ls.builtins.diagnostics.pylint, lua_format + }, + debug = true + } + vim.keymap.set("n", "", vim.lsp.buf.format, {}) + end } diff --git a/lua/plugins/transparent.lua b/lua/plugins/transparent.lua index 5b2408a..f1c70a5 100644 --- a/lua/plugins/transparent.lua +++ b/lua/plugins/transparent.lua @@ -1,9 +1,8 @@ return { - 'xiyaowong/transparent.nvim', - config = function() - vim.keymap.set('n', 't', ':TransparentToggle', { - desc = "Toggle Transparency", - }) - vim.opt.termguicolors = true - end + 'xiyaowong/transparent.nvim', + config = function() + vim.keymap.set('n', 't', ':TransparentToggle', + {desc = "Toggle Transparency"}) + vim.opt.termguicolors = true + end } diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua index bcda05b..0ee2481 100644 --- a/lua/plugins/treesitter.lua +++ b/lua/plugins/treesitter.lua @@ -1,12 +1,12 @@ return { - "nvim-treesitter/nvim-treesitter", - build = ":TSUpdate", - config = function() - require("nvim-treesitter.configs").setup{ - auto_install = true, - sync_install = false, - highlight = { enable = true }, - indent = { enable = true } - } - end + "nvim-treesitter/nvim-treesitter", + build = ":TSUpdate", + config = function() + require("nvim-treesitter.configs").setup { + auto_install = true, + sync_install = false, + highlight = {enable = true}, + indent = {enable = true} + } + end } diff --git a/lua/plugins/whichkey.lua b/lua/plugins/whichkey.lua index acb6ee6..6017254 100644 --- a/lua/plugins/whichkey.lua +++ b/lua/plugins/whichkey.lua @@ -1,18 +1,16 @@ return { - "folke/which-key.nvim", - event = "VeryLazy", - opts = { - -- your configuration comes here - -- or leave it empty to use the default settings - -- refer to the configuration section below - }, - keys = { - { - "?", - function() - require("which-key").show({ global = false }) - end, - desc = "Buffer Local Keymaps (which-key)", - }, - }, + "folke/which-key.nvim", + event = "VeryLazy", + opts = { + -- your configuration comes here + -- or leave it empty to use the default settings + -- refer to the configuration section below + }, + keys = { + { + "?", + function() require("which-key").show({global = false}) end, + desc = "Buffer Local Keymaps (which-key)" + } + } }