generate files

This commit is contained in:
Alex Dima 2019-12-16 22:17:13 +01:00
parent d6706a2e60
commit 1fb6a3ccbb
No known key found for this signature in database
GPG key ID: 6E58D7B045760DA0
3 changed files with 257 additions and 40 deletions

View file

@ -132,13 +132,6 @@ monaco.editor.create(document.getElementById("container"), {
'diffEditor.removedTextBackground' // Background color for text that got removed.
'diffEditor.insertedTextBorder' // Outline color for the text that got inserted.
'diffEditor.removedTextBorder' // Outline color for text that got removed.
'merge.currentHeaderBackground' // Current header background in inline merge-conflicts.
'merge.currentContentBackground' // Current content background in inline merge-conflicts.
'merge.incomingHeaderBackground' // Incoming header background in inline merge-conflicts.
'merge.incomingContentBackground' // Incoming content background in inline merge-conflicts.
'merge.commonHeaderBackground' // Common ancestor header background in inline merge-conflicts.
'merge.commonContentBackground' // Common ancester content background in inline merge-conflicts.
'merge.border' // Border color on headers and the splitter in inline merge-conflicts.
'editorOverviewRuler.currentContentForeground' // Current overview ruler foreground for inline merge-conflicts.
'editorOverviewRuler.incomingContentForeground' // Incoming overview ruler foreground for inline merge-conflicts.
'editorOverviewRuler.commonContentForeground' // Common ancestor overview ruler foreground for inline merge-conflicts.
@ -191,6 +184,7 @@ Object.keys(colors).forEach(function(key) {
})
*/
/*----------------------------------------SAMPLE CSS END*/
});
</script>

View file

@ -36,7 +36,7 @@ THIS IS A GENERATED FILE VIA gulp generate-test-samples
loadEditor(function() {
/*----------------------------------------SAMPLE JS START*/
function createDependencyProposals() {
function createDependencyProposals(range) {
// returning a static list of proposals, not even looking at the prefix (filtering is done by the Monaco editor),
// here you could do a server side lookup
return [
@ -44,26 +44,30 @@ function createDependencyProposals() {
label: '"lodash"',
kind: monaco.languages.CompletionItemKind.Function,
documentation: "The Lodash library exported as Node.js modules.",
insertText: '"lodash": "*"'
insertText: '"lodash": "*"',
range: range
},
{
label: '"express"',
kind: monaco.languages.CompletionItemKind.Function,
documentation: "Fast, unopinionated, minimalist web framework",
insertText: '"express": "*"'
insertText: '"express": "*"',
range: range
},
{
label: '"mkdirp"',
kind: monaco.languages.CompletionItemKind.Function,
documentation: "Recursively mkdir, like <code>mkdir -p</code>",
insertText: '"mkdirp": "*"'
insertText: '"mkdirp": "*"',
range: range
},
{
label: '"my-third-party-library"',
kind: monaco.languages.CompletionItemKind.Function,
documentation: "Describe your library here",
insertText: '"${1:my-third-party-library}": "${2:1.2.3}"',
insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet
insertTextRules: monaco.languages.CompletionItemInsertTextRule.InsertAsSnippet,
range: range
}
];
}
@ -74,9 +78,18 @@ monaco.languages.registerCompletionItemProvider('json', {
// find out if we are completing a property in the 'dependencies' object.
var textUntilPosition = model.getValueInRange({startLineNumber: 1, startColumn: 1, endLineNumber: position.lineNumber, endColumn: position.column});
var match = textUntilPosition.match(/"dependencies"\s*:\s*\{\s*("[^"]*"\s*:\s*"[^"]*"\s*,\s*)*([^"]*)?$/);
var suggestions = match ? createDependencyProposals() : [];
if (!match) {
return { suggestions: [] };
}
var word = model.getWordUntilPosition(position);
var range = {
startLineNumber: position.lineNumber,
endLineNumber: position.lineNumber,
startColumn: word.startColumn,
endColumn: word.endColumn
};
return {
suggestions: suggestions
suggestions: createDependencyProposals(range)
};
}
});
@ -86,6 +99,7 @@ monaco.editor.create(document.getElementById("container"), {
language: "json"
});
/*----------------------------------------SAMPLE CSS END*/
});
</script>

View file

@ -47,7 +47,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'File',
kind: 0
kind: 0,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -57,7 +65,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Module',
kind: 1
kind: 1,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -67,7 +83,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Namespace',
kind: 2
kind: 2,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -77,7 +101,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Package',
kind: 3
kind: 3,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -87,7 +119,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Class',
kind: 4
kind: 4,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -97,7 +137,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Method',
kind: 5
kind: 5,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -107,7 +155,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Property',
kind: 6
kind: 6,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -117,7 +173,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Field',
kind: 7
kind: 7,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -127,7 +191,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Constructor',
kind: 8
kind: 8,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -137,7 +209,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Enum',
kind: 9
kind: 9,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -147,7 +227,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Interface',
kind: 10
kind: 10,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -157,7 +245,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Function',
kind: 11
kind: 11,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -167,7 +263,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Variable',
kind: 12
kind: 12,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -177,7 +281,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Constant',
kind: 13
kind: 13,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -187,7 +299,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'String',
kind: 14
kind: 14,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -197,7 +317,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Number',
kind: 15
kind: 15,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -207,7 +335,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Boolean',
kind: 16
kind: 16,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -217,7 +353,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Array',
kind: 17
kind: 17,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -227,7 +371,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Object',
kind: 18
kind: 18,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -237,7 +389,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Key',
kind: 19
kind: 19,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -247,7 +407,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Null',
kind: 20
kind: 20,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -257,7 +425,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'EnumMember',
kind: 21
kind: 21,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -267,7 +443,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Struct',
kind: 22
kind: 22,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -277,7 +461,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Event',
kind: 23
kind: 23,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -287,7 +479,15 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'Operator',
kind: 24
kind: 24,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
{
range: {
@ -297,12 +497,21 @@ monaco.languages.registerDocumentSymbolProvider('json', {
endColumn: 1
},
name: 'TypeParameter',
kind: 25
kind: 25,
detail: "",
tags: [],
selectionRange: {
startLineNumber: 1,
startColumn: 1,
endLineNumber: 2,
endColumn: 1
}
},
];
}
});
// press Ctrl+Shift+O to show the symbols in the editor
monaco.editor.create(document.getElementById("container"), {
value: "{\n\t\"dependencies\": {\n\t\t\n\t}\n}\n",
language: "json"