Move disableDefaultFormatter to LanguageServiceDefaults

pull/2748/head
Dominik Moritz 6 years ago
parent f558b8f4ff
commit f1b2e50e7c

@ -24,12 +24,12 @@ export function setupMode(defaults: LanguageServiceDefaultsImpl): void {
return client.getLanguageServiceWorker(...uris);
};
let languageId = defaults.languageId;
const {disableDefaultFormatter, languageId} = defaults;
disposables.push(monaco.languages.registerCompletionItemProvider(languageId, new languageFeatures.CompletionAdapter(worker)));
disposables.push(monaco.languages.registerHoverProvider(languageId, new languageFeatures.HoverAdapter(worker)));
disposables.push(monaco.languages.registerDocumentSymbolProvider(languageId, new languageFeatures.DocumentSymbolAdapter(worker)));
if (!defaults.diagnosticsOptions.disableDefaultFormatter) {
if (!disableDefaultFormatter) {
disposables.push(monaco.languages.registerDocumentFormattingEditProvider(languageId, new languageFeatures.DocumentFormattingEditProvider(worker)));
disposables.push(monaco.languages.registerDocumentRangeFormattingEditProvider(languageId, new languageFeatures.DocumentRangeFormattingEditProvider(worker)));
}

@ -16,11 +16,13 @@ export class LanguageServiceDefaultsImpl implements monaco.languages.json.Langua
private _onDidChange = new Emitter<monaco.languages.json.LanguageServiceDefaults>();
private _diagnosticsOptions: monaco.languages.json.DiagnosticsOptions;
private _disableDefaultFormatter: boolean;
private _languageId: string;
constructor(languageId: string, diagnosticsOptions: monaco.languages.json.DiagnosticsOptions) {
constructor(languageId: string, diagnosticsOptions: monaco.languages.json.DiagnosticsOptions, disableDefaultFormatter: boolean) {
this._languageId = languageId;
this.setDiagnosticsOptions(diagnosticsOptions);
this.setDisableDefaultFormatter(disableDefaultFormatter)
}
get onDidChange(): IEvent<monaco.languages.json.LanguageServiceDefaults> {
@ -31,6 +33,10 @@ export class LanguageServiceDefaultsImpl implements monaco.languages.json.Langua
return this._languageId;
}
get disableDefaultFormatter(): boolean {
return this._disableDefaultFormatter;
}
get diagnosticsOptions(): monaco.languages.json.DiagnosticsOptions {
return this._diagnosticsOptions;
}
@ -39,17 +45,20 @@ export class LanguageServiceDefaultsImpl implements monaco.languages.json.Langua
this._diagnosticsOptions = options || Object.create(null);
this._onDidChange.fire(this);
}
setDisableDefaultFormatter(disable: boolean): void {
this._disableDefaultFormatter = disable;
this._onDidChange.fire(this);
};
}
const diagnosticDefault: monaco.languages.json.DiagnosticsOptions = {
validate: true,
allowComments: true,
schemas: [],
enableSchemaRequest: false,
disableDefaultFormatter: false
enableSchemaRequest: false
};
const jsonDefaults = new LanguageServiceDefaultsImpl('json', diagnosticDefault);
const jsonDefaults = new LanguageServiceDefaultsImpl('json', diagnosticDefault, false);
// Export API

9
src/monaco.d.ts vendored

@ -30,10 +30,6 @@ declare module monaco.languages.json {
*/
readonly schema?: any;
}[];
/**
* Disable the default JSON formatter.
*/
readonly disableDefaultFormatter?: boolean;
/**
* If set, the schema service would load schema content on-demand with 'fetch' if available
*/
@ -44,6 +40,11 @@ declare module monaco.languages.json {
readonly onDidChange: IEvent<LanguageServiceDefaults>;
readonly diagnosticsOptions: DiagnosticsOptions;
setDiagnosticsOptions(options: DiagnosticsOptions): void;
/**
* Disable the default JSON formatter.
*/
readonly disableDefaultFormatter?: boolean;
setDisableDefaultFormatter(disable: boolean): void;
}
export var jsonDefaults: LanguageServiceDefaults;

Loading…
Cancel
Save