Rename some ILanguageService methods

This commit is contained in:
Alex Dima 2021-12-08 15:05:45 +01:00
parent 3ea9cd4bda
commit c71424a61d
No known key found for this signature in database
GPG key ID: 39563C1504FDD0C9
21 changed files with 61 additions and 61 deletions

View file

@ -75,7 +75,7 @@ export class MarkdownRenderer {
// it is possible no alias is given in which case we fall back to the current editor lang
let languageId: string | undefined | null;
if (languageAlias) {
languageId = this._languageService.getModeIdForLanguageName(languageAlias);
languageId = this._languageService.getLanguageIdForLanguageName(languageAlias);
} else if (this._options.editor) {
languageId = this._options.editor.getModel()?.getLanguageId();
}

View file

@ -37,13 +37,13 @@ export interface ILanguageService {
// --- reading
isRegisteredLanguageId(languageId: string): boolean;
isRegisteredMimeType(mimeType: string): boolean;
getRegisteredModes(): string[];
getRegisteredLanguageIds(): string[];
getRegisteredLanguageNames(): string[];
getExtensions(alias: string): string[];
getFilenames(alias: string): string[];
getMimeForMode(languageId: string): string | null;
getMimeTypeForLanguageId(languageId: string): string | null;
getLanguageName(languageId: string): string | null;
getModeIdForLanguageName(alias: string): string | null;
getLanguageIdForLanguageName(languageName: string): string | null;
getModeIdByFilepathOrFirstLine(resource: URI, firstLine?: string): string | null;
getModeId(commaSeparatedMimetypesOrCommaSeparatedIds: string): string | null;
validateLanguageId(languageId: string): string | null;

View file

@ -84,8 +84,8 @@ export class LanguageService extends Disposable implements ILanguageService {
return this._registry.isRegisteredMimeType(mimeType);
}
public getRegisteredModes(): string[] {
return this._registry.getRegisteredModes();
public getRegisteredLanguageIds(): string[] {
return this._registry.getRegisteredLanguageIds();
}
public getRegisteredLanguageNames(): string[] {
@ -100,16 +100,16 @@ export class LanguageService extends Disposable implements ILanguageService {
return this._registry.getFilenames(alias);
}
public getMimeForMode(languageId: string): string | null {
return this._registry.getMimeForMode(languageId);
public getMimeTypeForLanguageId(languageId: string): string | null {
return this._registry.getMimeTypeForLanguageId(languageId);
}
public getLanguageName(languageId: string): string | null {
return this._registry.getLanguageName(languageId);
}
public getModeIdForLanguageName(alias: string): string | null {
return this._registry.getModeIdForLanguageNameLowercase(alias);
public getLanguageIdForLanguageName(alias: string): string | null {
return this._registry.getLanguageIdForLanguageName(alias);
}
public getModeIdByFilepathOrFirstLine(resource: URI | null, firstLine?: string): string | null {

View file

@ -265,7 +265,7 @@ export class LanguagesRegistry extends Disposable {
return hasOwnProperty.call(this._mimeTypesMap, mimeType);
}
public getRegisteredModes(): string[] {
public getRegisteredLanguageIds(): string[] {
return Object.keys(this._languages);
}
@ -280,7 +280,7 @@ export class LanguagesRegistry extends Disposable {
return this._languages[languageId].name;
}
public getModeIdForLanguageNameLowercase(languageNameLower: string): string | null {
public getLanguageIdForLanguageName(languageNameLower: string): string | null {
if (!hasOwnProperty.call(this._lowercaseNameMap, languageNameLower)) {
return null;
}
@ -294,7 +294,7 @@ export class LanguagesRegistry extends Disposable {
return this._languages[languageId].configurationFiles || [];
}
public getMimeForMode(languageId: string): string | null {
public getMimeTypeForLanguageId(languageId: string): string | null {
if (!hasOwnProperty.call(this._languages, languageId)) {
return null;
}

View file

@ -745,9 +745,9 @@ export class MonarchTokenizer implements modes.ITokenizationSupport {
const computeNewStateForEmbeddedMode = (enteringEmbeddedMode: string) => {
// substitute language alias to known modes to support syntax highlighting
let enteringEmbeddedModeId = this._languageService.getModeIdForLanguageName(enteringEmbeddedMode);
if (enteringEmbeddedModeId) {
enteringEmbeddedMode = enteringEmbeddedModeId;
let enteringEmbeddedLanguageId = this._languageService.getLanguageIdForLanguageName(enteringEmbeddedMode);
if (enteringEmbeddedLanguageId) {
enteringEmbeddedMode = enteringEmbeddedLanguageId;
}
const embeddedModeData = this._getNestedEmbeddedModeData(enteringEmbeddedMode);

View file

@ -108,7 +108,7 @@ suite('LanguagesRegistry', () => {
id: 'modeId'
}]);
assert.deepStrictEqual(registry.getMimeForMode('modeId'), 'text/x-modeId');
assert.deepStrictEqual(registry.getMimeTypeForLanguageId('modeId'), 'text/x-modeId');
registry.dispose();
});
@ -121,7 +121,7 @@ suite('LanguagesRegistry', () => {
mimetypes: ['text/modeId', 'text/modeId2']
}]);
assert.deepStrictEqual(registry.getMimeForMode('modeId'), 'text/modeId');
assert.deepStrictEqual(registry.getMimeTypeForLanguageId('modeId'), 'text/modeId');
registry.dispose();
});
@ -138,7 +138,7 @@ suite('LanguagesRegistry', () => {
mimetypes: ['text/modeId']
}]);
assert.deepStrictEqual(registry.getMimeForMode('modeId'), 'text/x-modeId');
assert.deepStrictEqual(registry.getMimeTypeForLanguageId('modeId'), 'text/x-modeId');
registry.dispose();
});
@ -152,7 +152,7 @@ suite('LanguagesRegistry', () => {
assert.deepStrictEqual(registry.getRegisteredLanguageNames(), ['a']);
assert.deepStrictEqual(registry.getModeIdFromLanguageName('a'), 'a');
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a'), 'a');
assert.deepStrictEqual(registry.getLanguageName('a'), 'a');
registry._registerLanguages([{
@ -164,9 +164,9 @@ suite('LanguagesRegistry', () => {
assert.deepStrictEqual(registry.getModeIdFromLanguageName('a'), null);
assert.deepStrictEqual(registry.getModeIdFromLanguageName('A1'), 'a');
assert.deepStrictEqual(registry.getModeIdFromLanguageName('A2'), null);
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a'), 'a');
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a1'), 'a');
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a2'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a1'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a2'), 'a');
assert.deepStrictEqual(registry.getLanguageName('a'), 'A1');
registry._registerLanguages([{
@ -180,11 +180,11 @@ suite('LanguagesRegistry', () => {
assert.deepStrictEqual(registry.getModeIdFromLanguageName('A2'), null);
assert.deepStrictEqual(registry.getModeIdFromLanguageName('A3'), 'a');
assert.deepStrictEqual(registry.getModeIdFromLanguageName('A4'), null);
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a'), 'a');
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a1'), 'a');
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a2'), 'a');
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a3'), 'a');
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a4'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a1'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a2'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a3'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a4'), 'a');
assert.deepStrictEqual(registry.getLanguageName('a'), 'A3');
registry.dispose();
@ -199,7 +199,7 @@ suite('LanguagesRegistry', () => {
assert.deepStrictEqual(registry.getRegisteredLanguageNames(), ['a']);
assert.deepStrictEqual(registry.getModeIdFromLanguageName('a'), 'a');
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a'), 'a');
assert.deepStrictEqual(registry.getLanguageName('a'), 'a');
registry._registerLanguages([{
@ -210,8 +210,8 @@ suite('LanguagesRegistry', () => {
assert.deepStrictEqual(registry.getRegisteredLanguageNames(), ['a']);
assert.deepStrictEqual(registry.getModeIdFromLanguageName('a'), 'a');
assert.deepStrictEqual(registry.getModeIdFromLanguageName('b'), null);
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('a'), 'a');
assert.deepStrictEqual(registry.getModeIdForLanguageNameLowercase('b'), 'b');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('a'), 'a');
assert.deepStrictEqual(registry.getLanguageIdForLanguageName('b'), 'b');
assert.deepStrictEqual(registry.getLanguageName('a'), 'a');
assert.deepStrictEqual(registry.getLanguageName('b'), null);

View file

@ -32,9 +32,9 @@ export class MainThreadLanguages implements MainThreadLanguagesShape {
) {
this._proxy = _extHostContext.getProxy(ExtHostContext.ExtHostLanguages);
this._proxy.$acceptLanguageIds(_languageService.getRegisteredModes());
this._proxy.$acceptLanguageIds(_languageService.getRegisteredLanguageIds());
this._disposables.add(_languageService.onLanguagesMaybeChanged(e => {
this._proxy.$acceptLanguageIds(_languageService.getRegisteredModes());
this._proxy.$acceptLanguageIds(_languageService.getRegisteredLanguageIds());
}));
}

View file

@ -56,7 +56,7 @@ abstract class MainThreadKernel implements INotebookKernel {
this.description = data.description;
this.detail = data.detail;
this.kind = data.kind;
this.supportedLanguages = isNonEmptyArray(data.supportedLanguages) ? data.supportedLanguages : _languageService.getRegisteredModes();
this.supportedLanguages = isNonEmptyArray(data.supportedLanguages) ? data.supportedLanguages : _languageService.getRegisteredLanguageIds();
this.implementsExecutionOrder = data.supportsExecutionOrder ?? false;
this.localResourceRoot = URI.revive(data.extensionLocation);
this.preloads = data.preloads?.map(u => ({ uri: URI.revive(u.uri), provides: u.provides })) ?? [];
@ -83,7 +83,7 @@ abstract class MainThreadKernel implements INotebookKernel {
event.kind = true;
}
if (data.supportedLanguages !== undefined) {
this.supportedLanguages = isNonEmptyArray(data.supportedLanguages) ? data.supportedLanguages : this._languageService.getRegisteredModes();
this.supportedLanguages = isNonEmptyArray(data.supportedLanguages) ? data.supportedLanguages : this._languageService.getRegisteredLanguageIds();
event.supportedLanguages = true;
}
if (data.supportsExecutionOrder !== undefined) {

View file

@ -1120,7 +1120,7 @@ export class ChangeModeAction extends Action {
const languages = this.languageService.getRegisteredLanguageNames();
const picks: QuickPickInput[] = languages.sort()
.map(lang => {
const languageId = this.languageService.getModeIdForLanguageName(lang.toLowerCase()) || 'unknown';
const languageId = this.languageService.getLanguageIdForLanguageName(lang.toLowerCase()) || 'unknown';
const extensions = this.languageService.getExtensions(lang).join(' ');
let description: string;
if (currentLanguageId === lang) {
@ -1217,8 +1217,8 @@ export class ChangeModeAction extends Action {
if (resource) {
// fire and forget to not slow things down
this.languageDetectionService.detectLanguage(resource).then(detectedModeId => {
const chosenModeId = this.languageService.getModeIdForLanguageName(pick.label.toLowerCase()) || 'unknown';
if (detectedModeId === currentModeId && currentModeId !== chosenModeId) {
const chosenLanguageId = this.languageService.getLanguageIdForLanguageName(pick.label.toLowerCase()) || 'unknown';
if (detectedModeId === currentModeId && currentModeId !== chosenLanguageId) {
// If they didn't choose the detected language (which should also be the active language if automatic detection is enabled)
// then the automatic language detection was likely wrong and the user is correcting it. In this case, we want telemetry.
this.telemetryService.publicLog2<IAutomaticLanguageDetectionLikelyWrongData, AutomaticLanguageDetectionLikelyWrongClassification>(AutomaticLanguageDetectionLikelyWrongId, {
@ -1251,7 +1251,7 @@ export class ChangeModeAction extends Action {
const languages = this.languageService.getRegisteredLanguageNames();
const picks: IQuickPickItem[] = languages.sort().map((lang, index) => {
const id = withNullAsUndefined(this.languageService.getModeIdForLanguageName(lang.toLowerCase())) || 'unknown';
const id = withNullAsUndefined(this.languageService.getLanguageIdForLanguageName(lang.toLowerCase())) || 'unknown';
return {
id,

View file

@ -210,7 +210,7 @@ export async function renderMarkdownDocument(
}
extensionService.whenInstalledExtensionsRegistered().then(async () => {
let support: ITokenizationSupport | undefined;
const languageId = languageService.getModeIdForLanguageName(lang);
const languageId = languageService.getLanguageIdForLanguageName(lang);
if (languageId) {
languageService.triggerMode(languageId);
support = await TokenizationRegistry.getPromise(languageId) ?? undefined;

View file

@ -35,7 +35,7 @@ class CellStatusBarLanguagePickerProvider implements INotebookCellStatusBarItemP
const languageId = cell.cellKind === CellKind.Markup ?
'markdown' :
(this._languageService.getModeIdForLanguageName(cell.language) || cell.language);
(this._languageService.getLanguageIdForLanguageName(cell.language) || cell.language);
const text = this._languageService.getLanguageName(languageId) || languageId;
const item = <INotebookCellStatusBarItem>{
text,

View file

@ -104,7 +104,7 @@ export class NotebookCodeRendererContribution extends Disposable {
registeredMimeTypes.set(mimeType, true);
};
_languageService.getRegisteredModes().forEach(id => {
_languageService.getRegisteredLanguageIds().forEach(id => {
registerCodeRendererContrib(`text/x-${id}`, id);
});

View file

@ -592,7 +592,7 @@ export function insertCell(
const nextIndex = ui ? viewModel.getNextVisibleCellIndex(index) : index + 1;
let language;
if (type === CellKind.Code) {
const supportedLanguages = activeKernel?.supportedLanguages ?? languageService.getRegisteredModes();
const supportedLanguages = activeKernel?.supportedLanguages ?? languageService.getRegisteredLanguageIds();
const defaultLanguage = supportedLanguages[0] || 'plaintext';
if (cell?.cellKind === CellKind.Code) {
language = cell.language;

View file

@ -377,7 +377,7 @@ registerAction2(class ChangeCellLanguageAction extends NotebookCellAction<ICellR
const languageDetectionService = accessor.get(ILanguageDetectionService);
const providerLanguages = new Set([
...(context.notebookEditor.activeKernel?.supportedLanguages ?? languageService.getRegisteredModes()),
...(context.notebookEditor.activeKernel?.supportedLanguages ?? languageService.getRegisteredLanguageIds()),
'markdown'
]);

View file

@ -274,7 +274,7 @@ class CellContentProvider implements ITextModelContentProvider {
return cell.textBuffer.getLineContent(1).substr(0, limit);
}
};
const languageId = this._languageService.getModeIdForLanguageName(cell.language);
const languageId = this._languageService.getLanguageIdForLanguageName(cell.language);
const languageSelection = languageId ? this._languageService.create(languageId) : (cell.cellKind === CellKind.Markup ? this._languageService.create('markdown') : this._languageService.createByFilepathOrFirstLine(resource, cell.textBuffer.getLineContent(1)));
result = this._modelService.createModel(
bufferFactory,

View file

@ -760,7 +760,7 @@ var requirejs = (function() {
for (const { id, value, lang } of data.codeBlocks) {
// The language id may be a language aliases (e.g.js instead of javascript)
const languageId = this.languageService.getModeIdForLanguageName(lang);
const languageId = this.languageService.getLanguageIdForLanguageName(lang);
if (!languageId) {
continue;
}

View file

@ -79,20 +79,20 @@ export class NotebookCellTextModel extends Disposable implements ICell {
set language(newLanguage: string) {
if (this._textModel
// 1. the language update is from workspace edit, checking if it's the same as text model's mode
&& this._textModel.getLanguageId() === this._languageService.getModeIdForLanguageName(newLanguage)
&& this._textModel.getLanguageId() === this._languageService.getLanguageIdForLanguageName(newLanguage)
// 2. the text model's mode might be the same as the `this.language`, even if the language friendly name is not the same, we should not trigger an update
&& this._textModel.getLanguageId() === this._languageService.getModeIdForLanguageName(this.language)) {
&& this._textModel.getLanguageId() === this._languageService.getLanguageIdForLanguageName(this.language)) {
return;
}
const newMode = this._languageService.getModeIdForLanguageName(newLanguage);
const newLanguageId = this._languageService.getLanguageIdForLanguageName(newLanguage);
if (newMode === null) {
if (newLanguageId === null) {
return;
}
if (this._textModel) {
const languageId = this._languageService.create(newMode);
const languageId = this._languageService.create(newLanguageId);
this._textModel.setMode(languageId.languageId);
}

View file

@ -31,7 +31,7 @@ export class ConfigureLanguageBasedSettingsAction extends Action {
override async run(): Promise<void> {
const languages = this.languageService.getRegisteredLanguageNames();
const picks: IQuickPickItem[] = languages.sort().map((lang, index) => {
const description: string = nls.localize('languageDescriptionConfigured', "({0})", this.languageService.getModeIdForLanguageName(lang.toLowerCase()));
const description: string = nls.localize('languageDescriptionConfigured', "({0})", this.languageService.getLanguageIdForLanguageName(lang.toLowerCase()));
// construct a fake resource to be able to show nice icons if any
let fakeResource: URI | undefined;
const extensions = this.languageService.getExtensions(lang);
@ -53,7 +53,7 @@ export class ConfigureLanguageBasedSettingsAction extends Action {
await this.quickInputService.pick(picks, { placeHolder: nls.localize('pickLanguage', "Select Language") })
.then(pick => {
if (pick) {
const languageId = this.languageService.getModeIdForLanguageName(pick.label.toLowerCase());
const languageId = this.languageService.getLanguageIdForLanguageName(pick.label.toLowerCase());
if (typeof languageId === 'string') {
return this.preferencesService.openUserSettings({ jsonEditor: true, revealSetting: { key: `[${languageId}]`, edit: true } });
}

View file

@ -88,13 +88,13 @@ async function computePicks(snippetService: ISnippetsService, envService: IEnvir
}
const dir = envService.snippetsHome;
for (const mode of languageService.getRegisteredModes()) {
const label = languageService.getLanguageName(mode);
if (label && !seen.has(mode)) {
for (const languageId of languageService.getRegisteredLanguageIds()) {
const label = languageService.getLanguageName(languageId);
if (label && !seen.has(languageId)) {
future.push({
label: mode,
label: languageId,
description: `(${label})`,
filepath: joinPath(dir, `${mode}.json`),
filepath: joinPath(dir, `${languageId}.json`),
hint: true
});
}

View file

@ -71,7 +71,7 @@ export class WalkThroughSnippetContentProvider implements ITextModelContentProvi
const renderer = new marked.Renderer();
renderer.code = (code, lang) => {
i++;
const languageId = this.languageService.getModeIdForLanguageName(lang) || '';
const languageId = this.languageService.getLanguageIdForLanguageName(lang) || '';
const languageSelection = this.languageService.create(languageId);
// Create all models for this resource in one go... we'll need them all and we don't want to re-parse markdown each time
const model = this.modelService.createModel(code, languageSelection, resource.with({ fragment: `${i}.${lang}` }));

View file

@ -165,9 +165,9 @@ export class WorkbenchLanguageService extends LanguageService {
if (configuration.files?.associations) {
Object.keys(configuration.files.associations).forEach(pattern => {
const langId = configuration.files.associations[pattern];
const mimetype = this.getMimeForMode(langId) || `text/x-${langId}`;
const mimeType = this.getMimeTypeForLanguageId(langId) || `text/x-${langId}`;
mime.registerTextMime({ id: langId, mime: mimetype, filepattern: pattern, userConfigured: true });
mime.registerTextMime({ id: langId, mime: mimeType, filepattern: pattern, userConfigured: true });
});
}