ui/noice: add missing treesitter grammars

This commit is contained in:
NotAShelf 2024-04-23 20:43:41 +03:00
parent 5e12c2315a
commit ad9d0c6cdb
No known key found for this signature in database
GPG Key ID: 02D1DD3FA08B6B29
1 changed files with 75 additions and 57 deletions

View File

@ -1,27 +1,37 @@
{ {
config, config,
pkgs,
lib, lib,
... ...
}: let }: let
inherit (lib.modules) mkIf; inherit (lib.modules) mkIf;
inherit (lib.lists) optionals;
inherit (lib.strings) optionalString;
inherit (lib.trivial) boolToString; inherit (lib.trivial) boolToString;
inherit (lib.nvim.dag) entryAnywhere; inherit (lib.nvim.dag) entryAnywhere;
cfg = config.vim.ui.noice; cfg = config.vim.ui.noice;
tscfg = config.vim.treesitter;
cmptype = config.vim.autocomplete.type;
defaultGrammars = with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [vim regex lua bash markdown];
in { in {
config = mkIf cfg.enable { config = mkIf cfg.enable {
vim.startPlugins = [ vim = {
startPlugins = [
"noice-nvim" "noice-nvim"
"nui-nvim" "nui-nvim"
]; ];
vim.luaConfigRC.noice-nvim = entryAnywhere '' treesitter.grammars = optionals tscfg.addDefaultGrammars defaultGrammars;
luaConfigRC.noice-nvim = entryAnywhere ''
require("noice").setup({ require("noice").setup({
lsp = { lsp = {
override = { override = {
["vim.lsp.util.convert_input_to_markdown_lines"] = true, ["vim.lsp.util.convert_input_to_markdown_lines"] = true,
["vim.lsp.util.stylize_markdown"] = true, ["vim.lsp.util.stylize_markdown"] = true,
["cmp.entry.get_documentation"] = true, ${optionalString (cmptype == "nvim-cmp") "[\"cmp.entry.get_documentation\"] = true,"}
}, },
signature = { signature = {
@ -29,6 +39,13 @@ in {
}, },
}, },
hover = {
enabled = true,
silent = false, -- set to true to not show a message if hover is not available
view = nil, -- when nil, use defaults from documentation
opts = {}, -- merged with defaults from documentation
},
presets = { presets = {
bottom_search = true, -- use a classic bottom cmdline for search bottom_search = true, -- use a classic bottom cmdline for search
command_palette = true, -- position the cmdline and popupmenu together command_palette = true, -- position the cmdline and popupmenu together
@ -50,7 +67,7 @@ in {
messages = { messages = {
-- NOTE: If you enable messages, then the cmdline is enabled automatically. -- NOTE: If you enable messages, then the cmdline is enabled automatically.
-- This is a current Neovim limitation. -- This is a current Neovim limitation.
enabled = false, -- enables the Noice messages UI enabled = true, -- enables the Noice messages UI
view = "notify", -- default view for messages view = "notify", -- default view for messages
view_error = "notify", -- view for errors view_error = "notify", -- view for errors
view_warn = "notify", -- view for warnings view_warn = "notify", -- view for warnings
@ -72,4 +89,5 @@ in {
}) })
''; '';
}; };
};
} }