diff options
Diffstat (limited to '.config/nvim')
| -rw-r--r-- | .config/nvim/after/ftplugin/zsh.lua | 5 | ||||
| -rw-r--r-- | .config/nvim/after/queries/bash/highlights.scm | 7 | ||||
| -rw-r--r-- | .config/nvim/lua/custom/plugins/nvim-treesitter.lua | 12 |
3 files changed, 23 insertions, 1 deletions
diff --git a/.config/nvim/after/ftplugin/zsh.lua b/.config/nvim/after/ftplugin/zsh.lua new file mode 100644 index 0000000..e20fbe1 --- /dev/null +++ b/.config/nvim/after/ftplugin/zsh.lua @@ -0,0 +1,5 @@ +Event = 'VeryLazy' + +vim.opt_local.tabstop = 2 -- number of visual spaces per TAB +vim.opt_local.softtabstop = 2 -- number of idfk tab when editing +vim.opt_local.shiftwidth = 2 -- number of spaces to insert on tab diff --git a/.config/nvim/after/queries/bash/highlights.scm b/.config/nvim/after/queries/bash/highlights.scm new file mode 100644 index 0000000..b7e6b17 --- /dev/null +++ b/.config/nvim/after/queries/bash/highlights.scm @@ -0,0 +1,7 @@ +;extends + +; highlight `return` and `exit` like return statements in other languages with +; `@keyword.return` + +((word) @keyword.return + (#any-of? @keyword.return "return" "exit")) diff --git a/.config/nvim/lua/custom/plugins/nvim-treesitter.lua b/.config/nvim/lua/custom/plugins/nvim-treesitter.lua index 61590b0..96ac728 100644 --- a/.config/nvim/lua/custom/plugins/nvim-treesitter.lua +++ b/.config/nvim/lua/custom/plugins/nvim-treesitter.lua @@ -6,7 +6,6 @@ return { ---@type userdata ---@diagnostic disable-next-line: missing-fields require('nvim-treesitter.configs').setup({ - -- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally auto_install = true, highlight = { enable = true }, indent = { enable = true }, @@ -16,6 +15,17 @@ return { max_file_lines = nil, }, }) + + -- HACK: Workaround to have syntax highlighting in zsh until a zsh parser is added + -- https://github.com/nvim-treesitter/nvim-treesitter/issues/655 + local ft_to_lang = require('nvim-treesitter.parsers').ft_to_lang + ---@diagnostic disable-next-line: duplicate-set-field + require('nvim-treesitter.parsers').ft_to_lang = function(ft) + if ft == 'zsh' then + return 'bash' + end + return ft_to_lang(ft) + end end, }, { |
