mirror of
https://github.com/NotAShelf/neovim-flake.git
synced 2024-12-21 17:59:48 +01:00
modules/visuals: update indent-blankline to v3
This commit is contained in:
parent
a535f87cc8
commit
0067d44695
4 changed files with 72 additions and 32 deletions
|
@ -89,7 +89,9 @@ inputs: let
|
||||||
enable = true;
|
enable = true;
|
||||||
fillChar = null;
|
fillChar = null;
|
||||||
eolChar = null;
|
eolChar = null;
|
||||||
showCurrContext = true;
|
scope = {
|
||||||
|
showCurrContext = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
cursorline = {
|
cursorline = {
|
||||||
|
|
|
@ -584,11 +584,11 @@
|
||||||
"indent-blankline": {
|
"indent-blankline": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1688727830,
|
"lastModified": 1697081010,
|
||||||
"narHash": "sha256-efMRkxjbr6o7kSKAEn0Kaw8lsDubRmc1N0Kd1BZ3A7k=",
|
"narHash": "sha256-e8gn4pJYALaQ6sGA66SFf8p6VLJBPxT/BimQhOd5eBs=",
|
||||||
"owner": "lukas-reineke",
|
"owner": "lukas-reineke",
|
||||||
"repo": "indent-blankline.nvim",
|
"repo": "indent-blankline.nvim",
|
||||||
"rev": "4541d690816cb99a7fc248f1486aa87f3abce91c",
|
"rev": "0fe34b4c1b926e106d105d3ae88ef6cbf6743572",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -12,7 +12,7 @@ in {
|
||||||
vim.startPlugins = ["indent-blankline"];
|
vim.startPlugins = ["indent-blankline"];
|
||||||
vim.luaConfigRC.indent-blankline = nvim.dag.entryAnywhere ''
|
vim.luaConfigRC.indent-blankline = nvim.dag.entryAnywhere ''
|
||||||
-- highlight error: https://github.com/lukas-reineke/indent-blankline.nvim/issues/59
|
-- highlight error: https://github.com/lukas-reineke/indent-blankline.nvim/issues/59
|
||||||
vim.wo.colorcolumn = "99999"
|
-- vim.wo.colorcolumn = "99999"
|
||||||
vim.opt.list = true
|
vim.opt.list = true
|
||||||
|
|
||||||
${optionalString (cfg.indentBlankline.eolChar != null) ''
|
${optionalString (cfg.indentBlankline.eolChar != null) ''
|
||||||
|
@ -22,12 +22,20 @@ in {
|
||||||
vim.opt.listchars:append({ space = "${cfg.indentBlankline.fillChar}" })
|
vim.opt.listchars:append({ space = "${cfg.indentBlankline.fillChar}" })
|
||||||
''}
|
''}
|
||||||
|
|
||||||
require("indent_blankline").setup {
|
require("ibl").setup {
|
||||||
enabled = true,
|
enabled = true,
|
||||||
char = "${cfg.indentBlankline.listChar}",
|
debounce = ${toString cfg.indentBlankline.debounce},
|
||||||
show_current_context = ${boolToString cfg.indentBlankline.showCurrContext},
|
indent = { char = "${cfg.indentBlankline.indent.char}" },
|
||||||
show_end_of_line = ${boolToString cfg.indentBlankline.showEndOfLine},
|
|
||||||
use_treesitter = ${boolToString cfg.indentBlankline.useTreesitter},
|
viewport_buffer = {
|
||||||
|
min = ${toString cfg.indentBlankline.viewportBuffer.min},
|
||||||
|
max = ${toString cfg.indentBlankline.viewportBuffer.max},
|
||||||
|
},
|
||||||
|
|
||||||
|
scope = {
|
||||||
|
enabled = ${boolToString cfg.indentBlankline.scope.showCurrContext},
|
||||||
|
show_end = ${boolToString cfg.indentBlankline.scope.showEndOfLine}
|
||||||
|
},
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
})
|
})
|
||||||
|
|
|
@ -3,10 +3,16 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (lib) mkEnableOption mkMappingOption mkOption types literalExpression;
|
inherit (lib) mkEnableOption mkMappingOption mkOption types literalExpression mkRenamedOptionModule mkRemovedOptionModule;
|
||||||
|
|
||||||
cfg = config.vim.visuals;
|
cfg = config.vim.visuals;
|
||||||
in {
|
in {
|
||||||
|
imports = [
|
||||||
|
(mkRenamedOptionModule ["vim" "visuals" "indentBlankline" "showCurrContext"] ["vim" "visuals" "indentBlankline" "scope" "showCurrContext"])
|
||||||
|
(mkRenamedOptionModule ["vim" "visuals" "indentBlankline" "showEndOfLine"] ["vim" "visuals" "indentBlankline" "scope" "showEndOfLine"])
|
||||||
|
(mkRemovedOptionModule ["vim" "visuals" "indentBlankline" "useTreesitter"] "`vim.visuals.indentBlankline.useTreesitter` has been removed upstream and can safely be removed from your configuration.")
|
||||||
|
];
|
||||||
|
|
||||||
options.vim.visuals = {
|
options.vim.visuals = {
|
||||||
enable = mkEnableOption "Visual enhancements.";
|
enable = mkEnableOption "Visual enhancements.";
|
||||||
|
|
||||||
|
@ -60,6 +66,35 @@ in {
|
||||||
|
|
||||||
indentBlankline = {
|
indentBlankline = {
|
||||||
enable = mkEnableOption "indentation guides [indent-blankline]";
|
enable = mkEnableOption "indentation guides [indent-blankline]";
|
||||||
|
debounce = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
description = "Debounce time in milliseconds";
|
||||||
|
default = 200;
|
||||||
|
};
|
||||||
|
|
||||||
|
viewportBuffer = {
|
||||||
|
min = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
description = "Number of lines above and below of what is currently
|
||||||
|
visible in the window";
|
||||||
|
default = 30;
|
||||||
|
};
|
||||||
|
|
||||||
|
max = mkOption {
|
||||||
|
type = types.int;
|
||||||
|
description = "Number of lines above and below of what is currently
|
||||||
|
visible in the window";
|
||||||
|
default = 500;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
indent = {
|
||||||
|
char = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
description = "Character for indentation line";
|
||||||
|
default = "│";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
listChar = mkOption {
|
listChar = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
|
@ -79,28 +114,23 @@ in {
|
||||||
default = "↴";
|
default = "↴";
|
||||||
};
|
};
|
||||||
|
|
||||||
showEndOfLine = mkOption {
|
scope = {
|
||||||
description = ''
|
showEndOfLine = mkOption {
|
||||||
Displays the end of line character set by [](#opt-vim.visuals.indentBlankline.eolChar) instead of the
|
description = ''
|
||||||
indent guide on line returns.
|
Displays the end of line character set by [](#opt-vim.visuals.indentBlankline.eolChar) instead of the
|
||||||
'';
|
indent guide on line returns.
|
||||||
type = types.bool;
|
'';
|
||||||
default = cfg.indentBlankline.eolChar != null;
|
type = types.bool;
|
||||||
defaultText = literalExpression "config.vim.visuals.indentBlankline.eolChar != null";
|
default = cfg.indentBlankline.eolChar != null;
|
||||||
};
|
defaultText = literalExpression "config.vim.visuals.indentBlankline.eolChar != null";
|
||||||
|
};
|
||||||
|
|
||||||
showCurrContext = mkOption {
|
showCurrContext = mkOption {
|
||||||
description = "Highlight current context from treesitter";
|
description = "Highlight current context from treesitter";
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = config.vim.treesitter.enable;
|
default = config.vim.treesitter.enable;
|
||||||
defaultText = literalExpression "config.vim.treesitter.enable";
|
defaultText = literalExpression "config.vim.treesitter.enable";
|
||||||
};
|
};
|
||||||
|
|
||||||
useTreesitter = mkOption {
|
|
||||||
description = "Use treesitter to calculate indentation when possible.";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.treesitter.enable;
|
|
||||||
defaultText = literalExpression "config.vim.treesitter.enable";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue