51ddc385c426568de76cc900c88ce4c960ff545b
- Author
- Pavle Portic <git@theedgeofrage.com>
- Committer
- Pavle Portic <git@theedgeofrage.com>
- Date
Message
Diff
This diff is truncated to protect this page.
1diff --git a/dot_config/nvim/init.lua b/dot_config/nvim/init.lua
2index 402314beb8aaeed5a9d3a3bb0a3faaa2037a5c3d..a3e7b1cbf4e0abedfc9f05812b9d96b60f7b6d7b 100644
3--- a/dot_config/nvim/init.lua
4+++ b/dot_config/nvim/init.lua
5@@ -1,4 +1,5 @@
6-require("sets")
7+vim.g.mapleader = " "
8+
9
10 -- Lazy.nvim
11 local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
12@@ -25,11 +26,12 @@ require("lazy").setup("plugins", {
13
14 vim.cmd([[colorscheme gruvbox]])
15
16-require('telescope').load_extension('projects')
17-require('project_nvim').setup({})
18-
19 -- Import additional config files
20+require("sets")
21 require("mappings")
22 require("git")
23 require("lsp")
24 require("line")
25+
26+require('telescope').load_extension('projects')
27+require('project_nvim').setup({})
28diff --git a/dot_config/nvim/lazy-lock.json b/dot_config/nvim/lazy-lock.json
29index 85851be30ad8a5829f16972cce13b1056d3c2667..f4ae0709b32a5c575b82b3bc7f9de5d27e639714 100644
30--- a/dot_config/nvim/lazy-lock.json
31+++ b/dot_config/nvim/lazy-lock.json
32@@ -1,25 +1,30 @@
33 {
34 "Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" },
35- "LuaSnip": { "branch": "master", "commit": "0df29db3543837f8b41597f2640397c5ec792b7b" },
36+ "LuaSnip": { "branch": "master", "commit": "80a8528f084a97b624ae443a6f50ff8074ba486b" },
37 "bufferline.nvim": { "branch": "main", "commit": "6ecd37e0fa8b156099daedd2191130e083fb1490" },
38 "cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" },
39 "copilot.vim": { "branch": "release", "commit": "998cf5ab1b85e844c7e8edb864a997e590df7182" },
40 "diffview.nvim": { "branch": "main", "commit": "d38c1b5266850f77f75e006bcc26213684e1e141" },
41- "gitsigns.nvim": { "branch": "main", "commit": "ff01d34daaed72f271a8ffa088a7e839a60c640f" },
42+ "gitsigns.nvim": { "branch": "main", "commit": "5a9a6ac29a7805c4783cda21b80a1e361964b3f2" },
43+ "go.nvim": { "branch": "master", "commit": "d73ea5bc00f0d7b726b0ddfc29cea17a544459ba" },
44 "gruvbox.nvim": { "branch": "main", "commit": "477c62493c82684ed510c4f70eaf83802e398898" },
45- "lazy.nvim": { "branch": "main", "commit": "276e572f645430bcfd6fd25faa301ea9077f6ab1" },
46+ "guihua.lua": { "branch": "master", "commit": "5ad8dba19ce9b9fd8965598984dfdc9c119f97e4" },
47+ "lazy.nvim": { "branch": "main", "commit": "4c75c8eeb957a99aa44ce8e526c04340ab358c5e" },
48 "lsp-zero.nvim": { "branch": "v3.x", "commit": "22d2186bee730d68f6fd3bb2d19a389784c37a96" },
49- "lualine.nvim": { "branch": "master", "commit": "45e27ca739c7be6c49e5496d14fcf45a303c3a63" },
50- "mason-lspconfig.nvim": { "branch": "main", "commit": "397273083f988c1a17acf3816947cd198338e700" },
51+ "lualine.nvim": { "branch": "master", "commit": "7533b0ead663d80452210c0c089e5105089697e5" },
52+ "mason-lspconfig.nvim": { "branch": "main", "commit": "e7b64c11035aa924f87385b72145e0ccf68a7e0a" },
53 "mason.nvim": { "branch": "main", "commit": "cd7835b15f5a4204fc37e0aa739347472121a54c" },
54- "neodev.nvim": { "branch": "main", "commit": "24b403eabde652904077f84fd55441744e77a109" },
55- "nvim-autopairs": { "branch": "master", "commit": "748e72c05495a3d30e88a6ef04b21697019a9aa9" },
56- "nvim-cmp": { "branch": "main", "commit": "5dce1b778b85c717f6614e3f4da45e9f19f54435" },
57+ "neodev.nvim": { "branch": "main", "commit": "b094a663ccb71733543d8254b988e6bebdbdaca4" },
58+ "nvim-autopairs": { "branch": "master", "commit": "f6c71641f6f183427a651c0ce4ba3fb89404fa9e" },
59+ "nvim-cmp": { "branch": "main", "commit": "d3a3056204e1a9dbb7c7fe36c114dc43b681768c" },
60 "nvim-cursorword": { "branch": "master", "commit": "c0f2958ec729b47be2dba0d79ef43d005dac9f4e" },
61- "nvim-lspconfig": { "branch": "master", "commit": "bb8e3dfbe10d80c294bb609c4bb4bba3ecdfbfe2" },
62- "nvim-treesitter": { "branch": "master", "commit": "0d5c611e3fd36353b11b412661ff4f07bcc8e5c6" },
63- "nvim-treesitter-textobjects": { "branch": "master", "commit": "76c7a89b41de77a4f83fb77fa072c5ad7605fe3b" },
64- "nvim-web-devicons": { "branch": "master", "commit": "a1e6268779411048a87f767a27380089362a0ce2" },
65+ "nvim-dap": { "branch": "master", "commit": "b595c820018a15b6d54bf53b5cbeaa6f2d7a27e2" },
66+ "nvim-dap-ui": { "branch": "master", "commit": "34160a7ce6072ef332f350ae1d4a6a501daf0159" },
67+ "nvim-lspconfig": { "branch": "master", "commit": "e49b1e90c1781ce372013de3fa93a91ea29fc34a" },
68+ "nvim-surround": { "branch": "main", "commit": "0d6882635817a2677749a330127d12ac30a4f3c8" },
69+ "nvim-treesitter": { "branch": "master", "commit": "afa103385a2b5ef060596ed822ef63276ae88016" },
70+ "nvim-web-devicons": { "branch": "master", "commit": "3af745113ea537f58c4b1573b64a429fefad9e07" },
71+ "playground": { "branch": "master", "commit": "ba48c6a62a280eefb7c85725b0915e021a1a0749" },
72 "plenary.nvim": { "branch": "master", "commit": "50012918b2fc8357b87cff2a7f7f0446e47da174" },
73 "project.nvim": { "branch": "main", "commit": "8c6bad7d22eef1b71144b401c9f74ed01526a4fb" },
74 "suda.vim": { "branch": "master", "commit": "8b0fc3711760195aba104e2d190cff9af8267052" },
75@@ -29,7 +34,6 @@
76 "vim-fugitive": { "branch": "master", "commit": "cbe9dfa162c178946afa689dd3f42d4ea8bf89c1" },
77 "vim-matchup": { "branch": "master", "commit": "6dbe108230c7dbbf00555b7d4d9f6a891837ef07" },
78 "vim-repeat": { "branch": "master", "commit": "24afe922e6a05891756ecf331f39a1f6743d3d5a" },
79- "vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },
80- "which-key.nvim": { "branch": "main", "commit": "6962dae3565369363b59dd51fb206051555fcb4d" },
81+ "which-key.nvim": { "branch": "main", "commit": "ce741eb559c924d72e3a67d2189ad3771a231414" },
82 "whitespace.nvim": { "branch": "master", "commit": "f0fc9e9c4ce3f7d2166e9e5a069b64b9ca4a3f15" }
83 }
84diff --git a/dot_config/nvim/lua/git.lua b/dot_config/nvim/lua/git.lua
85index a424ae4f280617c97f01a359122e81b9caf20df0..af6794fcaff9235094807e272f58baa2c312d8c0 100644
86--- a/dot_config/nvim/lua/git.lua
87+++ b/dot_config/nvim/lua/git.lua
88@@ -1,7 +1,7 @@
89 require('gitsigns').setup{
90 signs = {
91 add = { text = '+' },
92- change = { text = '│' },
93+ change = { text = '~' },
94 delete = { text = '_' },
95 topdelete = { text = '‾' },
96 changedelete = { text = '~' },
97@@ -15,14 +15,14 @@ require('gitsigns').setup{
98 follow_files = true
99 },
100 attach_to_untracked = true,
101- current_line_blame = true, -- :Gitsigns toggle_current_line_blame
102+ current_line_blame = true,
103 current_line_blame_opts = {
104 virt_text = true,
105 virt_text_pos = 'right_align', -- 'eol' | 'overlay' | 'right_align'
106 delay = 100,
107 ignore_whitespace = false,
108 },
109- current_line_blame_formatter = '<author>, <author_time:%Y-%m-%d> - <summary>',
110+ current_line_blame_formatter = '<abbrev_sha> - <author> <author_time:%Y-%m-%d>',
111 sign_priority = 6,
112 update_debounce = 100,
113 status_formatter = nil, -- Use default
114diff --git a/dot_config/nvim/lua/lsp.lua b/dot_config/nvim/lua/lsp.lua
115index 78efd7980ac1f00d591dc951a84a66aea1cb78eb..de678f023dd8109954ab626c40a85121c2e76bad 100644
116--- a/dot_config/nvim/lua/lsp.lua
117+++ b/dot_config/nvim/lua/lsp.lua
118@@ -1,9 +1,11 @@
119 -- Load default lsp-zero keymaps
120-local lsp_zero = require('lsp-zero')
121+local lsp_zero = require("lsp-zero")
122+local telescope = require("telescope.builtin")
123+require("mason").setup()
124+require("mason-lspconfig").setup({ automatic_installation = true })
125
126 lsp_zero.on_attach(function(_, bufnr)
127- -- see :help lsp-zero-keybindings
128- -- to learn the available actions
129+ -- see :help lsp-zero-keybindings to learn the available actions
130 lsp_zero.default_keymaps({buffer = bufnr})
131
132 local opts = {buffer = bufnr, remap = false}
133@@ -14,6 +16,20 @@ lsp_zero.on_attach(function(_, bufnr)
134 vim.keymap.set("n", "<leader>en", function() vim.diagnostic.goto_next() end, opts)
135 vim.keymap.set("n", "<leader>ep", function() vim.diagnostic.goto_prev() end, opts)
136 vim.keymap.set("i", "<C-h>", function() vim.lsp.buf.signature_help() end, opts)
137+
138+ vim.keymap.set("n", "gr", function() telescope.lsp_references({
139+ include_declaration = false,
140+ show_line = false,
141+ fname_width = 64,
142+ }) end, opts)
143+ vim.keymap.set("n", "gd", function() telescope.lsp_definitions({
144+ show_line = false,
145+ fname_width = 64,
146+ }) end, opts)
147+ vim.keymap.set("n", "gi", function() telescope.lsp_implementations({
148+ show_line = false,
149+ fname_width = 64,
150+ }) end, opts)
151 end)
152
153 lsp_zero.format_on_save({
154@@ -22,47 +38,69 @@ lsp_zero.format_on_save({
155 timeout_ms = 10000,
156 },
157 servers = {
158- ['prettier'] = {'javascript', 'typescript'},
159- ['gopls'] = {'go'},
160- ['stylua'] = {'lua'},
161+ ["efm"] = {"javascript", "typescript"},
162+ ["gopls"] = {"go"},
163+ ["stylua"] = {"lua"},
164 }
165 })
166
167 -- Setup LSP servers
168-local lspconfig = require('lspconfig')
169+local lspconfig = require("lspconfig")
170+local prettier = {
171+ formatCommand = 'prettierd "${INPUT}"',
172+ formatStdin = true,
173+ env = {
174+ string.format('PRETTIERD_DEFAULT_CONFIG=%s', vim.fn.expand('~/.config/nvim/utils/linter-config/.prettierrc.json')),
175+ },
176+}
177 -- go
178 lspconfig.golangci_lint_ls.setup({})
179 lspconfig.gopls.setup({})
180 -- lua
181-lspconfig.lua_ls.setup({})
182+lspconfig.lua_ls.setup(lsp_zero.nvim_lua_ls())
183 -- python
184-lspconfig.pylsp.setup{}
185+lspconfig.pylsp.setup({})
186 -- typescript
187-lspconfig.tsserver.setup({})
188 lspconfig.eslint.setup({})
189+lspconfig.tsserver.setup({})
190+local languages = {
191+ -- lua = { stylua },
192+ typescript = { prettier },
193+ javascript = { prettier },
194+ json = { prettier },
195+ markdown = { prettier },
196+}
197+lspconfig.efm.setup({
198+ -- capabilities = capabilities,
199+ cmd = { "/home/pavle/.local/share/nvim/mason/bin/efm-langserver" },
200+ -- on_attach = on_attach,
201+ init_options = { documentFormatting = true },
202+ root_dir = vim.loop.cwd,
203+ filetypes = vim.tbl_keys(languages),
204+ settings = {
205+ rootMarkers = { ".git/", ".prettierignore" },
206+ lintDebounce = 100,
207+ logLevel = 5,
208+ logFile = "/home/pavle/efm.log",
209+ languages = languages,
210+ },
211+ single_file_support = true,
212+})
213 -- other
214 lspconfig.terraformls.setup({})
215 lspconfig.jsonls.setup({})
216
217 -- Customize keymaps
218diff --git a/dot_config/nvim/lua/mappings.lua b/dot_config/nvim/lua/mappings.lua
219index 0bb9051cb45d850bb4f158f1fafabf7b6e12d6c9..f32422bbcd416ec5692fe0f99d9ac85a491f06ab 100644
220--- a/dot_config/nvim/lua/mappings.lua
221+++ b/dot_config/nvim/lua/mappings.lua
222@@ -1,32 +1,34 @@
223+local opts = {noremap = true, silent = true}
224+
225 -- Colemak bindings
226-vim.keymap.set("", "n", "j")
227-vim.keymap.set("", "e", "k")
228-vim.keymap.set("", "i", "l")
229-vim.keymap.set("", "I", "$")
230-vim.keymap.set("", "H", "0")
231-vim.keymap.set("", "l", "i")
232-vim.keymap.set("", "L", "I")
233-vim.keymap.set("n", "N", "mzJ`z")
234-vim.keymap.set("", "k", "n")
235-vim.keymap.set("", "K", "N")
236-vim.keymap.set("", "J", "M")
237-vim.keymap.set("", "j", "m")
238-vim.keymap.set("", "m", "e")
239-vim.keymap.set("", "M", "E")
240+vim.keymap.set("", "n", "j", opts)
241+vim.keymap.set("", "e", "k", opts)
242+vim.keymap.set("", "i", "l", opts)
243+vim.keymap.set("", "I", "$", opts)
244+vim.keymap.set("", "H", "^", opts)
245+vim.keymap.set("", "l", "i", opts)
246+vim.keymap.set("", "L", "I", opts)
247+vim.keymap.set("n", "N", "mzJ`z", opts)
248+vim.keymap.set("", "k", "n", opts)
249+vim.keymap.set("", "K", "N", opts)
250+vim.keymap.set("", "J", "M", opts)
251+vim.keymap.set("", "j", "m", opts)
252+vim.keymap.set("", "m", "e", opts)
253+vim.keymap.set("", "M", "E", opts)
254
255-vim.keymap.set("v", "N", ":m '>+1<CR>gv=gv")
256-vim.keymap.set("v", "E", ":m '<-2<CR>gv=gv")
257+vim.keymap.set("v", "N", ":m '>+1<CR>gv=gv", opts)
258+vim.keymap.set("v", "E", ":m '<-2<CR>gv=gv", opts)
259
260 -- General mappings
261-vim.keymap.set("", "<BS>", "gg")
262-vim.keymap.set("", "<CR>", "G")
263-vim.keymap.set("", "<Space>", "<NOP>")
264+vim.keymap.set("", "<BS>", "gg", opts)
265+vim.keymap.set("", "<CR>", "G", opts)
266+vim.keymap.set("", "<Space>", "<NOP>", opts)
267
268-vim.keymap.set("x", "p", "\"_dP")
269+vim.keymap.set("x", "p", "\"_dP", opts)
270
271-vim.keymap.set("n", "<tab>", vim.cmd.bn)
272-vim.keymap.set("n", "<s-tab>", vim.cmd.bp)
273-vim.keymap.set("n", "U", vim.cmd.redo)
274+vim.keymap.set("n", "<tab>", vim.cmd.bn, opts)
275+vim.keymap.set("n", "<s-tab>", vim.cmd.bp, opts)
276+vim.keymap.set("n", "U", vim.cmd.redo, opts)
277
278 -- File operation maps
279 vim.keymap.set("n", "<leader>fd", function ()
280@@ -36,35 +38,50 @@ vim.keymap.set("n", "<leader>fd", function ()
281 vim.cmd.normal('jzgg=G`z')
282 end
283 end)
284-vim.keymap.set("n", "<leader>fs", vim.cmd.w)
285-vim.keymap.set("n", "<leader>W", vim.cmd.SudaWrite)
286-vim.keymap.set("n", "<leader>q", vim.cmd.q)
287-vim.keymap.set("n", "<leader>Q", ":q!<cr>")
288-vim.keymap.set("n", "<leader>wq", vim.cmd.wq)
289-vim.keymap.set("n", "<leader>bd", ":bp | bd #<cr>")
290-vim.keymap.set("n", "<leader>u", vim.cmd.UndotreeToggle)
291+vim.keymap.set("n", "<leader>fs", vim.cmd.w, opts)
292+vim.keymap.set("n", "<leader>W", vim.cmd.SudaWrite, opts)
293+vim.keymap.set("n", "<leader>q", vim.cmd.q, opts)
294+vim.keymap.set("n", "<leader>Q", ":q!<cr>", opts)
295+vim.keymap.set("n", "<leader>wq", vim.cmd.wq, opts)
296+vim.keymap.set("n", "<leader>bd", ":bp | bd #<cr>", opts)
297+vim.keymap.set("n", "<leader>u", vim.cmd.UndotreeToggle, opts)
298
299-vim.keymap.set("", "\\", ":let @/ = \"\"<CR>")
300+vim.keymap.set("", "\\", ":let @/ = \"\"<CR>", opts)
301
302 -- Git
303-vim.keymap.set("n", "<leader>gd", vim.cmd.Gvdiff)
304+vim.keymap.set("n", "<leader>gd", vim.cmd.Gvdiff, opts)
305 -- vim.keymap.set("n", "<leader>gb", vim.cmd('Gitsigns toggle_current_line_blame'))
306
307 -- window movement
308-vim.keymap.set("n", "<leader>wn", "<C-W>j")
309-vim.keymap.set("n", "<leader>we", "<C-W>k")
310-vim.keymap.set("n", "<leader>wh", "<C-W>h")
311-vim.keymap.set("n", "<leader>wi", "<C-W>l")
312-vim.keymap.set("n", "<leader>wH", "<C-W>5<")
313-vim.keymap.set("n", "<leader>wI", "<C-W>5>")
314-vim.keymap.set("n", "<leader>wN", ":resize +5<CR>")
315-vim.keymap.set("n", "<leader>wE", ":resize -5<CR>")
316+vim.keymap.set("n", "<leader>wn", "<C-W>j", opts)
317+vim.keymap.set("n", "<leader>we", "<C-W>k", opts)
318+vim.keymap.set("n", "<leader>wh", "<C-W>h", opts)
319+vim.keymap.set("n", "<leader>wi", "<C-W>l", opts)
320+vim.keymap.set("n", "<leader>wH", "<C-W>5<", opts)
321+vim.keymap.set("n", "<leader>wI", "<C-W>5>", opts)
322diff --git a/dot_config/nvim/lua/plugins/comment.lua b/dot_config/nvim/lua/plugins/comment.lua
323index 29b58e23ff162569e2f60a4d807ce8a4d96a1aca..3982bf5cdcaf6313a55d7663ef7321445452d378 100644
324--- a/dot_config/nvim/lua/plugins/comment.lua
325+++ b/dot_config/nvim/lua/plugins/comment.lua
326@@ -7,6 +7,12 @@ return {
327 ---Block-comment toggle keymap
328 block = '<leader>b/',
329 },
330+ opleader = {
331+ ---Line-comment keymap
332+ line = '<leader>/',
333+ ---Block-comment keymap
334+ block = '<leader>b/',
335+ },
336 },
337 lazy = false,
338 }
339diff --git a/dot_config/nvim/lua/plugins/init.lua b/dot_config/nvim/lua/plugins/init.lua
340index a821b93f118d1eec42cbb36b9a390341592dccfc..4ef88ddad809d10bbd52616910feba37fc9fdcba 100644
341--- a/dot_config/nvim/lua/plugins/init.lua
342+++ b/dot_config/nvim/lua/plugins/init.lua
343@@ -12,23 +12,47 @@ return {
344 },
345 "nvim-lualine/lualine.nvim",
346
347- -- keymaps and functionality
348+ -- keymaps
349 {
350 'windwp/nvim-autopairs',
351 event = "InsertEnter",
352 opts = {}
353 },
354- "tpope/vim-surround",
355+ {
356+ "kylechui/nvim-surround",
357+ version = "*",
358+ event = "VeryLazy",
359+ config = function()
360+ require("nvim-surround").setup({
361+ -- Configuration here, or leave empty to use defaults
362+ })
363+ end
364+ },
365 "folke/which-key.nvim",
366+
367+ -- functionality
368 'andymass/vim-matchup',
369 'tpope/vim-repeat',
370 'mbbill/undotree',
371 'jdhao/whitespace.nvim',
372 'lambdalisue/suda.vim',
373 'xiyaowong/nvim-cursorword',
374-
375- -- other
376 'ahmedkhalf/project.nvim',
377- 'folke/neodev.nvim',
378 'github/copilot.vim',
379+ "mfussenegger/nvim-dap",
380+ "rcarriga/nvim-dap-ui",
381+ {
382+ 'folke/neodev.nvim',
383+ dependencies = {
384+ "rcarriga/nvim-dap-ui",
385+ },
386+ opts = {
387+ library = {
388+ plugins = {
389+ "nvim-dap-ui",
390+ },
391+ types = true,
392+ },
393+ },
394+ },
395 }
396diff --git a/dot_config/nvim/lua/plugins/lsp.lua b/dot_config/nvim/lua/plugins/lsp.lua
397index 9cfa1e6f8a2419a55e167de1308c0863c1917922..cff73a9ad5d2c0e51568017ba885adbb1cc1c28c 100644
398--- a/dot_config/nvim/lua/plugins/lsp.lua
399+++ b/dot_config/nvim/lua/plugins/lsp.lua
400@@ -7,4 +7,19 @@ return {
401 {'hrsh7th/cmp-nvim-lsp'},
402 {'hrsh7th/nvim-cmp'},
403 {'L3MON4D3/LuaSnip'},
404+
405+ {
406+ "ray-x/go.nvim",
407+ dependencies = {
408+ "ray-x/guihua.lua",
409+ "neovim/nvim-lspconfig",
410+ "nvim-treesitter/nvim-treesitter",
411+ },
412+ config = function()
413+ require("go").setup()
414+ end,
415+ event = {"CmdlineEnter"},
416+ ft = {"go", "gomod"},
417+ build = ":lua require('go.install').update_all_sync()"
418+ }
419 }
420diff --git a/dot_config/nvim/lua/plugins/treesitter.lua b/dot_config/nvim/lua/plugins/treesitter.lua
421index c9c21276a84115750b9ca85bac6d1ebefe7c9062..8fffa2cfa5cc804e347df7c522a4191860637bc6 100644
422--- a/dot_config/nvim/lua/plugins/treesitter.lua
423+++ b/dot_config/nvim/lua/plugins/treesitter.lua
424@@ -1,57 +1,65 @@
425 return {
426- "nvim-treesitter/nvim-treesitter",
427- version = false,
428- build = ":TSUpdate",
429- event = { "BufReadPost", "BufNewFile" },
430- dependencies = {
431- {
432- "nvim-treesitter/nvim-treesitter-textobjects",
433- init = function()
434- require("lazy.core.loader").disable_rtp_plugin("nvim-treesitter-textobjects")
435- load_textobjects = true
436- end,
437+ {
438+ "nvim-treesitter/playground",
439+ dependencies = {
440+ "nvim-treesitter/nvim-treesitter",
441 },
442 },
443- cmd = { "TSUpdateSync" },
444- keys = {
445- { "<c-space>", desc = "Increment selection" },
446- { "<bs>", desc = "Decrement selection", mode = "x" },
447- },
448- opts = {
449- highlight = {
450- enable = true,
451- additional_vim_regex_highlighting = false,
452- },
453- indent = { enable = true },
454- auto_install = true,
455- ensure_installed = {
456- "bash",
457- "go",
458- "javascript",
459- "json",
460- "lua",
461- "luadoc",
462- "luap",
463- "markdown",
464- "markdown_inline",
465- "python",
466- "query",
467- "regex",
468- "terraform",
469- "tsx",
470- "typescript",
471- "vim",
472- "vimdoc",
473- "yaml",
474- },
475- incremental_selection = {
476- enable = true,
477- keymaps = {
478- init_selection = "<C-space>",
479- node_incremental = "<C-space>",
480- scope_incremental = false,
481- node_decremental = "<bs>",
482- },
483- },
484+ {
485+ "nvim-treesitter/nvim-treesitter",
486+ version = false,
487+ build = ":TSUpdate",
488+ event = { "BufReadPost", "BufNewFile", "VeryLazy" },
489+ cmd = { "TSUpdateSync", "TSUpdate", "TSInstall" },
490+ config = function()
491+ require'nvim-treesitter.configs'.setup({
492+ highlight = {
493+ enable = true,
494+ additional_vim_regex_highlighting = false,
495+ },
496+ indent = {
497+ enable = true,
498+ },
499+ auto_install = true,
500+ ensure_installed = {
501+ "bash",
502+ "go",
503+ "javascript",
504+ "json",
505+ "lua",
506+ "luadoc",
507+ "luap",
508+ "markdown",
509+ "markdown_inline",
510+ "python",
511+ "query",
512+ "regex",
513+ "terraform",
514+ "tsx",
515+ "typescript",
516+ "vim",
517+ "vimdoc",
518+ "yaml",
519+ },
520+ playground = {
521+ enable = true,
522+ disable = {},
523+ updatetime = 25, -- Debounced time for highlighting nodes in the playground from source code
524diff --git a/dot_config/nvim/lua/sets.lua b/dot_config/nvim/lua/sets.lua
525index 92b8adabf0648254d00cb95172b902f205e4561b..17fab3ba0ab5c587c0e63243991ea4828b10cb73 100644
526--- a/dot_config/nvim/lua/sets.lua
527+++ b/dot_config/nvim/lua/sets.lua
528@@ -1,6 +1,3 @@
529-vim.g.mapleader = " "
530-
531--- sets
532 vim.opt.clipboard = "unnamedplus"
533 vim.opt.nu = true
534 vim.opt.relativenumber = true
535@@ -16,6 +13,7 @@ vim.opt.listchars = "tab:│ ,trail:~,extends:>,precedes:<"
536 vim.opt.foldenable = false
537 vim.opt.foldmethod = "expr"
538 vim.opt.foldexpr = "nvim_treesitter#foldexpr()"
539+vim.opt.foldlevel = 99
540 vim.opt.termguicolors = true
541 vim.opt.autochdir = true
542 vim.opt.showcmd = true