From f032b58597eb7dd40e3fd3d528170101e46e64b7 Mon Sep 17 00:00:00 2001 From: Martin Aeschlimann Date: Fri, 27 Jan 2017 16:06:02 +0100 Subject: [PATCH] Adopt SnippetString, publish 1.3.1 --- package.json | 14 +++++++------- src/languageFeatures.ts | 19 ++++++++++++------- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/package.json b/package.json index 5887a897..893d6150 100644 --- a/package.json +++ b/package.json @@ -1,13 +1,13 @@ { "name": "monaco-css", - "version": "1.3.0", + "version": "1.3.1", "description": "CSS, LESS and SCSS plugin for the Monaco Editor", "scripts": { "compile": "gulp compile", "watch": "gulp watch", "prepublish": "gulp release", - "install-service-next": "npm install vscode-css-languageservice@next -f -S", - "install-service-local": "npm install ../vscode-css-languageservice -f -S" + "install-service-next": "npm install vscode-css-languageservice@next -f -D && npm install vscode-languageserver-types@next -f -D", + "install-service-local": "npm install ../vscode-css-languageservice -f -D && npm install ../vscode-languageserver-node/types -f -D" }, "author": "Microsoft Corporation", "license": "MIT", @@ -25,12 +25,12 @@ "gulp-tsb": "^2.0.0", "gulp-uglify": "^1.5.3", "merge-stream": "^1.0.0", - "monaco-editor-core": "^0.8.0", + "monaco-editor-core": "^0.8.1", "monaco-languages": "^0.7.0", "object-assign": "^4.1.0", "rimraf": "^2.5.2", - "typescript": "2.0.3", - "vscode-css-languageservice": "^1.0.8", - "vscode-languageserver-types": "^1.0.2" + "typescript": "^2.1.5", + "vscode-css-languageservice": "^2.0.0-next.9", + "vscode-languageserver-types": "^3.0.2-beta.5" } } diff --git a/src/languageFeatures.ts b/src/languageFeatures.ts index 2abb8725..6f2a3b08 100644 --- a/src/languageFeatures.ts +++ b/src/languageFeatures.ts @@ -197,7 +197,7 @@ export class CompletionAdapter implements monaco.languages.CompletionItemProvide return; } let items: monaco.languages.CompletionItem[] = info.items.map(entry => { - return { + let item : monaco.languages.CompletionItem = { label: entry.label, insertText: entry.insertText, sortText: entry.sortText, @@ -205,8 +205,15 @@ export class CompletionAdapter implements monaco.languages.CompletionItemProvide documentation: entry.documentation, detail: entry.detail, kind: toCompletionItemKind(entry.kind), - textEdit: toTextEdit(entry.textEdit) }; + if (entry.textEdit) { + item.range = toRange(entry.textEdit.range); + item.insertText = entry.textEdit.newText; + } + if (entry.insertTextFormat === ls.InsertTextFormat.Snippet) { + item.insertText = { value: item.insertText }; + } + return item; }); return { @@ -344,12 +351,10 @@ function toWorkspaceEdit(edit: ls.WorkspaceEdit): monaco.languages.WorkspaceEdit return void 0; } let resourceEdits: monaco.languages.IResourceEdit[] = []; - for (let uri in edit.changes) { - let edits = edit.changes[uri]; - for (let e of edits) { - resourceEdits.push({ resource: Uri.parse(uri), range: toRange(e.range), newText: e.newText }); + for (let tde of edit.changes) { + for (let e of tde.edits) { + resourceEdits.push({ resource: Uri.parse(tde.textDocument.uri), range: toRange(e.range), newText: e.newText }); } - } return { edits: resourceEdits