From 810199bd4743b8b72aaae4494b8a28595795a56b Mon Sep 17 00:00:00 2001 From: Zoe Roux Date: Tue, 15 Mar 2022 16:44:53 +0100 Subject: [PATCH] Adding autopairs and ts text objects --- nvim/nvim/config/new/lua/documentation.lua | 7 +++++++ nvim/nvim/config/new/lua/plugins.lua | 3 +++ nvim/nvim/config/new/lua/treesitter/init.lua | 1 + nvim/nvim/config/new/lua/treesitter/npairs.lua | 14 ++++++++++++++ .../nvim/config/new/lua/treesitter/treesitter.lua | 15 +++++++++++++++ 5 files changed, 40 insertions(+) create mode 100644 nvim/nvim/config/new/lua/treesitter/npairs.lua diff --git a/nvim/nvim/config/new/lua/documentation.lua b/nvim/nvim/config/new/lua/documentation.lua index 5ffb235..d286dd7 100644 --- a/nvim/nvim/config/new/lua/documentation.lua +++ b/nvim/nvim/config/new/lua/documentation.lua @@ -13,3 +13,10 @@ neogen.setup({ } } }) + +local wk = require("which-key") +wk.register({ + d = { "Neogen any", "Generate documentation" }, +}, { + prefix = "", +}) diff --git a/nvim/nvim/config/new/lua/plugins.lua b/nvim/nvim/config/new/lua/plugins.lua index 51038fb..5a4f11c 100644 --- a/nvim/nvim/config/new/lua/plugins.lua +++ b/nvim/nvim/config/new/lua/plugins.lua @@ -49,6 +49,7 @@ return packer.startup(function(use) use "tpope/vim-repeat" use "tpope/vim-sleuth" use "ggandor/lightspeed.nvim" + use "nishigori/increment-activator" use { "airblade/vim-rooter", config = function() vim.g.rooter_manual_only = 1 end } use { "Pocco81/AutoSave.nvim", config = function() require "autosave".setup() end } @@ -94,6 +95,8 @@ return packer.startup(function(use) use { "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" } + use "nvim-treesitter/nvim-treesitter-textobjects" + use "windwp/nvim-autopairs" use "numToStr/Comment.nvim" use "JoosepAlviste/nvim-ts-context-commentstring" use { "danymat/neogen", requires = "nvim-treesitter/nvim-treesitter",} diff --git a/nvim/nvim/config/new/lua/treesitter/init.lua b/nvim/nvim/config/new/lua/treesitter/init.lua index f618346..c6285b7 100644 --- a/nvim/nvim/config/new/lua/treesitter/init.lua +++ b/nvim/nvim/config/new/lua/treesitter/init.lua @@ -1,4 +1,5 @@ require "treesitter.treesitter" require "treesitter.indent-line" require "treesitter.comments" +require "treesitter.npairs" diff --git a/nvim/nvim/config/new/lua/treesitter/npairs.lua b/nvim/nvim/config/new/lua/treesitter/npairs.lua new file mode 100644 index 0000000..3d0a0be --- /dev/null +++ b/nvim/nvim/config/new/lua/treesitter/npairs.lua @@ -0,0 +1,14 @@ +local ok, npairs = pcall(require, "nvim-autopairs") +if not ok then + return +end + +npairs.setup({ + check_ts = true, + ignored_next_char = "[%w%.]", +}) + +local cmp_autopairs = require('nvim-autopairs.completion.cmp') +local cmp = require('cmp') +cmp.event:on( 'confirm_done', cmp_autopairs.on_confirm_done({ map_char = { tex = '' } })) + diff --git a/nvim/nvim/config/new/lua/treesitter/treesitter.lua b/nvim/nvim/config/new/lua/treesitter/treesitter.lua index 38e3be2..3117d1c 100644 --- a/nvim/nvim/config/new/lua/treesitter/treesitter.lua +++ b/nvim/nvim/config/new/lua/treesitter/treesitter.lua @@ -17,4 +17,19 @@ configs.setup({ enable = true, enable_autocmd = false, }, + textobjects = { + select = { + enable = true, + lookahead = false, + + keymaps = { + ["af"] = "@function.outer", + ["if"] = "@function.inner", + ["ac"] = "@class.outer", + ["ic"] = "@class.inner", + ["ia"] = "@parameter.inner", + ["aa"] = "@parameter.outer", + }, + }, + }, })