This repository has been archived by the owner on Oct 24, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathspecs.norg
60 lines (59 loc) · 2.16 KB
/
specs.norg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
@document.meta
title: specs
description: Pnp config files specification
authors: shift
categories:
created: 2022-02-25
version: 0.0.11
@end
* User config
User's plugnplay (pnp) config is defined inside neovim config folder, in `cfg.jsonc` file.
@code jsonc
{
"plugnplay": {}, // pnp config
"plugins": {} // list of plugins and their options
}
@end
** cfg.plugins
`plugins` is a table of `K: V` pairs. Supports following formats:
> Simplified
@code jsonc
{
"plugin_name": "plugin_location"
}
@end
> Verbose
@code jsonc
{
"plugin_name": {
"location": "plugin_location",
// plugin config options
"config": "lua_string", // invalid if `config_file` exists
"config_file": "lua_module", // invalid if `config` exists
// plugin load options
"load": {
"with": "installed_plugin_name", // load when specified plugin is loaded
"command": "Cmd",
// or load when specified Ex command is executed
"command": "Cmd{Part1, Part2}",
"event": "VimEvent" // load when specified VimEvent is happening
},
"version": "semver version", // install specific plugin version
"branch": "remote branch", // install specific branch
"commit": "commit hash", // install using specific commit hash
"pin": false // whether to restrict pnp from updating this plugin
}
}
@end
In previous examples we could see `plugin_name` key and `plugin_location` value.
Here, `plugin name` is how we would like to refer in our neovim config.
`plugin_location` is a bit more verbose and will be described in the section below.
*** plugin_location
This value supports following formats:
- `gh:owner/name` - GitHub repository link
- `git:link` - Link to remote git repository
- `ext:link` - Link to an archive (replace `ext` with archive extension)
- `loc:path` - Path to a local plugin
** cfg.plugnplay
This section contains pnp's config
#comment TODO