From 41a8601bd0ac8fe8d3b1b480b85d5d02c711b3bf Mon Sep 17 00:00:00 2001 From: Charles Cabergs Date: Wed, 18 May 2022 14:16:48 +0200 Subject: Added previous vim config autocommand to neovim, Updated lua-snip and argwrap plugins configurations --- config/nvim/init.lua | 21 ++++++++++++++++++--- config/nvim/lua/mappings.lua | 19 ------------------- config/nvim/lua/plugins.lua | 26 +++++++++++++++++++------- 3 files changed, 37 insertions(+), 29 deletions(-) (limited to 'config') diff --git a/config/nvim/init.lua b/config/nvim/init.lua index d046567..4e050a9 100644 --- a/config/nvim/init.lua +++ b/config/nvim/init.lua @@ -54,8 +54,8 @@ local augroup = vim.api.nvim_create_augroup("cacharle_init_group", {}) vim.api.nvim_create_autocmd( "BufWritePost", { - command = "source | PackerCompile", pattern = "plugins.lua", + command = "source | PackerCompile", group = augroup } ) @@ -63,13 +63,28 @@ vim.api.nvim_create_autocmd( -- remove trailing white space on save vim.api.nvim_create_autocmd( "BufWritePre", - { command = [[ %s/\s\+$//e ]], pattern = "*", group = augroup } + { pattern = "*", command = [[ %s/\s\+$//e ]], group = augroup } ) -- set filttype for *.sql.j2 files vim.api.nvim_create_autocmd( "BufReadPre", - { command = "set ft=sql", pattern = "*.sql.j2", group = augroup } + { pattern = "*.sql.j2", command = "set ft=sql", group = augroup } +) + +-- -- Format go files on save +-- vim.api.nvim_create_autocmd( +-- "BufWritePre", +-- { command = [[ !go fmt % ]], pattern = "*.go", group = augroup } +-- ) + +vim.api.nvim_create_autocmd( + "FileType", + { pattern = "haskell", command = [[ set formatprg=stylish-haskell ]], group = augroup } +) +vim.api.nvim_create_autocmd( + "FileType", + { pattern = "lisp,html,css,htmldjango", command = [[ setlocal shiftwidth=2 ]], group = augroup } ) require("mappings") diff --git a/config/nvim/lua/mappings.lua b/config/nvim/lua/mappings.lua index 50c57e2..5373a4e 100644 --- a/config/nvim/lua/mappings.lua +++ b/config/nvim/lua/mappings.lua @@ -26,25 +26,6 @@ map('n', ' ?', '?\v', {}) map('c', '', '', {}) map('c', '', '', {}) --- -- hook --- -- remove trailing white space on save --- autocmd vimrc BufWritePre * %s/\s\+$//e --- -- dirty hack to disable this feature on markdown (autocmd! wouldn't work) --- autocmd vimrc BufReadPre *.md autocmd! BufWritePre - - --- augroup vimrc_files --- autocmd! --- -- school c --- autocmd Filetype c setlocal noexpandtab --- autocmd Filetype c setlocal comments=s:/**,m:**,e:*/,s:/*,m:**,e:*/ --- -- std::cout << ... << std::endl; shortcut --- autocmd Filetype cpp nnoremap cout istd::cout << << std::endl;2Fbd mq:g/^\s*breakpoint()$/d`q ]] vim.cmd [[ autocmd FileType python nmap ba mqobreakpoint()`q ]] diff --git a/config/nvim/lua/plugins.lua b/config/nvim/lua/plugins.lua index 3cb003a..a4b4f0c 100644 --- a/config/nvim/lua/plugins.lua +++ b/config/nvim/lua/plugins.lua @@ -4,11 +4,18 @@ return require("packer").startup(function() use "wbthomason/packer.nvim" -- plugin manager (can manage itself) use "junegunn/vim-easy-align" -- align use "AndrewRadev/sideways.vim" -- Move arguments sideways - use "FooSoft/vim-argwrap" -- Put arguments on multiple lines use "tpope/vim-eunuch" -- basic commands on current file (Rename/Remove) use "romainl/vim-cool" -- only highlight search matches when searching use "lukas-reineke/indent-blankline.nvim" + -- Put arguments on multiple lines + use { + "FooSoft/vim-argwrap", + config = function() + vim.g.argwrap_tail_comma = 1 + end + } + use { "jpalardy/vim-slime", config = function() @@ -195,12 +202,12 @@ return require("packer").startup(function() local luasnip = require("luasnip") cmp.setup { mapping = cmp.mapping.preset.insert({ - [""] = cmp.mapping.select_next_item(), - [""] = cmp.mapping.select_prev_item(), + -- [""] = cmp.mapping.select_next_item(), + -- [""] = cmp.mapping.select_prev_item(), [""] = cmp.mapping.scroll_docs(-4), [""] = cmp.mapping.scroll_docs(4), - - [""] = cmp.mapping(function(fallback) + [""] = cmp.mapping.confirm({ select = true }), + [""] = cmp.mapping(function(fallback) if cmp.visible() then cmp.select_next_item() elseif luasnip.expand_or_jumpable() then @@ -211,8 +218,7 @@ return require("packer").startup(function() fallback() end end, { "i", "s" }), - - [""] = cmp.mapping(function(fallback) + [""] = cmp.mapping(function(fallback) if cmp.visible() then cmp.select_prev_item() elseif luasnip.jumpable(-1) then @@ -224,6 +230,7 @@ return require("packer").startup(function() }), -- order of the sources matter (first are higher priority) sources = { + { name = "luasnip" }, { name = "nvim_lsp" }, { name = "nvim_lsp_signature_help" }, { name = "path" }, @@ -245,6 +252,11 @@ return require("packer").startup(function() experimental = { ghost_text = true, }, + snippet = { + expand = function(args) + luasnip.lsp_expand(args.body) + end + } } end } -- cgit