src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.ts/InspectEditorTokensWidget/_beginCompute
class InspectEditorTokensWidget:	private _beginCompute(position: Position): void {
		const grammar = this._textMateService.createGrammar(this._model.getLanguageIdentifier().language);
		const semanticTokens = this._computeSemanticTokens(position);

		dom.clearNode(this._domNode);
		this._domNode.appendChild(document.createTextNode(nls.localize('inspectTMScopesWidget.loading', "Loading...")));

		Promise.all([grammar, semanticTokens]).then(([grammar, semanticTokens]) => {
			if (this._isDisposed) {
				return;
			}
			this._compute(grammar, semanticTokens, position);
			this._domNode.style.maxWidth = `${Math.max(this._editor.getLayoutInfo().width * 0.66, 500)}px`;
			this._editor.layoutContentWidget(this);
		}, (err) => {
			this._notificationService.warn(err);

			setTimeout(() => {
				InspectEditorTokensController.get(this._editor).stop();
			});
		});

	}