mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-30 05:21:08 +01:00
Fixes #132162 by adding \b to brackets that use letters. Uses same logic as existing bracket matching code.
This commit is contained in:
@@ -74,7 +74,7 @@ export class BracketTokens {
|
||||
const keys = [...this.map.keys()];
|
||||
keys.sort();
|
||||
keys.reverse();
|
||||
return keys.map(k => escapeRegExpCharacters(k)).join('|');
|
||||
return keys.map(k => prepareBracketForRegExp(k)).join('|');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -99,6 +99,13 @@ export class BracketTokens {
|
||||
}
|
||||
}
|
||||
|
||||
function prepareBracketForRegExp(str: string): string {
|
||||
const escaped = escapeRegExpCharacters(str);
|
||||
// This bracket pair uses letters like e.g. "begin" - "end" (see https://github.com/microsoft/vscode/issues/132162)
|
||||
const needsWordBoundaries = (/^[\w ]+$/.test(str));
|
||||
return (needsWordBoundaries ? `\\b${escaped}\\b` : escaped);
|
||||
}
|
||||
|
||||
export class LanguageAgnosticBracketTokens {
|
||||
private readonly languageIdToBracketTokens = new Map<string, BracketTokens>();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user