Другой связанный вопрос по SO с ответом
Я сделал еще один пример:
vscode.extensions.all.forEach(ext => {
const contributesThemes = ext.packageJSON.contributes ? (ext.packageJSON.contributes.themes ? ext.packageJSON.contributes.themes : undefined) : undefined;
if (contributesThemes) {
for (var i = 0; i < contributesThemes.length; i++) {
const label = contributesThemes[i].label;
const uiTheme = (contributesThemes[i].uiTheme === 'vs-dark') ? 'dark' : 'light';
const extensionType = ext.packageJSON.isBuiltin ? 'Built-in' : 'External';
console.log(`${extensionType} extension '${ext.id}' contributes ${uiTheme} theme '${label}'`);
}
}
});
Этот код печатает все темы, включая встроенные. Результат как:
...
Built-in extension 'vscode.theme-solarized-dark' contributes dark theme 'Solarized Dark'
Built-in extension 'vscode.theme-solarized-light' contributes light theme 'Solarized Light'
Built-in extension 'vscode.theme-tomorrow-night-blue' contributes dark theme 'Tomorrow Night Blue'
External extension 'eppz.eppz-code' contributes dark theme 'eppz!'
External extension 'jhaig343.asiimov-color-theme' contributes dark theme 'Asiimov'
External extension 'wesbos.theme-cobalt2' contributes dark theme 'Cobalt2'