diff --git a/extensions/typescript-language-features/src/languageFeatures/languageConfiguration.ts b/extensions/typescript-language-features/src/languageFeatures/languageConfiguration.ts index 80d64aee524..319c2fdd779 100644 --- a/extensions/typescript-language-features/src/languageFeatures/languageConfiguration.ts +++ b/extensions/typescript-language-features/src/languageFeatures/languageConfiguration.ts @@ -15,7 +15,7 @@ import * as languageModeIds from '../utils/languageIds'; const jsTsLanguageConfiguration: vscode.LanguageConfiguration = { indentationRules: { decreaseIndentPattern: /^((?!.*?\/\*).*\*\/)?\s*[\}\]].*$/, - increaseIndentPattern: /^((?!\/\/).)*(\{([^}"'`]*|(\t|[ ])*\/\/.*)|\([^)"'`]*|\[[^\]"'`]*)$/, + increaseIndentPattern: /^((?!\/\/).)*(\{([^}"'`/]*|(\t|[ ])*\/\/.*)|\([^)"'`/]*|\[[^\]"'`/]*)$/, // e.g. * ...| or */| or *-----*/| unIndentedLinePattern: /^(\t|[ ])*[ ]\*[^/]*\*\/\s*$|^(\t|[ ])*[ ]\*\/\s*$|^(\t|[ ])*[ ]\*([ ]([^\*]|\*(?!\/))*)?$/ }, diff --git a/src/vs/editor/test/common/modes/supports/onEnter.test.ts b/src/vs/editor/test/common/modes/supports/onEnter.test.ts index b585d64c479..5e630f31bc7 100644 --- a/src/vs/editor/test/common/modes/supports/onEnter.test.ts +++ b/src/vs/editor/test/common/modes/supports/onEnter.test.ts @@ -168,4 +168,22 @@ suite('OnEnter', () => { testIndentAction('', ' * test() {', '', IndentAction.Indent, null, 0); testIndentAction(' ', ' * test() {', '', IndentAction.Indent, null, 0); }); + + test('issue #141816', () => { + let support = new OnEnterSupport({ + onEnterRules: javascriptOnEnterRules + }); + let testIndentAction = (beforeText: string, afterText: string, expected: IndentAction) => { + let actual = support.onEnter(EditorAutoIndentStrategy.Advanced, '', beforeText, afterText); + if (expected === IndentAction.None) { + assert.strictEqual(actual, null); + } else { + assert.strictEqual(actual!.indentAction, expected); + } + }; + + testIndentAction('const r = /{/;', '', IndentAction.None); + testIndentAction('const r = /{[0-9]/;', '', IndentAction.None); + testIndentAction('const r = /[a-zA-Z]{/;', '', IndentAction.None); + }); });