Skip to content

Commit 93475e4

Browse files
authored
feat: author information in description (#34)
1 parent dd08792 commit 93475e4

File tree

4 files changed

+44
-6
lines changed

4 files changed

+44
-6
lines changed

examples/packspec.1.json

+5-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,11 @@
88
"summary" : "Quickstart configurations for the Nvim-lsp client",
99
"detailed" : "lspconfig is a set of configurations for language servers for use with Neovim's built-in language server client. Lspconfig handles configuring, launching, and attaching language servers",
1010
"homepage" : "https://github.com/neovim/nvim-lspconfig/",
11-
"license" : "Apache-2.0"
11+
"license" : "Apache-2.0",
12+
"author": {
13+
"name": "Neovim team",
14+
"email": "[email protected]"
15+
}
1216
},
1317
"dependencies" : {
1418
"neovim" : {

examples/packspec.1.lua

+4
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ description = {
99
]],
1010
homepage = "git://github.com/neovim/nvim-lspconfig/",
1111
license = "Apache-2.0",
12+
author = {
13+
name = "Neovim team",
14+
email = "[email protected]",
15+
}
1216
}
1317
dependencies = {
1418
neovim = {

lua/packspec/schema.lua

+15
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,21 @@ return {
112112
]],
113113
type = "string"
114114
},
115+
author = {
116+
description = "Author of the package",
117+
type = 'object',
118+
additionalProperties = false,
119+
properties = {
120+
name = {
121+
description = 'Author name',
122+
type = "string"
123+
},
124+
email = {
125+
description = 'Author email',
126+
type = "string"
127+
}
128+
}
129+
},
115130
homepage = {
116131
description = dedent [[
117132
Homepage of the package. In most cases this will be the GitHub URL.

schema/packspec_schema.json

+20-5
Original file line numberDiff line numberDiff line change
@@ -62,18 +62,33 @@
6262
},
6363
"description": {
6464
"properties": {
65+
"summary": {
66+
"description": "Short description of the package, typically less than 100 character\nlong.",
67+
"type": "string"
68+
},
6569
"homepage": {
6670
"description": "Homepage of the package. In most cases this will be the GitHub URL.",
6771
"type": "string"
6872
},
73+
"author": {
74+
"properties": {
75+
"name": {
76+
"description": "Author name",
77+
"type": "string"
78+
},
79+
"email": {
80+
"description": "Author email",
81+
"type": "string"
82+
}
83+
},
84+
"type": "object",
85+
"description": "Author of the package",
86+
"additionalProperties": false
87+
},
6988
"license": {
7089
"description": "This is [SPDX](https:\/\/spdx.org\/licenses\/) license identifier. Dual\nlicensing is indicated via joining the relevant licenses via `\/`.",
7190
"type": "string"
7291
},
73-
"summary": {
74-
"description": "Short description of the package, typically less than 100 character\nlong.",
75-
"type": "string"
76-
},
7792
"detailed": {
7893
"description": "Long-form description of the package, this should convey the\npackage's principal functionality to the user without being as\ndetailed as the package readme.",
7994
"type": "string"
@@ -99,4 +114,4 @@
99114
},
100115
"additionalProperties": false,
101116
"description": "A package specification for Neovim"
102-
}
117+
}

0 commit comments

Comments
 (0)