diff options
| author | Aleksa Vučković <aleksav013@gmail.com> | 2022-01-05 08:57:32 +0100 |
|---|---|---|
| committer | Aleksa Vučković <aleksav013@gmail.com> | 2022-01-05 08:57:32 +0100 |
| commit | 2a5f4d72d21d495408a52a2cad271b1e5775967b (patch) | |
| tree | c1bc1aa2844d32fd89e125db8285ceded2b4187d | |
| parent | 0eb2af20164f3281b9981386d7ac03713e2f3e01 (diff) | |
cmp_luasnip not working
| -rw-r--r-- | init.lua | 1 | ||||
| -rw-r--r-- | lua/cmp.lua | 35 | ||||
| -rw-r--r-- | lua/cmp1.lua | 14 | ||||
| -rw-r--r-- | lua/options.lua | 72 | ||||
| -rw-r--r-- | lua/plugins.lua | 43 | ||||
| -rwxr-xr-x | sync.sh | 1 |
6 files changed, 110 insertions, 56 deletions
@@ -1,4 +1,5 @@ require "options" require "keymaps" require "plugins" +require "cmp" require "lsp" diff --git a/lua/cmp.lua b/lua/cmp.lua new file mode 100644 index 0000000..ec6695f --- /dev/null +++ b/lua/cmp.lua @@ -0,0 +1,35 @@ +local status, cmp = pcall(require, "cmp") +if not status then + return +end + +local status, luasnip = pcall(require, "luasnip") +if not status then + return +end + + +cmp.setup({ + snippet = { + expand = function(args) + luasnip.lsp_expand(args.body) + end, + }, + mapping = { + ['<C-b>'] = cmp.mapping(cmp.mapping.scroll_docs(-4), { 'i', 'c' }), + ['<C-f>'] = cmp.mapping(cmp.mapping.scroll_docs(4), { 'i', 'c' }), + ['<C-Space>'] = cmp.mapping(cmp.mapping.complete(), { 'i', 'c' }), + ['<C-y>'] = cmp.config.disable, -- Specify `cmp.config.disable` if you want to remove the default `<C-y>` mapping. + ['<C-e>'] = cmp.mapping({ + i = cmp.mapping.abort(), + c = cmp.mapping.close(), + }), + ['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. + }, + sources = { +-- { name = 'nvim_lsp' }, +-- { name = 'luasnip' }, +-- { name = 'buffer' }, +-- { name = "path" }, + }, +}) diff --git a/lua/cmp1.lua b/lua/cmp1.lua new file mode 100644 index 0000000..092402c --- /dev/null +++ b/lua/cmp1.lua @@ -0,0 +1,14 @@ + config = function () + require'cmp'.setup { + snippet = { + expand = function(args) + require'luasnip'.lsp_expand(args.body) + end + }, + + sources = { + { name = 'luasnip' }, + -- more sources + }, + } + end diff --git a/lua/options.lua b/lua/options.lua index 9ae3141..a15e0e4 100644 --- a/lua/options.lua +++ b/lua/options.lua @@ -1,44 +1,46 @@ local options = { - backup = false, -- creates a backup file - clipboard = "unnamedplus", -- allows neovim to access the system clipboard - cmdheight = 2, -- more space in the neovim command line for displaying messages - completeopt = { "menuone", "noselect" }, -- mostly just for cmp - conceallevel = 0, -- so that `` is visible in markdown files - fileencoding = "utf-8", -- the encoding written to a fie - hlsearch = true, -- highlight all matches on previous search pattern - ignorecase = true, -- ignore case in search patterns - -- mouse = "a", -- allow the mouse to be used in neovim - pumheight = 10, -- pop up menu height - showmode = false, -- we don't need to see things like -- INSERT -- anymore - showtabline = 2, -- always show tabs - smartcase = true, -- smart case - smartindent = true, -- make indenting smarter again - splitbelow = true, -- force all horizontal splits to go below current window - splitright = true, -- force all vertical splits to go to the right of current window - swapfile = false, -- creates a swapfile - -- termguicolors = true, -- set term gui colors (most terminals support this) - timeoutlen = 100, -- time to wait for a mapped sequence to complete (in milliseconds) - undofile = true, -- enable persistent undo - updatetime = 300, -- faster completion (4000ms default) - writebackup = false, -- if a file is being edited by another program (or was written to file while editing with another program), it is not allowed to be edited - expandtab = false, -- convert tabs to spaces - shiftwidth = 4, -- the number of spaces inserted for each indentation - tabstop = 4, -- insert 2 spaces for a tab - cursorline = true, -- highlight the current line - number = true, -- set numbered lines - relativenumber = true, -- set relative numbered lines - numberwidth = 4, -- set number column width to 2 {default 4} - signcolumn = "yes", -- always show the sign column, otherwise it would shift the text each time - wrap = false, -- display lines as one long line - scrolloff = 8, -- is one of my fav - sidescrolloff = 8, - guifont = "monospace:h17", -- the font used in graphical neovim applications + backup = false, -- creates a backup file + clipboard = "unnamedplus", -- allows neovim to access the system clipboard + cmdheight = 2, -- more space in the neovim command line for displaying messages + completeopt = { "menuone", "noselect" }, -- mostly just for cmp + conceallevel = 0, -- so that `` is visible in markdown files + fileencoding = "utf-8", -- the encoding written to a fie + hlsearch = true, -- highlight all matches on previous search pattern + ignorecase = true, -- ignore case in search patterns + -- mouse = "a", -- allow the mouse to be used in neovim + pumheight = 10, -- pop up menu height + showmode = false, -- we don't need to see things like -- INSERT -- anymore + showtabline = 2, -- always show tabs + smartcase = true, -- smart case + smartindent = true, -- make indenting smarter again + splitbelow = true, -- force all horizontal splits to go below current window + splitright = true, -- force all vertical splits to go to the right of current window + swapfile = false, -- creates a swapfile + -- termguicolors = true, -- set term gui colors (most terminals support this) + timeoutlen = 100, -- time to wait for a mapped sequence to complete (in milliseconds) + undofile = true, -- enable persistent undo + updatetime = 300, -- faster completion (4000ms default) + writebackup = false, -- if a file is being edited by another program (or was written to file while editing with another program), it is not allowed to be edited + expandtab = true, -- convert tabs to spaces + shiftwidth = 4, -- the number of spaces inserted for each indentation + tabstop = 4, -- insert 4 spaces for a tab + preserveindent = true, + softtabstop = 0, + cursorline = true, -- highlight the current line + number = true, -- set numbered lines + relativenumber = true, -- set relative numbered lines + numberwidth = 4, -- set number column width to 2 {default 4} + signcolumn = "yes", -- always show the sign column, otherwise it would shift the text each time + wrap = false, -- display lines as one long line + scrolloff = 8, -- is one of my fav + sidescrolloff = 8, + guifont = "monospace:h17", -- the font used in graphical neovim applications } vim.opt.shortmess:append "c" for k, v in pairs(options) do - vim.opt[k] = v + vim.opt[k] = v end -- vim.cmd "set whichwrap+=<,>,[,],h,l" diff --git a/lua/plugins.lua b/lua/plugins.lua index 39d0c8a..3f7c1e8 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -1,14 +1,14 @@ local fn = vim.fn -local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim' +local install_path = fn.stdpath("data").."/site/pack/packer/start/packer.nvim" if fn.empty(fn.glob(install_path)) > 0 then - packer_bootstrap = fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path}) + packer_bootstrap = fn.system({"git", "clone", "--depth", "1", "https://github.com/wbthomason/packer.nvim", install_path}) end vim.cmd([[ - augroup packer_user_config - autocmd! - autocmd BufWritePost plugins.lua source <afile> | PackerSync - augroup end + augroup packer_user_config + autocmd! + autocmd BufWritePost plugins.lua source <afile> | PackerSync + augroup end ]]) local status, packer = pcall(require, "packer") @@ -17,28 +17,29 @@ if not status then end packer.init { - display = { - open_fn = function() - return require("packer.util").float { border = "rounded" } - end, - }, + display = { + open_fn = function() + return require("packer.util").float { border = "rounded" } + end, + }, } return packer.startup(function(use) -- Packer - use 'wbthomason/packer.nvim' + use "wbthomason/packer.nvim" -- cmp - use 'hrsh7th/nvim-cmp' - use 'hrsh7th/cmp-nvim-lsp' - use 'hrsh7th/cmp-buffer' - use 'hrsh7th/cmp-path' - use 'hrsh7th/cmp-cmdline' + use "hrsh7th/nvim-cmp" + use "saadparwaiz1/cmp_luasnip" +-- use "hrsh7th/cmp-nvim-lsp" +-- use "hrsh7th/cmp-buffer" +-- use "hrsh7th/cmp-path" +-- use "hrsh7th/cmp-cmdline" +-- use "hrsh7th/cmp-nvim-lua" -- snippets - use 'hrsh7th/vim-vsnip' - use 'hrsh7th/cmp-vsnip' --- + use "L3MON4D3/LuaSnip" + -- LSP use "neovim/nvim-lspconfig" use "williamboman/nvim-lsp-installer" @@ -51,6 +52,6 @@ return packer.startup(function(use) -- Automatically set up your configuration after cloning packer.nvim -- Put this at the end after all plugins if packer_bootstrap then - require('packer').sync() + require("packer").sync() end end) @@ -5,3 +5,4 @@ NVIM_DIR=~/.config/nvim rm -r $NVIM_DIR mkdir -p $NVIM_DIR stow --no-folding --ignore="LICENCE|README.md|sync.sh" -t $NVIM_DIR . +rm -rf ~/.local/share/nvim |
