summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ftplugin/tnsl.lua1
-rw-r--r--lazy-lock.json25
-rw-r--r--lua/cshift/filetype.lua7
-rw-r--r--lua/cshift/init.lua2
-rw-r--r--lua/cshift/opt.lua3
-rw-r--r--lua/cshift/plugins/cmp.lua11
-rw-r--r--lua/cshift/plugins/lsp.lua8
-rw-r--r--lua/cshift/plugins/treesitter.lua7
-rw-r--r--lua/cshift/treesitter.lua13
9 files changed, 63 insertions, 14 deletions
diff --git a/ftplugin/tnsl.lua b/ftplugin/tnsl.lua
new file mode 100644
index 0000000..fe6caae
--- /dev/null
+++ b/ftplugin/tnsl.lua
@@ -0,0 +1 @@
+vim.treesitter.start()
diff --git a/lazy-lock.json b/lazy-lock.json
index 86ce597..9095233 100644
--- a/lazy-lock.json
+++ b/lazy-lock.json
@@ -1,11 +1,16 @@
{
- "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" },
- "lazy.nvim": { "branch": "main", "commit": "aedcd79811d491b60d0a6577a9c1701063c2a609" },
- "mason-lspconfig.nvim": { "branch": "main", "commit": "0954d7730e749d606ddf8d7ae8846848be435d53" },
- "mason.nvim": { "branch": "main", "commit": "c43eeb5614a09dc17c03a7fb49de2e05de203924" },
- "nvim-cmp": { "branch": "main", "commit": "04e0ca376d6abdbfc8b52180f8ea236cbfddf782" },
- "nvim-lspconfig": { "branch": "master", "commit": "ae91a303a2258cb9cd9501e9d20c2dc92792d362" },
- "plenary.nvim": { "branch": "master", "commit": "4f71c0c4a196ceb656c824a70792f3df3ce6bb6d" },
- "telescope.nvim": { "branch": "master", "commit": "0f865f17af4f9bc1587a0132414cdfd32d91852e" },
- "tender.vim": { "branch": "master", "commit": "7746453a045eaa97dc413a7209268345f33f3243" }
-} \ No newline at end of file
+ "LuaSnip": { "branch": "master", "commit": "de10d8414235b0a8cabfeba60d07c24304e71f5c" },
+ "cmp-nvim-lsp": { "branch": "main", "commit": "bd5a7d6db125d4654b50eeae9f5217f24bb22fd3" },
+ "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
+ "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
+ "mason-lspconfig.nvim": { "branch": "main", "commit": "1ec4da522fa49dcecee8d190efda273464dd2192" },
+ "mason.nvim": { "branch": "main", "commit": "7dc4facca9702f95353d5a1f87daf23d78e31c2a" },
+ "nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
+ "nvim-lspconfig": { "branch": "master", "commit": "16878c7a018cba66a6e990286bdb6afc29ca13d3" },
+ "nvim-treesitter": { "branch": "main", "commit": "5cb05e1b0fa3c469958a2b26f36b3fe930af221c" },
+ "nvim-web-devicons": { "branch": "master", "commit": "c2599a81ecabaae07c49ff9b45dcd032a8d90f1a" },
+ "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
+ "telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" },
+ "tender.vim": { "branch": "master", "commit": "b66dc330aff998dff9d44459d84bc1c5f4304fcc" },
+ "trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }
+}
diff --git a/lua/cshift/filetype.lua b/lua/cshift/filetype.lua
new file mode 100644
index 0000000..2b11acb
--- /dev/null
+++ b/lua/cshift/filetype.lua
@@ -0,0 +1,7 @@
+vim.filetype.add({
+ extension = {
+ tnsl = 'tnsl',
+ tnsh = 'tnsl-shell'
+ }
+})
+
diff --git a/lua/cshift/init.lua b/lua/cshift/init.lua
index 5bae8c0..85820a6 100644
--- a/lua/cshift/init.lua
+++ b/lua/cshift/init.lua
@@ -8,3 +8,5 @@ require("lazy").setup("cshift.plugins")
require("cshift.remaps")
require("cshift.opt")
+require("cshift.filetype")
+require("cshift.treesitter")
diff --git a/lua/cshift/opt.lua b/lua/cshift/opt.lua
index 1de61d9..4ac37af 100644
--- a/lua/cshift/opt.lua
+++ b/lua/cshift/opt.lua
@@ -1,6 +1,9 @@
vim.opt.number = true
vim.opt.relativenumber = true
+vim.opt.list = true
vim.opt.shiftwidth = 4
vim.opt.tabstop = 4
+vim.opt.filetype = "on"
+
diff --git a/lua/cshift/plugins/cmp.lua b/lua/cshift/plugins/cmp.lua
index a1e80b4..ae490f5 100644
--- a/lua/cshift/plugins/cmp.lua
+++ b/lua/cshift/plugins/cmp.lua
@@ -3,6 +3,8 @@ return {
dependencies = {
"neovim/nvim-lspconfig",
"hrsh7th/cmp-nvim-lsp",
+ "L3MON4D3/LuaSnip",
+ "saadparwaiz1/cmp_luasnip",
},
config = function()
@@ -10,12 +12,21 @@ return {
cmp.setup({
snippit = {
expand = function(args)
+ require('luasnip').lsp_expand(args.body)
end
},
window = {
},
+ mapping = cmp.mapping.preset.insert({
+ ['<C-b>'] = cmp.mapping.scroll_docs(-4),
+ ['<C-f>'] = cmp.mapping.scroll_docs(4),
+ ['<C-Space>'] = cmp.mapping.complete(),
+ ['<C-e>'] = cmp.mapping.abort(),
+ ['<S-CR>'] = cmp.mapping.confirm({select=true}),
+ }),
+
sources = cmp.config.sources({
{name = "nvim_lsp"}
}, {
diff --git a/lua/cshift/plugins/lsp.lua b/lua/cshift/plugins/lsp.lua
index 82c3cec..04e0a92 100644
--- a/lua/cshift/plugins/lsp.lua
+++ b/lua/cshift/plugins/lsp.lua
@@ -1,8 +1,8 @@
return {
- "neovim/nvim-lspconfig",
+ "mason-org/mason-lspconfig.nvim",
dependencies = {
- "williamboman/mason.nvim",
- "williamboman/mason-lspconfig.nvim",
+ "mason-org/mason.nvim",
+ "neovim/nvim-lspconfig",
},
config = function()
@@ -12,8 +12,8 @@ return {
"lua_ls",
"clangd",
"jedi_language_server",
- "tsserver",
"rust_analyzer",
+ "ts_ls",
},
handlers = {
diff --git a/lua/cshift/plugins/treesitter.lua b/lua/cshift/plugins/treesitter.lua
new file mode 100644
index 0000000..33f85a0
--- /dev/null
+++ b/lua/cshift/plugins/treesitter.lua
@@ -0,0 +1,7 @@
+return {
+ {
+ 'nvim-treesitter/nvim-treesitter',
+ lazy = false,
+ build = ':TSUpdate'
+ }
+}
diff --git a/lua/cshift/treesitter.lua b/lua/cshift/treesitter.lua
new file mode 100644
index 0000000..4e7ec6b
--- /dev/null
+++ b/lua/cshift/treesitter.lua
@@ -0,0 +1,13 @@
+vim.api.nvim_create_autocmd('User', { pattern = 'TSUpdate',
+ callback = function()
+ require('nvim-treesitter.parsers').tnsl = {
+ install_info = {
+ path = '~/git/tree-sitter-tnsl',
+ generate = true,
+ generate_from_json = false,
+ queries = 'queries/neovim'
+ }
+ }
+ end
+})
+