1 | {
|
2 | "$schema": "http://json-schema.org/draft-07/schema",
|
3 | "title": "JupyterLab Plugin Settings/Preferences Schema",
|
4 | "description": "JupyterLab plugin settings/preferences schema",
|
5 | "version": "1.0.0",
|
6 | "type": "object",
|
7 | "additionalProperties": true,
|
8 | "properties": {
|
9 | "jupyter.lab.internationalization": {
|
10 | "type": "object",
|
11 | "properties": {
|
12 | "selectors": {
|
13 | "type": "array",
|
14 | "items": {
|
15 | "type": "string",
|
16 | "minLength": 1
|
17 | }
|
18 | },
|
19 | "domain": {
|
20 | "type": "string",
|
21 | "minLength": 1
|
22 | }
|
23 | }
|
24 | },
|
25 | "jupyter.lab.menus": {
|
26 | "type": "object",
|
27 | "properties": {
|
28 | "main": {
|
29 | "title": "Main menu entries",
|
30 | "description": "List of menu items to add to the main menubar.",
|
31 | "items": {
|
32 | "$ref": "#/definitions/menu"
|
33 | },
|
34 | "type": "array",
|
35 | "default": []
|
36 | },
|
37 | "context": {
|
38 | "title": "The application context menu.",
|
39 | "description": "List of context menu items.",
|
40 | "items": {
|
41 | "allOf": [
|
42 | { "$ref": "#/definitions/menuItem" },
|
43 | {
|
44 | "properties": {
|
45 | "selector": {
|
46 | "description": "The CSS selector for the context menu item.",
|
47 | "type": "string"
|
48 | }
|
49 | }
|
50 | }
|
51 | ]
|
52 | },
|
53 | "type": "array",
|
54 | "default": []
|
55 | }
|
56 | },
|
57 | "additionalProperties": false
|
58 | },
|
59 | "jupyter.lab.setting-deprecated": {
|
60 | "type": "boolean",
|
61 | "default": false
|
62 | },
|
63 | "jupyter.lab.setting-icon": {
|
64 | "type": "string",
|
65 | "default": ""
|
66 | },
|
67 | "jupyter.lab.setting-icon-class": {
|
68 | "type": "string",
|
69 | "default": ""
|
70 | },
|
71 | "jupyter.lab.setting-icon-label": {
|
72 | "type": "string",
|
73 | "default": "Plugin"
|
74 | },
|
75 | "jupyter.lab.shortcuts": {
|
76 | "items": {
|
77 | "$ref": "#/definitions/shortcut"
|
78 | },
|
79 | "type": "array",
|
80 | "default": []
|
81 | },
|
82 | "jupyter.lab.toolbars": {
|
83 | "properties": {
|
84 | "^\\w[\\w-\\.]*$": {
|
85 | "items": {
|
86 | "$ref": "#/definitions/toolbarItem"
|
87 | },
|
88 | "type": "array",
|
89 | "default": []
|
90 | }
|
91 | },
|
92 | "type": "object",
|
93 | "default": {}
|
94 | },
|
95 | "jupyter.lab.transform": {
|
96 | "type": "boolean",
|
97 | "default": false
|
98 | }
|
99 | },
|
100 | "definitions": {
|
101 | "menu": {
|
102 | "properties": {
|
103 | "disabled": {
|
104 | "description": "Whether the menu is disabled or not",
|
105 | "type": "boolean",
|
106 | "default": false
|
107 | },
|
108 | "icon": {
|
109 | "description": "Menu icon id",
|
110 | "type": "string"
|
111 | },
|
112 | "id": {
|
113 | "description": "Menu unique id",
|
114 | "oneOf": [
|
115 | {
|
116 | "type": "string",
|
117 | "enum": [
|
118 | "jp-menu-file",
|
119 | "jp-menu-file-new",
|
120 | "jp-menu-edit",
|
121 | "jp-menu-help",
|
122 | "jp-menu-kernel",
|
123 | "jp-menu-run",
|
124 | "jp-menu-settings",
|
125 | "jp-menu-view",
|
126 | "jp-menu-tabs"
|
127 | ]
|
128 | },
|
129 | { "type": "string", "pattern": "[a-z][a-z0-9\\-_]+" }
|
130 | ]
|
131 | },
|
132 | "items": {
|
133 | "description": "Menu items",
|
134 | "type": "array",
|
135 | "items": {
|
136 | "$ref": "#/definitions/menuItem"
|
137 | }
|
138 | },
|
139 | "label": {
|
140 | "description": "Menu label",
|
141 | "type": "string"
|
142 | },
|
143 | "mnemonic": {
|
144 | "description": "Mnemonic index for the label",
|
145 | "type": "number",
|
146 | "minimum": -1,
|
147 | "default": -1
|
148 | },
|
149 | "rank": {
|
150 | "description": "Menu rank",
|
151 | "type": "number",
|
152 | "minimum": 0
|
153 | }
|
154 | },
|
155 | "required": ["id"],
|
156 | "type": "object"
|
157 | },
|
158 | "menuItem": {
|
159 | "properties": {
|
160 | "args": {
|
161 | "description": "Command arguments",
|
162 | "type": "object"
|
163 | },
|
164 | "command": {
|
165 | "description": "Command id",
|
166 | "type": "string"
|
167 | },
|
168 | "disabled": {
|
169 | "description": "Whether the item is disabled or not",
|
170 | "type": "boolean",
|
171 | "default": false
|
172 | },
|
173 | "type": {
|
174 | "description": "Item type",
|
175 | "type": "string",
|
176 | "enum": ["command", "submenu", "separator"],
|
177 | "default": "command"
|
178 | },
|
179 | "rank": {
|
180 | "description": "Item rank",
|
181 | "type": "number",
|
182 | "minimum": 0
|
183 | },
|
184 | "submenu": {
|
185 | "oneOf": [
|
186 | {
|
187 | "$ref": "#/definitions/menu"
|
188 | },
|
189 | {
|
190 | "type": "null"
|
191 | }
|
192 | ]
|
193 | }
|
194 | },
|
195 | "type": "object"
|
196 | },
|
197 | "shortcut": {
|
198 | "properties": {
|
199 | "args": {
|
200 | "title": "The arguments for the command",
|
201 | "type": "object"
|
202 | },
|
203 | "command": {
|
204 | "title": "The command id",
|
205 | "description": "The command executed when the binding is matched.",
|
206 | "type": "string"
|
207 | },
|
208 | "disabled": {
|
209 | "description": "Whether this shortcut is disabled or not.",
|
210 | "type": "boolean",
|
211 | "default": false
|
212 | },
|
213 | "keys": {
|
214 | "title": "The key sequence for the binding",
|
215 | "description": "The key shortcut like `Accel A` or the sequence of shortcuts to press like [`Accel A`, `B`]",
|
216 | "items": {
|
217 | "type": "string"
|
218 | },
|
219 | "type": "array"
|
220 | },
|
221 | "macKeys": {
|
222 | "title": "The key sequence for the binding on macOS",
|
223 | "description": "The key shortcut like `Cmd A` or the sequence of shortcuts to press like [`Cmd A`, `B`]",
|
224 | "items": {
|
225 | "type": "string"
|
226 | },
|
227 | "type": "array"
|
228 | },
|
229 | "winKeys": {
|
230 | "title": "The key sequence for the binding on Windows",
|
231 | "description": "The key shortcut like `Ctrl A` or the sequence of shortcuts to press like [`Ctrl A`, `B`]",
|
232 | "items": {
|
233 | "type": "string"
|
234 | },
|
235 | "type": "array"
|
236 | },
|
237 | "linuxKeys": {
|
238 | "title": "The key sequence for the binding on Linux",
|
239 | "description": "The key shortcut like `Ctrl A` or the sequence of shortcuts to press like [`Ctrl A`, `B`]",
|
240 | "items": {
|
241 | "type": "string"
|
242 | },
|
243 | "type": "array"
|
244 | },
|
245 | "selector": {
|
246 | "title": "CSS selector",
|
247 | "type": "string"
|
248 | }
|
249 | },
|
250 | "required": ["command", "keys", "selector"],
|
251 | "type": "object"
|
252 | },
|
253 | "toolbarItem": {
|
254 | "properties": {
|
255 | "name": {
|
256 | "title": "Unique name",
|
257 | "type": "string"
|
258 | },
|
259 | "args": {
|
260 | "title": "Command arguments",
|
261 | "type": "object"
|
262 | },
|
263 | "command": {
|
264 | "title": "Command id",
|
265 | "type": "string",
|
266 | "default": ""
|
267 | },
|
268 | "disabled": {
|
269 | "title": "Whether the item is ignored or not",
|
270 | "type": "boolean",
|
271 | "default": false
|
272 | },
|
273 | "icon": {
|
274 | "title": "Item icon id",
|
275 | "description": "If defined, it will override the command icon",
|
276 | "type": "string"
|
277 | },
|
278 | "label": {
|
279 | "title": "Item label",
|
280 | "description": "If defined, it will override the command label",
|
281 | "type": "string"
|
282 | },
|
283 | "type": {
|
284 | "title": "Item type",
|
285 | "type": "string",
|
286 | "enum": ["command", "spacer"]
|
287 | },
|
288 | "rank": {
|
289 | "title": "Item rank",
|
290 | "type": "number",
|
291 | "minimum": 0,
|
292 | "default": 50
|
293 | }
|
294 | },
|
295 | "required": ["name"],
|
296 | "additionalProperties": false,
|
297 | "type": "object"
|
298 | }
|
299 | }
|
300 | }
|