aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksa Vučković <aleksav013@gmail.com>2022-01-05 08:57:32 +0100
committerAleksa Vučković <aleksav013@gmail.com>2022-01-05 08:57:32 +0100
commit2a5f4d72d21d495408a52a2cad271b1e5775967b (patch)
treec1bc1aa2844d32fd89e125db8285ceded2b4187d
parent0eb2af20164f3281b9981386d7ac03713e2f3e01 (diff)
cmp_luasnip not working
-rw-r--r--init.lua1
-rw-r--r--lua/cmp.lua35
-rw-r--r--lua/cmp1.lua14
-rw-r--r--lua/options.lua72
-rw-r--r--lua/plugins.lua43
-rwxr-xr-xsync.sh1
6 files changed, 110 insertions, 56 deletions
diff --git a/init.lua b/init.lua
index 6504e17..eec635f 100644
--- a/init.lua
+++ b/init.lua
@@ -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)
diff --git a/sync.sh b/sync.sh
index 0f4b271..1ad25aa 100755
--- a/sync.sh
+++ b/sync.sh
@@ -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