mirror of
https://github.com/Microsoft/vscode
synced 2024-09-19 18:48:00 +00:00
Make sure we trigger js/ts completions on /
This commit is contained in:
parent
4d3a8ae210
commit
f71c378488
|
@ -449,42 +449,44 @@ class TypeScriptCompletionItemProvider implements vscode.CompletionItemProvider
|
||||||
line: vscode.TextLine,
|
line: vscode.TextLine,
|
||||||
position: vscode.Position
|
position: vscode.Position
|
||||||
): boolean {
|
): boolean {
|
||||||
if ((context.triggerCharacter === '"' || context.triggerCharacter === '\'') && !this.client.apiVersion.gte(API.v290)) {
|
if (context.triggerCharacter && !this.client.apiVersion.gte(API.v290)) {
|
||||||
if (!config.quickSuggestionsForPaths) {
|
if ((context.triggerCharacter === '"' || context.triggerCharacter === '\'')) {
|
||||||
return false;
|
if (!config.quickSuggestionsForPaths) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// make sure we are in something that looks like the start of an import
|
||||||
|
const pre = line.text.slice(0, position.character);
|
||||||
|
if (!pre.match(/\b(from|import)\s*["']$/) && !pre.match(/\b(import|require)\(['"]$/)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// make sure we are in something that looks like the start of an import
|
if (context.triggerCharacter === '/') {
|
||||||
const pre = line.text.slice(0, position.character);
|
if (!config.quickSuggestionsForPaths) {
|
||||||
if (!pre.match(/\b(from|import)\s*["']$/) && !pre.match(/\b(import|require)\(['"]$/)) {
|
return false;
|
||||||
return false;
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (context.triggerCharacter === '/') {
|
// make sure we are in something that looks like an import path
|
||||||
if (!config.quickSuggestionsForPaths) {
|
const pre = line.text.slice(0, position.character);
|
||||||
return false;
|
if (!pre.match(/\b(from|import)\s*["'][^'"]*$/) && !pre.match(/\b(import|require)\(['"][^'"]*$/)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// make sure we are in something that looks like an import path
|
if (context.triggerCharacter === '@') {
|
||||||
const pre = line.text.slice(0, position.character);
|
// make sure we are in something that looks like the start of a jsdoc comment
|
||||||
if (!pre.match(/\b(from|import)\s*["'][^'"]*$/) && !pre.match(/\b(import|require)\(['"][^'"]*$/)) {
|
const pre = line.text.slice(0, position.character);
|
||||||
|
if (!pre.match(/^\s*\*[ ]?@/) && !pre.match(/\/\*\*+[ ]?@/)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (context.triggerCharacter === '<') {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (context.triggerCharacter === '@' && !this.client.apiVersion.gte(API.v290)) {
|
|
||||||
// make sure we are in something that looks like the start of a jsdoc comment
|
|
||||||
const pre = line.text.slice(0, position.character);
|
|
||||||
if (!pre.match(/^\s*\*[ ]?@/) && !pre.match(/\/\*\*+[ ]?@/)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (context.triggerCharacter === '<') {
|
|
||||||
return this.client.apiVersion.gte(API.v290);
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue