diff --git a/src/vs/workbench/parts/codeEditor/electron-browser/textMate/inspectTMScopes.ts b/src/vs/workbench/parts/codeEditor/electron-browser/textMate/inspectTMScopes.ts index 4c878b344b3952bd31a387aa0d65980809bc4bf9..fee6b3b557963df471927ba3a0d13ed6fc911fb0 100644 --- a/src/vs/workbench/parts/codeEditor/electron-browser/textMate/inspectTMScopes.ts +++ b/src/vs/workbench/parts/codeEditor/electron-browser/textMate/inspectTMScopes.ts @@ -273,7 +273,7 @@ class InspectTMScopesWidget extends Disposable implements IContentWidget { let theme = this._themeService.getColorTheme(); result += `
`; - let matchingRule = findMatchingThemeRule(theme, data.tokens1[token1Index].scopes); + let matchingRule = findMatchingThemeRule(theme, data.tokens1[token1Index].scopes, false); if (matchingRule) { result += `${matchingRule.rawSelector}\n${JSON.stringify(matchingRule.settings, null, '\t')}`; } else { diff --git a/src/vs/workbench/services/textMate/electron-browser/TMHelper.ts b/src/vs/workbench/services/textMate/electron-browser/TMHelper.ts index 877f4885fc19380897e7fc0cdaeb2eb659767e07..7d3e2f188d4ac99ea5e5123fe60a9084183e448d 100644 --- a/src/vs/workbench/services/textMate/electron-browser/TMHelper.ts +++ b/src/vs/workbench/services/textMate/electron-browser/TMHelper.ts @@ -7,11 +7,11 @@ import { IColorTheme, ITokenColorizationSetting } from 'vs/workbench/services/themes/common/workbenchThemeService'; -export function findMatchingThemeRule(theme: IColorTheme, scopes: string[]): ThemeRule { +export function findMatchingThemeRule(theme: IColorTheme, scopes: string[], onlyColorRules: boolean = true): ThemeRule { for (let i = scopes.length - 1; i >= 0; i--) { let parentScopes = scopes.slice(0, i); let scope = scopes[i]; - let r = findMatchingThemeRule2(theme, scope, parentScopes); + let r = findMatchingThemeRule2(theme, scope, parentScopes, onlyColorRules); if (r) { return r; } @@ -19,13 +19,13 @@ export function findMatchingThemeRule(theme: IColorTheme, scopes: string[]): The return null; } -function findMatchingThemeRule2(theme: IColorTheme, scope: string, parentScopes: string[]): ThemeRule { +function findMatchingThemeRule2(theme: IColorTheme, scope: string, parentScopes: string[], onlyColorRules: boolean): ThemeRule { let result: ThemeRule = null; // Loop backwards, to ensure the last most specific rule wins for (let i = theme.tokenColors.length - 1; i >= 0; i--) { let rule = theme.tokenColors[i]; - if (!rule.settings.foreground) { + if (onlyColorRules && !rule.settings.foreground) { continue; }