diff --git a/nvim/.config/nvim/init.lua b/nvim/.config/nvim/init.lua index f480302..dfdd7c7 100644 --- a/nvim/.config/nvim/init.lua +++ b/nvim/.config/nvim/init.lua @@ -1,31 +1,31 @@ -- plugins require('packer').startup(function(use) - use 'wbthomason/packer.nvim' - use 'ii14/onedark.nvim' - use { - 'mengelbrecht/lightline-bufferline', - requires = { - 'itchyny/lightline.vim' - } - } - use 'kyazdani42/nvim-web-devicons' - use 'sheerun/vim-polyglot' - use 'editorconfig/editorconfig-vim' - use { - 'williamboman/mason-lspconfig.nvim', - requires = { - 'williamboman/mason.nvim', - 'neovim/nvim-lspconfig' - } - } - use { - 'hrsh7th/nvim-cmp', - requires = { - 'hrsh7th/cmp-nvim-lsp', - 'saadparwaiz1/cmp_luasnip', - 'L3MON4D3/LuaSnip' - } - } + use 'wbthomason/packer.nvim' + use 'ii14/onedark.nvim' + use { + 'mengelbrecht/lightline-bufferline', + requires = { + 'itchyny/lightline.vim' + } + } + use 'kyazdani42/nvim-web-devicons' + use 'sheerun/vim-polyglot' + use 'editorconfig/editorconfig-vim' + use { + 'williamboman/mason-lspconfig.nvim', + requires = { + 'williamboman/mason.nvim', + 'neovim/nvim-lspconfig' + } + } + use { + 'hrsh7th/nvim-cmp', + requires = { + 'hrsh7th/cmp-nvim-lsp', + 'saadparwaiz1/cmp_luasnip', + 'L3MON4D3/LuaSnip' + } + } end) -- basics @@ -43,17 +43,24 @@ vim.cmd.colorscheme('onedark') -- settings for specific filetypes vim.api.nvim_create_autocmd('FileType', { - pattern = { 'html', 'css', 'scss', 'lua', 'json', 'yaml', 'yaml.*' }, - callback = function() - vim.opt_local.tabstop = 2 - vim.opt_local.shiftwidth = 2 - end + pattern = { 'html', 'css', 'scss', 'json', 'yaml', 'yaml.*' }, + callback = function() + vim.opt_local.tabstop = 2 + vim.opt_local.shiftwidth = 2 + end +}) +vim.api.nvim_create_autocmd('FileType', { + pattern = 'lua', + callback = function() + vim.opt_local.tabstop = 3 + vim.opt_local.shiftwidth = 3 + end }) vim.api.nvim_create_autocmd({ 'BufNewFile', 'BufRead' }, { - pattern = { 'zsh*', '.zsh*', '*.zsh' }, - callback = function() - vim.opt.filetype = 'sh' - end + pattern = { 'zsh*', '.zsh*', '*.zsh' }, + callback = function() + vim.opt.filetype = 'sh' + end }) -- appearance @@ -62,17 +69,17 @@ vim.g.background = 'dark' -- lightline config vim.g.lightline = { - colorscheme = 'one', - tabline = { - left = { { 'buffers' } }, - right = { { 'relativepath' } } - }, - component_expand = { - buffers = 'lightline#bufferline#buffers' - }, - component_type = { - buffers = 'tabsel' - } + colorscheme = 'one', + tabline = { + left = { { 'buffers' } }, + right = { { 'relativepath' } } + }, + component_expand = { + buffers = 'lightline#bufferline#buffers' + }, + component_type = { + buffers = 'tabsel' + } } -- lightline-bufferline config @@ -90,125 +97,125 @@ local luasnip = require('luasnip') luasnip.config.setup {} cmp.setup { - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) - end - }, - mapping = { - [''] = cmp.mapping.scroll_docs(-4), - [''] = cmp.mapping.scroll_docs(4), - [''] = cmp.mapping.complete(), - [''] = cmp.mapping.abort(), - [''] = cmp.mapping.confirm { - behavior = cmp.ConfirmBehavior.Replace, - select = true - }, - [''] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_next_item() - elseif luasnip.expand_or_jumpable() then - luasnip.expand_or_jump() - else - fallback() + snippet = { + expand = function(args) + luasnip.lsp_expand(args.body) end - end, { 'i', 's' }), - [''] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_prev_item() - elseif luasnip.jumpable(-1) then - luasnip.jump(-1) - else - fallback() - end - end, { 'i', 's' }) - }, - sources = { - { name = 'nvim_lsp' }, - { name = 'luasnip' } - } + }, + mapping = { + [''] = cmp.mapping.scroll_docs(-4), + [''] = cmp.mapping.scroll_docs(4), + [''] = cmp.mapping.complete(), + [''] = cmp.mapping.abort(), + [''] = cmp.mapping.confirm { + behavior = cmp.ConfirmBehavior.Replace, + select = true + }, + [''] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + elseif luasnip.expand_or_jumpable() then + luasnip.expand_or_jump() + else + fallback() + end + end, { 'i', 's' }), + [''] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_prev_item() + elseif luasnip.jumpable(-1) then + luasnip.jump(-1) + else + fallback() + end + end, { 'i', 's' }) + }, + sources = { + { name = 'nvim_lsp' }, + { name = 'luasnip' } + } } cmp.setup.cmdline('/', { - sources = { - { name = 'buffer' } - } + sources = { + { name = 'buffer' } + } }) cmp.setup.cmdline(':', { - sources = cmp.config.sources({ - { name = 'path' } - }, - { - { name = 'cmdline' } - }) + sources = cmp.config.sources({ + { name = 'path' } + }, + { + { name = 'cmdline' } + }) }) -- lsp config require('mason').setup {} require("mason-registry").refresh() require('mason-lspconfig').setup { - automatic_installation = true + automatic_installation = true } local lsp = require('lspconfig') local capabilities = require('cmp_nvim_lsp').default_capabilities() lsp.ansiblels.setup { - capabilities = capabilities + capabilities = capabilities } lsp.bashls.setup { - capabilities = capabilities + capabilities = capabilities } lsp.clangd.setup { - capabilities = capabilities + capabilities = capabilities } lsp.dockerls.setup { - capabilities = capabilities + capabilities = capabilities } lsp.gopls.setup { - capabilities = capabilities + capabilities = capabilities } lsp.lua_ls.setup { - capabilities = capabilities, - settings = { - Lua = { - runtime = { - version = 'LuaJIT' - }, - diagnostics = { - globals = { 'vim' } - }, - telemetry = { - enable = false + capabilities = capabilities, + settings = { + Lua = { + runtime = { + version = 'LuaJIT' + }, + diagnostics = { + globals = { 'vim' } + }, + telemetry = { + enable = false + } } - } - } + } } lsp.pylsp.setup { - capabilities = capabilities + capabilities = capabilities } lsp.vimls.setup { - capabilities = capabilities, - init_options = { - diagnostic = { - enable = false - }, - isNeovim = true - } + capabilities = capabilities, + init_options = { + diagnostic = { + enable = false + }, + isNeovim = true + } } lsp.yamlls.setup { - capabilities = capabilities, - settings = { - redhat = { - telemetry = { - enabled = false + capabilities = capabilities, + settings = { + redhat = { + telemetry = { + enabled = false + } + }, + yaml = { + keyOrdering = false } - }, - yaml = { - keyOrdering = false - } - } + } } -- keyboard mappings