nix-community.nixvim/plugins/by-name/smartcolumn/default.nix
osbm a41559f093
Some checks are pending
Publish every Git push to main to FlakeHub / flakehub-publish (push) Waiting to run
Publish every git push to Flakestry / publish-flake (push) Waiting to run
Documentation / Version info (push) Waiting to run
Documentation / Build (push) Blocked by required conditions
Documentation / Combine builds (push) Blocked by required conditions
Documentation / Deploy (push) Blocked by required conditions
treewide: add plugin descriptions
2025-06-24 06:10:11 +00:00

81 lines
1.6 KiB
Nix

{
lib,
...
}:
let
inherit (lib.nixvim) defaultNullOpts;
inherit (lib) types;
in
lib.nixvim.plugins.mkNeovimPlugin {
name = "smartcolumn";
packPathName = "smartcolumn.nvim";
package = "smartcolumn-nvim";
description = "A Neovim plugin hiding your colorcolumn when unneeded.";
maintainers = [ lib.maintainers.khaneliman ];
settingsOptions = {
colorcolumn = defaultNullOpts.mkNullable (with types; either str (listOf str)) "80" ''
Column with to highlight.
Supports multiple values for more column highlights.
'';
disabled_filetypes =
defaultNullOpts.mkListOf types.str
[
"help"
"text"
"markdown"
]
''
Filetypes that colorcolumn highlighting will not be displayed.
'';
scope =
defaultNullOpts.mkEnumFirstDefault
[
"file"
"window"
"line"
]
''
The scope to check for column width and highlight.
'';
custom_colorcolumn = defaultNullOpts.mkAttrsOf types.anything { } ''
Custom colorcolumn definitions for different filetypes.
'';
};
settingsExample = {
colorcolumn = "100";
disabled_filetypes = [
"checkhealth"
"help"
"lspinfo"
"markdown"
"neo-tree"
"noice"
"text"
];
custom_colorcolumn = {
go = [
"100"
"130"
];
java = [
"100"
"140"
];
nix = [
"100"
"120"
];
rust = [
"80"
"100"
];
};
scope = "window";
};
}