nvim: add nvim-treesitter-textsubjects

This commit is contained in:
Moritz Böhme 2023-02-17 22:19:47 +01:00
parent 6f28bd821e
commit 2fe2b60fd4
No known key found for this signature in database
GPG key ID: 970C6E89EB0547A9
4 changed files with 46 additions and 0 deletions

View file

@ -1,12 +1,27 @@
{ config
, lib
, pkgs
, inputs
, ...
}:
with lib;
let
cfg = config.my.programs.vim;
mkDate = longDate: (lib.concatStringsSep "-" [
(builtins.substring 0 4 longDate)
(builtins.substring 4 2 longDate)
(builtins.substring 6 2 longDate)
]);
mkVersionInput = input: mkDate (input.lastModifiedDate or "19700101") + "_" + (input.shortRev or "dirty");
nvim-treesitter-textsubjects = pkgs.vimUtils.buildVimPluginFrom2Nix {
pname = "nvim-treesitter-textsubjects";
version = mkVersionInput inputs.nvim-treesitter-textsubjects;
src = inputs.nvim-treesitter-textsubjects;
};
in
{
options.my.programs.vim = {
@ -46,6 +61,7 @@ in
nvim-cmp
nvim-lspconfig
nvim-surround
nvim-treesitter-textsubjects
nvim-treesitter.withAllGrammars
nvim-ts-context-commentstring
nvim-web-devicons # for dashboard-nvim

View file

@ -322,3 +322,11 @@ require("nvim-treesitter.configs").setup({
})
require("nvim-surround").setup({})
require("nvim-treesitter.configs").setup({
textsubjects = {
enable = true,
prev_selection = ",", -- (Optional) keymap to select the previous selection
keymaps = { ["."] = "textsubjects-smart" },
},
})