Skip to content

Commit 1850b3e

Browse files
Kapil Borledaviwil
authored andcommitted
Change trigger characters from "#<" to "<#"
1 parent 638d746 commit 1850b3e

File tree

1 file changed

+19
-10
lines changed

1 file changed

+19
-10
lines changed

src/features/HelpCompletion.ts

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -36,16 +36,16 @@ export class HelpCompletionFeature implements IFeature {
3636
}
3737

3838
constructor() {
39-
this.triggerCharactersBlockComment = "#<";
39+
this.triggerCharactersBlockComment = "<#";
4040
this.triggerCharactersLineComment = "##";
4141
let subscriptions = [];
4242
workspace.onDidChangeTextDocument(this.onEvent, this, subscriptions);
4343
this.searchState = SearchState.Searching;
4444
this.disposable = Disposable.from(...subscriptions);
4545
}
4646

47-
setLanguageClient(languageclient: LanguageClient) {
48-
this.languageClient = languageclient;
47+
setLanguageClient(languageClient: LanguageClient) {
48+
this.languageClient = languageClient;
4949
}
5050

5151
dispose() {
@@ -56,15 +56,20 @@ export class HelpCompletionFeature implements IFeature {
5656
let text = changeEvent.contentChanges[0].text;
5757
switch (this.searchState) {
5858
case SearchState.Searching:
59-
if (text.length === 1 && text[0] === this.triggerCharactersBlockComment[0]) {
60-
this.searchState = SearchState.Locked;
59+
if (text.length === 1) {
60+
if (text[0] === this.triggerCharactersBlockComment[0]) {
61+
this.searchState = SearchState.Locked;
62+
this.triggerCharactersFound = this.triggerCharactersBlockComment;
63+
}
64+
else if (text[0] === this.triggerCharactersLineComment[0]) {
65+
this.searchState = SearchState.Locked;
66+
this.triggerCharactersFound = this.triggerCharactersLineComment;
67+
}
6168
}
6269
break;
6370

6471
case SearchState.Locked:
65-
if (text.length === 1 &&
66-
(text[0] === (this.triggerCharactersFound = this.triggerCharactersBlockComment)[1] ||
67-
text[0] === (this.triggerCharactersFound = this.triggerCharactersLineComment)[1])) {
72+
if (text.length === 1 && text[0] === this.triggerCharactersFound[1]) {
6873
this.searchState = SearchState.Found;
6974
}
7075
else {
@@ -89,18 +94,22 @@ export class HelpCompletionFeature implements IFeature {
8994
triggerPosition: triggerStartPos,
9095
blockComment: this.isBlockComment
9196
}).then(result => {
97+
if (result === undefined) {
98+
return;
99+
}
100+
92101
let content = result.content;
93102
if (content === undefined) {
94103
return;
95104
}
96105

97-
// todo allow "##" as trigger characters
98106
// todo remove the new line after help block
99107
// todo get the eol character programmatically or let the server return one whole string
108+
// todo add indentation level to the help content
100109
let editor = vscode.window.activeTextEditor;
101110
let replaceRange = new vscode.Range(triggerStartPos.translate(0, -1), triggerStartPos.translate(0, 1));
102111
let text = content.join("\r\n");
103-
editor.edit(editbuilder => editbuilder.replace(replaceRange, text));
112+
editor.edit(editBuilder => editBuilder.replace(replaceRange, text));
104113
});
105114
}
106115
}

0 commit comments

Comments
 (0)