mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-21 16:39:00 +02:00
plugins/emmet: switch to settings option
This commit is contained in:
parent
d8432ef9c1
commit
d149f46b00
2 changed files with 94 additions and 39 deletions
|
@ -12,23 +12,76 @@ with helpers.vim-plugin;
|
||||||
originalName = "emmet-vim";
|
originalName = "emmet-vim";
|
||||||
defaultPackage = pkgs.vimPlugins.emmet-vim;
|
defaultPackage = pkgs.vimPlugins.emmet-vim;
|
||||||
globalPrefix = "user_emmet_";
|
globalPrefix = "user_emmet_";
|
||||||
|
|
||||||
|
# TODO introduced 2024-03-01: remove 2024-05-01
|
||||||
deprecateExtraConfig = true;
|
deprecateExtraConfig = true;
|
||||||
|
optionsRenamedToSettings = [
|
||||||
|
"mode"
|
||||||
|
];
|
||||||
|
imports = [
|
||||||
|
(
|
||||||
|
mkRenamedOptionModule
|
||||||
|
["plugins" "emmet" "leader"]
|
||||||
|
["plugins" "emmet" "settings" "leader_key"]
|
||||||
|
)
|
||||||
|
];
|
||||||
|
|
||||||
options = {
|
settingsOptions = {
|
||||||
mode = mkDefaultOpt {
|
mode = helpers.defaultNullOpts.mkStr "a" ''
|
||||||
type = types.str;
|
Choose modes, in which Emmet mappings will be created.
|
||||||
description = "Mode where emmet will enable";
|
Default value: 'a' - all modes.
|
||||||
|
- 'n' - normal mode.
|
||||||
|
- 'i' - insert mode.
|
||||||
|
- 'v' - visual mode.
|
||||||
|
|
||||||
|
Examples:
|
||||||
|
- create Emmet mappings only for normal mode: `n`
|
||||||
|
- create Emmet mappings for insert, normal and visual modes: `inv`
|
||||||
|
- create Emmet mappings for all modes: `a`
|
||||||
|
'';
|
||||||
|
|
||||||
|
leader_key = helpers.defaultNullOpts.mkStr "<C-y>" ''
|
||||||
|
Leading keys to run Emmet functions.
|
||||||
|
'';
|
||||||
|
|
||||||
|
settings = helpers.mkNullOrOption (with types; attrsOf anything) ''
|
||||||
|
Emmet settings.
|
||||||
|
|
||||||
|
Defaults: see https://github.com/mattn/emmet-vim/blob/master/autoload/emmet.vim
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
leader = mkDefaultOpt {
|
settingsExample = {
|
||||||
type = types.str;
|
mode = "inv";
|
||||||
global = "leader_key";
|
leader = "<C-Z>";
|
||||||
description = "Set leader key";
|
settings = {
|
||||||
|
variables = {
|
||||||
|
lang = "ja";
|
||||||
|
};
|
||||||
|
html = {
|
||||||
|
default_attributes = {
|
||||||
|
option = {value = null;};
|
||||||
|
textarea = {
|
||||||
|
id = null;
|
||||||
|
name = null;
|
||||||
|
cols = 10;
|
||||||
|
rows = 10;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
snippets = {
|
||||||
|
"html:5" = ''
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang=\"$\{lang}\">
|
||||||
|
<head>
|
||||||
|
\t<meta charset=\"$\{charset}\">
|
||||||
|
\t<title></title>
|
||||||
|
\t<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">
|
||||||
|
</head>
|
||||||
|
<body>\n\t$\{child}|\n</body>
|
||||||
|
</html>
|
||||||
|
'';
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
settings = mkDefaultOpt {
|
|
||||||
type = with types; attrsOf anything;
|
|
||||||
description = "Emmet settings";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
plugins.emmet = {
|
plugins.emmet = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
|
settings = {
|
||||||
mode = "inv";
|
mode = "inv";
|
||||||
leader = "<C-Z>";
|
leader = "<C-Z>";
|
||||||
settings = {
|
settings = {
|
||||||
|
@ -40,4 +41,5 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue