Override Global Configuration

From PR #129

#128
This commit is contained in:
Josh Johnson 2018-01-27 20:51:15 -05:00
parent a204434a6e
commit 5526923772
3 changed files with 9 additions and 2 deletions

1
src/constants.ts Normal file
View File

@ -0,0 +1 @@
export const extensionPrefix = "xmlTools";

View File

@ -1,11 +1,13 @@
import { workspace } from "vscode";
import { ExtensionContext, WorkspaceConfiguration } from "vscode";
import * as constants from "./constants";
const onActivateHandlers: OnActivateHandler[] = [];
const onDeactivateHandlers: OnDeactivateHandler[] = [];
export function activate(context: ExtensionContext) {
const workspaceConfiguration = workspace.getConfiguration("xmlTools");
const workspaceConfiguration = workspace.getConfiguration(constants.extensionPrefix);
onActivateHandlers.forEach(x => x(context, workspaceConfiguration));
}

View File

@ -1,9 +1,10 @@
import { commands, languages } from "vscode";
import { commands, languages, workspace } from "vscode";
import {
CancellationToken, DocumentFormattingEditProvider, DocumentRangeFormattingEditProvider, ExtensionContext,
FormattingOptions, ProviderResult, Range, TextDocument, TextEdit, TextEditor, WorkspaceConfiguration
} from "vscode";
import * as constants from "../constants";
import * as extension from "../extension";
import { XmlFormatter } from "./xml-formatter";
@ -52,6 +53,9 @@ export class XmlFormattingEditProvider implements DocumentFormattingEditProvider
}
provideDocumentRangeFormattingEdits(document: TextDocument, range: Range, options: FormattingOptions, token: CancellationToken): ProviderResult<TextEdit[]> {
// override global configuration (issue #128)
this.workspaceConfiguration = workspace.getConfiguration(constants.extensionPrefix, document.uri);
let xml = document.getText(range);
xml = this.xmlFormatter.formatXml(xml, {