System property not to remove indentation from completions edits

This commit is contained in:
BoykoAlex
2017-07-20 16:04:18 -04:00
parent 9c43c54acf
commit 6e8f7cb264
3 changed files with 9 additions and 2 deletions

View File

@@ -63,6 +63,9 @@ export class JarLanguageClient extends AutoLanguageClient {
doLaunchProcess(javaExecutable, launcher, port, args=[]) {
let vmArgs = args.concat([
`-Dserver.port=${port}`,
// Atom doesn't have lazy completion proposals support - completionItem/resolve message. Disable lazy completions
'-Dlsp.lazy.completions.disable=true',
'-Dlsp.completions.indentation.enable=true',
'-jar',
launcher
]);

View File

@@ -218,7 +218,7 @@ class ManifestYamlLanguageClient extends JarLanguageClient {
constructor() {
super(
'https://s3-us-west-1.amazonaws.com/s3-test.spring.io/sts4/fatjars/snapshots/manifest-yaml-language-server-0.0.9-201707192158.jar',
'https://s3-us-west-1.amazonaws.com/s3-test.spring.io/sts4/fatjars/snapshots/manifest-yaml-language-server-0.0.9-201707201812.jar',
path.join(__dirname, '..', 'server')
);

View File

@@ -195,7 +195,11 @@ public class VscodeCompletionEngineAdapter implements VscodeCompletionEngine {
edits.apply(newDoc);
TextEdit vscodeEdit = new TextEdit();
vscodeEdit.setRange(doc.toRange(replaceEdit.start, replaceEdit.end-replaceEdit.start));
vscodeEdit.setNewText(vscodeIndentFix(doc, vscodeEdit.getRange().getStart(), replaceEdit.newText));
if (Boolean.getBoolean("lsp.completions.indentation.enable")) {
vscodeEdit.setNewText(replaceEdit.newText);
} else {
vscodeEdit.setNewText(vscodeIndentFix(doc, vscodeEdit.getRange().getStart(), replaceEdit.newText));
}
//TODO: cursor offset within newText? for now we assume its always at the end.
item.setTextEdit(vscodeEdit);
item.setInsertTextFormat(InsertTextFormat.Snippet);