diff options
Diffstat (limited to '.config')
| -rw-r--r-- | .config/nvim/colors/mine.vim | 2 | ||||
| -rw-r--r-- | .config/nvim/init.lua | 2 | ||||
| -rw-r--r-- | .config/nvim/lua/lsp.lua | 82 | ||||
| -rw-r--r-- | .config/nvim/lua/map.lua | 28 | ||||
| -rw-r--r-- | .config/nvim/lua/neovide.lua | 9 | ||||
| -rw-r--r-- | .config/nvim/lua/plugin/init.lua | 2 | ||||
| -rw-r--r-- | .config/nvim/lua/plugin/lsp.lua | 55 | ||||
| -rw-r--r-- | .config/nvim/lua/plugin/packer.lua | 31 | ||||
| -rw-r--r-- | .config/nvim/lua/plugin/setup.lua | 2 |
9 files changed, 95 insertions, 118 deletions
diff --git a/.config/nvim/colors/mine.vim b/.config/nvim/colors/mine.vim index 5f7cff9..d7d57b2 100644 --- a/.config/nvim/colors/mine.vim +++ b/.config/nvim/colors/mine.vim @@ -3,6 +3,8 @@ set background=dark hi clear let g:colors_name = "mine" +hi! link FloatBorder Normal +hi! link NormalFloat Normal hi! link Terminal Normal hi! link TermCursor Cursor hi! link TermCursorNC Cursor diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index 3367b6f..0065226 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -1,4 +1,4 @@ require("opt") +require("lsp") require("map") require("plugin") -require("neovide") diff --git a/.config/nvim/lua/lsp.lua b/.config/nvim/lua/lsp.lua new file mode 100644 index 0000000..32ba6f8 --- /dev/null +++ b/.config/nvim/lua/lsp.lua @@ -0,0 +1,82 @@ +local lspconf = require("lspconfig") +local cmp = require("cmp") +local capabilities = require("cmp_nvim_lsp").default_capabilities() + +vim.opt.signcolumn = "yes" + +local servers = { + ["lua_ls"] = { + settings = { + Lua = { + runtime = { + version = "LuaJIT" + } + } + } + }, + ["clangd"] = {}, +} + +for lsp, conf in pairs(servers) do + conf.capabilities = capabilities + lspconf[lsp].setup(conf) +end + + +cmp.setup({ + preselect = "item", + completion = { + completeopt = "menu,menuone,noinsert", + }, + window = { + completion = cmp.config.window.bordered(), + documentation = cmp.config.window.bordered(), + }, + formatting = { + fields = { "menu", "abbr", "kind" }, + + format = function(entry, item) + local menu_icon = { + nvim_lsp = "L", + buffer = "B", + path = "P", + nvim_lua = "NL", + } + + item.menu = menu_icon[entry.source.name] + + return item + end, + }, + mapping = { + ["<CR>"] = cmp.mapping.confirm({ select = false }), + ["<Tab>"] = cmp.mapping.select_next_item(), + ["<S-Tab>"] = cmp.mapping.select_prev_item(), + }, + sources = { + { name = "path" }, + { name = "nvim_lsp" }, + { name = "buffer", keyword_length = 3 }, + }, +}) + +vim.api.nvim_create_autocmd("LspAttach", { + group = vim.api.nvim_create_augroup("UserLspConfig", {}), + callback = function(ev) + vim.bo[ev.buf].omnifunc = "v:lua.vim.lsp.omnifunc" + local opts = { buffer = ev.buf } + vim.keymap.set("n", "gD", vim.lsp.buf.declaration, opts) + vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts) + vim.keymap.set("n", "gi", vim.lsp.buf.implementation, opts) + vim.keymap.set("n", "gr", vim.lsp.buf.references, opts) + vim.keymap.set("n", "go", vim.lsp.buf.type_definition, opts) + vim.keymap.set("n", "<leader>ls", vim.lsp.buf.signature_help, opts) + vim.keymap.set("n", "<space>rn", vim.lsp.buf.rename, opts) + vim.keymap.set("n", "<leader>h", vim.lsp.buf.hover, opts) + vim.keymap.set({"n", "v"}, "<space>ca", vim.lsp.buf.code_action, opts) + vim.keymap.set("n", "<space>f", + function() + vim.lsp.buf.format({async = true}) + end, opts) + end +}) diff --git a/.config/nvim/lua/map.lua b/.config/nvim/lua/map.lua index 6dcc1da..f4edeee 100644 --- a/.config/nvim/lua/map.lua +++ b/.config/nvim/lua/map.lua @@ -5,30 +5,6 @@ local nv = {"n", "v"} vim.keymap.set(nv, "gm", "gM", {}) vim.keymap.set(nv, "gM", "gMi", {}) --- Moving between windows -vim.keymap.set(nv, "<C-h>", "<C-w>h", {}) -vim.keymap.set(nv, "<C-j>", "<C-w>j", {}) -vim.keymap.set(nv, "<C-k>", "<C-w>k", {}) -vim.keymap.set(nv, "<C-l>", "<C-w>l", {}) - --- Same, but for terminal -vim.keymap.set("t", "<C-h>", "<C-\\><C-n><C-w>h", {}) -vim.keymap.set("t", "<C-j>", "<C-\\><C-n><C-w>j", {}) -vim.keymap.set("t", "<C-k>", "<C-\\><C-n><C-w>k", {}) -vim.keymap.set("t", "<C-l>", "<C-\\><C-n><C-w>l", {}) - --- Moving windows -vim.keymap.set(nv, "<C-w>h", "<C-w>H", {}) -vim.keymap.set(nv, "<C-w>j", "<C-w>J", {}) -vim.keymap.set(nv, "<C-w>k", "<C-w>K", {}) -vim.keymap.set(nv, "<C-w>l", "<C-w>L", {}) - --- Resizing windows -vim.keymap.set(nv, "<C-->", "<C-w>-", {}) -vim.keymap.set(nv, "<C-=>", "<C-w>+", {}) -vim.keymap.set(nv, "<C-,>", "<C-w><", {}) -vim.keymap.set(nv, "<C-.>", "<C-w>>", {}) - -- Make exiting insert mode in terminal mode easier vim.keymap.set("t", "<ESC>", "<C-\\><C-n>", {}) @@ -49,10 +25,6 @@ vim.keymap.set("x", "<leader>P", "p", {}) -- Commands vim.keymap.set(nv, "<leader>c", "<CMD>set invhlsearch<CR>", {silent=true}) vim.keymap.set(nv, "<leader>e", "<CMD>Oil<CR>", {silent=true}) -vim.keymap.set(nv, "<leader>t", function() - vim.cmd("split") - vim.cmd("term") -end, {silent=true}) vim.keymap.set("n", "{", "<CMD>cp<CR>", {silent=true}) vim.keymap.set("n", "}", "<CMD>cn<CR>", {silent=true}) diff --git a/.config/nvim/lua/neovide.lua b/.config/nvim/lua/neovide.lua deleted file mode 100644 index da710bb..0000000 --- a/.config/nvim/lua/neovide.lua +++ /dev/null @@ -1,9 +0,0 @@ -if not vim.g.neovide then - return -end - -vim.o.guifont = "MartianMono Nerd Font Mono" -vim.g.neovide_cursor_animation_length = 0 -vim.g.neovide_cursor_trail_size = 0 -vim.g.neovide_cursor_animate_in_insert_mode = false -vim.g.neovide_cursor_animate_command_line = false diff --git a/.config/nvim/lua/plugin/init.lua b/.config/nvim/lua/plugin/init.lua index 4e60f98..6cd9e35 100644 --- a/.config/nvim/lua/plugin/init.lua +++ b/.config/nvim/lua/plugin/init.lua @@ -1,3 +1,3 @@ require("plugin.packer") require("plugin.setup") -require("plugin.lsp") +-- require("plugin.lsp") diff --git a/.config/nvim/lua/plugin/lsp.lua b/.config/nvim/lua/plugin/lsp.lua deleted file mode 100644 index b590d30..0000000 --- a/.config/nvim/lua/plugin/lsp.lua +++ /dev/null @@ -1,55 +0,0 @@ -local lsp = require("lsp-zero") -local lspconfig = require("lspconfig") - -vim.opt.signcolumn = 'yes' - -local lspconfig_defaults = require('lspconfig').util.default_config -lspconfig_defaults.capabilities = vim.tbl_deep_extend( - 'force', - lspconfig_defaults.capabilities, - require('cmp_nvim_lsp').default_capabilities() -) - -require('mason').setup {} -require('mason-lspconfig').setup { - ensure_installed = { - "lua_ls", - "clangd", - }, - handlers = { - lsp.default_setup, - }, -} - -local cmp = require('cmp') -cmp.setup { - mapping = cmp.mapping.preset.insert({ - -- `Enter` key to confirm completion - ['<CR>'] = cmp.mapping.confirm({ select = false }), - -- `Tab` key to navigate - ['<S-Tab>'] = cmp.mapping.select_prev_item({ behavior = 'select' }), - ['<Tab>'] = cmp.mapping.select_next_item({ behavior = 'select' }), - }) -} - -lsp.on_attach(function(client, buffer) - local opts = { buffer = buffer, remap = false } - - vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, opts) - vim.keymap.set("n", "gD", function() vim.lsp.buf.declaration() end, opts) - vim.keymap.set("n", "gi", function() vim.lsp.buf.implementation() end, opts) - vim.keymap.set("n", "go", function() vim.lsp.buf.type_definition() end, opts) - vim.keymap.set("n", "gr", function() vim.lsp.buf.references() end, opts) - vim.keymap.set("n", "<leader>h", function() vim.lsp.buf.hover() end, opts) - vim.keymap.set("n", "<leader>la", function() vim.lsp.buf.code_action() end, opts) - vim.keymap.set("n", "<leader>lrn", function() vim.lsp.buf.rename() end, opts) - vim.keymap.set("n", "<leader>ls", function() vim.lsp.buf.signature_help() end, opts) -end) - -lsp.setup() - -vim.diagnostic.config { - virtual_text = true -} - -vim.g.zig_fmt_autosave = 0 diff --git a/.config/nvim/lua/plugin/packer.lua b/.config/nvim/lua/plugin/packer.lua index a468c06..0ed86bc 100644 --- a/.config/nvim/lua/plugin/packer.lua +++ b/.config/nvim/lua/plugin/packer.lua @@ -4,7 +4,6 @@ return require("packer").startup(function(use) use {"andweeb/presence.nvim"} use {"hobby-engine/hobby-script-vim"} - use {"~/den_vim"} use { "nvim-telescope/telescope.nvim", @@ -13,7 +12,6 @@ return require("packer").startup(function(use) }, } - use {"tpope/vim-fugitive"} use {"windwp/nvim-autopairs"} use { @@ -36,28 +34,13 @@ return require("packer").startup(function(use) use {"xiyaowong/transparent.nvim"} use {"xiyaowong/virtcolumn.nvim"} - use { - "VonHeikemen/lsp-zero.nvim", - requires = { - {"lukas-reineke/lsp-format.nvim"}, - -- LSP Support - {"neovim/nvim-lspconfig"}, - {"williamboman/mason.nvim"}, - {"williamboman/mason-lspconfig.nvim"}, - - -- Autocompletion - {"hrsh7th/nvim-cmp"}, - {"hrsh7th/cmp-buffer"}, - {"hrsh7th/cmp-path"}, - {"saadparwaiz1/cmp_luasnip"}, - {"hrsh7th/cmp-nvim-lsp"}, - {"hrsh7th/cmp-nvim-lua"}, - - -- Snippets - {"L3MON4D3/LuaSnip"}, - {"rafamadriz/friendly-snippets"}, - } - } + use {"williamboman/mason.nvim"} + use {"neovim/nvim-lspconfig"} + use {"hrsh7th/nvim-cmp"} + use {"hrsh7th/cmp-buffer"} + use {"hrsh7th/cmp-path"} + use {"hrsh7th/cmp-nvim-lsp"} + use {"hrsh7th/cmp-nvim-lua"} use {"stevearc/oil.nvim"} diff --git a/.config/nvim/lua/plugin/setup.lua b/.config/nvim/lua/plugin/setup.lua index 5b6e400..5a3ae43 100644 --- a/.config/nvim/lua/plugin/setup.lua +++ b/.config/nvim/lua/plugin/setup.lua @@ -4,6 +4,8 @@ require('gitsigns').setup {} require("Comment").setup {} +require("mason").setup {} + require("oil").setup { view_options = { show_hidden = true, |
