From cc18174aa79a1b6ed083f410bc6f76e0f4e01631 Mon Sep 17 00:00:00 2001 From: Nicolai Van der Storm Date: Fri, 20 Oct 2023 16:19:33 +0200 Subject: [PATCH] added autopairs and treesitter plugins to nvim --- nix/users/base/neovim/default.nix | 10 ++++ nix/users/base/neovim/plugins/autopairs.lua | 6 ++ nix/users/base/neovim/plugins/treesitter.lua | 62 ++++++++++++++++++++ 3 files changed, 78 insertions(+) create mode 100644 nix/users/base/neovim/plugins/autopairs.lua create mode 100644 nix/users/base/neovim/plugins/treesitter.lua diff --git a/nix/users/base/neovim/default.nix b/nix/users/base/neovim/default.nix index e136a66..fad4754 100644 --- a/nix/users/base/neovim/default.nix +++ b/nix/users/base/neovim/default.nix @@ -91,6 +91,16 @@ plugin = vimPlugins.which-key-nvim; config = toLuaFile ./plugins/whichkey.lua; } + + { + plugin = vimPlugins.nvim-autopairs; + config = toLuaFile ./plugins/autopairs.lua + } + + { + plugin = vimPlugins.nvim-treesitter; + config = toLuaFile ./plugins/treesitter.lua + } ]; extraLuaConfig = '' diff --git a/nix/users/base/neovim/plugins/autopairs.lua b/nix/users/base/neovim/plugins/autopairs.lua new file mode 100644 index 0000000..6b60d7b --- /dev/null +++ b/nix/users/base/neovim/plugins/autopairs.lua @@ -0,0 +1,6 @@ +local status, plugin = pcall(require,'nvim-autopairs') +if not status then + print('Error with plugin: ', plugin) + return +end +plugin.setup({}) \ No newline at end of file diff --git a/nix/users/base/neovim/plugins/treesitter.lua b/nix/users/base/neovim/plugins/treesitter.lua new file mode 100644 index 0000000..3a1fa0d --- /dev/null +++ b/nix/users/base/neovim/plugins/treesitter.lua @@ -0,0 +1,62 @@ +local status, plugin = pcall(require,'nvim-treesitter.configs') +if not status then + print('Plugin Error: ', plugin) + return +end +plugin.setup { + -- A list of parser names, or "all" (the four listed parsers should always be installed) + ensure_installed = { + "c", + "lua", + "vim", + "python", + "html", + "htmldjango", + "go", + "javascript", + "typescript", + "toml", + "css", + "gitignore", + "gitcommit", + "git_rebase", + "gitattributes", + "cpp", + "dockerfile", + "c_sharp", + "jq", + "jsonnet", + "kotlin", + "rust", + "ruby", + "solidity", + "sql", + "yaml", + "nix", + }, + + -- Install parsers synchronously (only applied to `ensure_installed`) + sync_install = false, + + -- Automatically install missing parsers when entering buffer + -- Recommendation: set to false if you don't have `tree-sitter` CLI installed locally + auto_install = true, + + -- List of parsers to ignore installing (for "all") + --ignore_install = { "javascript" }, + + ---- If you need to change the installation directory of the parsers (see -> Advanced Setup) + -- parser_install_dir = "/some/path/to/store/parsers", -- Remember to run vim.opt.runtimepath:append("/some/path/to/store/parsers")! + + highlight = { + -- `false` will disable the whole extension + enable = true, + use_languagetree = true, + disable = {"css", "html" }, + -- Set this to `true` if you depend on 'syntax' being enabled (like for indentation). + -- Using this option may slow down your editor, and you may see some duplicate highlights. + -- Instead of true it can also be a list of languages + additional_vim_regex_highlighting = false, + + }, +} \ No newline at end of file