modules/neovim: deprecate vim.showSignColumn

Prefer the type-safe `vim.options` equivalent.
This commit is contained in:
NotAShelf 2024-12-03 00:53:22 +03:00
parent 5a5f49f85f
commit 07f50e84eb
No known key found for this signature in database
GPG key ID: AF26552424E53993
3 changed files with 29 additions and 25 deletions

View file

@ -14,6 +14,7 @@
splitRight = "splitright"; splitRight = "splitright";
autoIndent = "autoindent"; autoIndent = "autoindent";
wordWrap = "wrap"; wordWrap = "wrap";
showSignColumn = "signcolumn";
}; };
in { in {
imports = concatLists [ imports = concatLists [
@ -35,23 +36,28 @@ in {
vim.autopairs.enable has been removed in favor of per-plugin modules. vim.autopairs.enable has been removed in favor of per-plugin modules.
You can enable nvim-autopairs with vim.autopairs.nvim-autopairs.enable instead. You can enable nvim-autopairs with vim.autopairs.nvim-autopairs.enable instead.
'') '')
(mkRemovedOptionModule ["vim" "autopairs" "type"] '' (mkRemovedOptionModule ["vim" "autopairs" "type"] ''
vim.autopairs.type has been removed in favor of per-plugin modules. vim.autopairs.type has been removed in favor of per-plugin modules.
You can enable nvim-autopairs with vim.autopairs.nvim-autopairs.enable instead. You can enable nvim-autopairs with vim.autopairs.nvim-autopairs.enable instead.
'') '')
(mkRemovedOptionModule ["vim" "autocomplete" "enable"] '' (mkRemovedOptionModule ["vim" "autocomplete" "enable"] ''
vim.autocomplete.enable has been removed in favor of per-plugin modules. vim.autocomplete.enable has been removed in favor of per-plugin modules.
You can enable nvim-cmp with vim.autocomplete.nvim-cmp.enable instead. You can enable nvim-cmp with vim.autocomplete.nvim-cmp.enable instead.
'') '')
(mkRemovedOptionModule ["vim" "autocomplete" "type"] '' (mkRemovedOptionModule ["vim" "autocomplete" "type"] ''
vim.autocomplete.type has been removed in favor of per-plugin modules. vim.autocomplete.type has been removed in favor of per-plugin modules.
You can enable nvim-cmp with vim.autocomplete.nvim-cmp.enable instead. You can enable nvim-cmp with vim.autocomplete.nvim-cmp.enable instead.
'') '')
(mkRemovedOptionModule ["vim" "autocomplete" "sources"] '' (mkRemovedOptionModule ["vim" "autocomplete" "sources"] ''
vim.autocomplete.sources has been removed in favor of per-plugin modules. vim.autocomplete.sources has been removed in favor of per-plugin modules.
You can add nvim-cmp sources with vim.autocomplete.nvim-cmp.sources You can add nvim-cmp sources with vim.autocomplete.nvim-cmp.sources
instead. instead.
'') '')
(mkRemovedOptionModule ["vim" "snippets" "vsnip" "enable"] '' (mkRemovedOptionModule ["vim" "snippets" "vsnip" "enable"] ''
vim.snippets.vsnip.enable has been removed in favor of the more modern luasnip. vim.snippets.vsnip.enable has been removed in favor of the more modern luasnip.
'') '')

View file

@ -58,12 +58,6 @@ in {
description = "Prevent swapfile and backupfile from being created"; description = "Prevent swapfile and backupfile from being created";
}; };
showSignColumn = mkOption {
type = bool;
default = true;
description = "Show the sign column";
};
bell = mkOption { bell = mkOption {
type = enum ["none" "visual" "on"]; type = enum ["none" "visual" "on"];
default = "none"; default = "none";
@ -109,74 +103,70 @@ in {
# Options that are more difficult to set through 'vim.options'. Fear not, though # Options that are more difficult to set through 'vim.options'. Fear not, though
# as the Lua DAG is still as powerful as it could be. # as the Lua DAG is still as powerful as it could be.
luaConfigRC.basic = entryAfter ["globalsScript"] '' luaConfigRC.basic = entryAfter ["globalsScript"] ''
-- Settings that are set for everything -- Settings that are set for everything
vim.opt.shortmess:append("c") vim.opt.shortmess:append("c")
${optionalString cfg.undoFile.enable '' ${optionalString cfg.undoFile.enable ''
vim.o.undofile = true vim.o.undofile = true
vim.o.undodir = ${toLuaObject cfg.undoFile.path} vim.o.undodir = ${toLuaObject cfg.undoFile.path}
''} ''}
${optionalString cfg.showSignColumn ''
vim.o.signcolumn = "yes"
''}
${optionalString cfg.preventJunkFiles '' ${optionalString cfg.preventJunkFiles ''
vim.o.swapfile = false vim.o.swapfile = false
vim.o.backup = false vim.o.backup = false
vim.o.writebackup = false vim.o.writebackup = false
''} ''}
${optionalString (cfg.bell == "none") '' ${optionalString (cfg.bell == "none") ''
vim.o.errorbells = false vim.o.errorbells = false
vim.o.visualbell = false vim.o.visualbell = false
''} ''}
${optionalString (cfg.bell == "on") '' ${optionalString (cfg.bell == "on") ''
vim.o.visualbell = false vim.o.visualbell = false
''} ''}
${optionalString (cfg.bell == "visual") '' ${optionalString (cfg.bell == "visual") ''
vim.o.errorbells = false vim.o.errorbells = false
''} ''}
${optionalString (cfg.lineNumberMode == "relative") '' ${optionalString (cfg.lineNumberMode == "relative") ''
vim.o.relativenumber = true vim.o.relativenumber = true
''} ''}
${optionalString (cfg.lineNumberMode == "number") '' ${optionalString (cfg.lineNumberMode == "number") ''
vim.o.number = true vim.o.number = true
''} ''}
${optionalString (cfg.lineNumberMode == "relNumber") '' ${optionalString (cfg.lineNumberMode == "relNumber") ''
vim.o.number = true vim.o.number = true
vim.o.relativenumber = true vim.o.relativenumber = true
''} ''}
${optionalString cfg.useSystemClipboard '' ${optionalString cfg.useSystemClipboard ''
vim.opt.clipboard:append("unnamedplus") vim.opt.clipboard:append("unnamedplus")
''} ''}
${optionalString cfg.syntaxHighlighting '' ${optionalString cfg.syntaxHighlighting ''
vim.cmd("syntax on") vim.cmd("syntax on")
''} ''}
${optionalString cfg.hideSearchHighlight '' ${optionalString cfg.hideSearchHighlight ''
vim.o.hlsearch = false vim.o.hlsearch = false
vim.o.incsearch = true vim.o.incsearch = true
''} ''}
${optionalString (cfg.searchCase == "ignore") '' ${optionalString (cfg.searchCase == "ignore") ''
vim.o.smartcase = false vim.o.smartcase = false
vim.o.ignorecase = true vim.o.ignorecase = true
''} ''}
${optionalString (cfg.searchCase == "smart") '' ${optionalString (cfg.searchCase == "smart") ''
vim.o.smartcase = true vim.o.smartcase = true
vim.o.ignorecase = true vim.o.ignorecase = true
''} ''}
${optionalString (cfg.searchCase == "sensitive") '' ${optionalString (cfg.searchCase == "sensitive") ''
vim.o.smartcase = false vim.o.smartcase = false
vim.o.ignorecase = false vim.o.ignorecase = false
''} ''}

View file

@ -6,6 +6,7 @@
inherit (lib.options) mkOption mkEnableOption literalMD literalExpression; inherit (lib.options) mkOption mkEnableOption literalMD literalExpression;
inherit (lib.strings) optionalString; inherit (lib.strings) optionalString;
inherit (lib.types) str bool int enum attrsOf lines listOf either path submodule anything; inherit (lib.types) str bool int enum attrsOf lines listOf either path submodule anything;
inherit (lib.nvim.languages) toVimBool;
inherit (lib.nvim.types) dagOf; inherit (lib.nvim.types) dagOf;
inherit (lib.nvim.lua) listToLuaTable; inherit (lib.nvim.lua) listToLuaTable;
@ -227,6 +228,13 @@ in {
default = true; default = true;
description = "Enable word wrapping."; description = "Enable word wrapping.";
}; };
signcolumn = mkOption {
type = bool;
default = true;
apply = x: toVimBool x; # convert to a yes/no str
description = "Show the sign column";
};
}; };
}; };