mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-20 16:15:43 +02:00
360 lines
6.4 KiB
Nix
360 lines
6.4 KiB
Nix
{ lib, ... }:
|
|
with lib;
|
|
let
|
|
oldPluginBasePath = [
|
|
"plugins"
|
|
"nvim-cmp"
|
|
];
|
|
newPluginBasePath = [
|
|
"plugins"
|
|
"cmp"
|
|
];
|
|
settingsPath = newPluginBasePath ++ [ "settings" ];
|
|
|
|
renamedOptions = [
|
|
{
|
|
old = [
|
|
"performance"
|
|
"debounce"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"performance"
|
|
"throttle"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"performance"
|
|
"fetchingTimeout"
|
|
];
|
|
new = [
|
|
"performance"
|
|
"fetching_timeout"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"performance"
|
|
"asyncBudget"
|
|
];
|
|
new = [
|
|
"performance"
|
|
"async_budget"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"performance"
|
|
"maxViewEntries"
|
|
];
|
|
new = [
|
|
"performance"
|
|
"max_view_entries"
|
|
];
|
|
}
|
|
{ old = [ "mapping" ]; }
|
|
{
|
|
old = [
|
|
"completion"
|
|
"keywordLength"
|
|
];
|
|
new = [
|
|
"completion"
|
|
"keyword_length"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"completion"
|
|
"keywordPattern"
|
|
];
|
|
new = [
|
|
"completion"
|
|
"keyword_pattern"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"completion"
|
|
"autocomplete"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"completion"
|
|
"completeopt"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"confirmation"
|
|
"getCommitCharacters"
|
|
];
|
|
new = [
|
|
"confirmation"
|
|
"get_commit_characters"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"formatting"
|
|
"expandableIndicator"
|
|
];
|
|
new = [
|
|
"formatting"
|
|
"expandable_indicator"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"formatting"
|
|
"fields"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"formatting"
|
|
"format"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"matching"
|
|
"disallowFuzzyMatching"
|
|
];
|
|
new = [
|
|
"matching"
|
|
"disallow_fuzzy_matching"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"matching"
|
|
"disallowFullfuzzyMatching"
|
|
];
|
|
new = [
|
|
"matching"
|
|
"disallow_fullfuzzy_matching"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"matching"
|
|
"disallowPartialFuzzyMatching"
|
|
];
|
|
new = [
|
|
"matching"
|
|
"disallow_partial_fuzzy_matching"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"matching"
|
|
"disallowPartialMatching"
|
|
];
|
|
new = [
|
|
"matching"
|
|
"disallow_partial_matching"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"matching"
|
|
"disallowPrefixUnmatching"
|
|
];
|
|
new = [
|
|
"matching"
|
|
"disallow_prefix_unmatching"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"sorting"
|
|
"priorityWeight"
|
|
];
|
|
new = [
|
|
"sorting"
|
|
"priority_weight"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"view"
|
|
"entries"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"view"
|
|
"docs"
|
|
"autoOpen"
|
|
];
|
|
new = [
|
|
"view"
|
|
"docs"
|
|
"auto_open"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"completion"
|
|
"border"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"completion"
|
|
"winhighlight"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"completion"
|
|
"zindex"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"completion"
|
|
"scrolloff"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"completion"
|
|
"colOffset"
|
|
];
|
|
new = [
|
|
"window"
|
|
"completion"
|
|
"col_offset"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"completion"
|
|
"sidePadding"
|
|
];
|
|
new = [
|
|
"window"
|
|
"completion"
|
|
"side_padding"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"completion"
|
|
"scrollbar"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"documentation"
|
|
"border"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"documentation"
|
|
"winhighlight"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"documentation"
|
|
"zindex"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"documentation"
|
|
"maxWidth"
|
|
];
|
|
new = [
|
|
"window"
|
|
"documentation"
|
|
"max_width"
|
|
];
|
|
}
|
|
{
|
|
old = [
|
|
"window"
|
|
"documentation"
|
|
"maxHeight"
|
|
];
|
|
new = [
|
|
"window"
|
|
"documentation"
|
|
"max_height"
|
|
];
|
|
}
|
|
{ old = [ "experimental" ]; }
|
|
];
|
|
|
|
renameWarnings = map (
|
|
rename:
|
|
mkRenamedOptionModule (oldPluginBasePath ++ rename.old) (settingsPath ++ (rename.new or rename.old))
|
|
) renamedOptions;
|
|
in
|
|
{
|
|
imports = renameWarnings ++ [
|
|
(mkRenamedOptionModule (oldPluginBasePath ++ [ "enable" ]) (newPluginBasePath ++ [ "enable" ]))
|
|
(mkRenamedOptionModule (oldPluginBasePath ++ [ "autoEnableSources" ]) (
|
|
newPluginBasePath ++ [ "autoEnableSources" ]
|
|
))
|
|
(mkRemovedOptionModule (oldPluginBasePath ++ [ "preselect" ]) ''
|
|
Use `plugins.cmp.settings.preselect` option. But watch out, you now have to explicitly write `cmp.PreselectMode.<mode>`.
|
|
See the option documentation for more details.
|
|
'')
|
|
(mkRemovedOptionModule (oldPluginBasePath ++ [ "mappingPresets" ])
|
|
"If you want to have a complex mapping logic, express it in raw lua within the `plugins.cmp.settings.mapping` option."
|
|
)
|
|
(mkRemovedOptionModule
|
|
(
|
|
oldPluginBasePath
|
|
++ [
|
|
"snippet"
|
|
"expand"
|
|
]
|
|
)
|
|
''
|
|
Use `plugins.cmp.settings.snippet.expand` option. But watch out, you can no longer put only the name of the snippet engine.
|
|
If you use `luasnip` for instance, set:
|
|
```
|
|
plugins.cmp.settings.snippet.expand = "function(args) require('luasnip').lsp_expand(args.body) end";
|
|
```
|
|
''
|
|
)
|
|
(mkRemovedOptionModule
|
|
(
|
|
oldPluginBasePath
|
|
++ [
|
|
"sorting"
|
|
"comparators"
|
|
]
|
|
)
|
|
''
|
|
Use `plugins.cmp.settings.sorting.comparators` option. But watch out, you can no longer put only the name of the comparators.
|
|
See the option documentation for more details.
|
|
''
|
|
)
|
|
(mkRemovedOptionModule (oldPluginBasePath ++ [ "sources" ]) ''
|
|
Use `plugins.cmp.settings.sources` option. But watch out, you can no longer provide a list of lists of sources.
|
|
For this type of use, directly write lua.
|
|
See the option documentation for more details.
|
|
'')
|
|
];
|
|
}
|