From 552692377212ff9fbd14061da2a30d5424b39a30 Mon Sep 17 00:00:00 2001 From: Josh Johnson Date: Sat, 27 Jan 2018 20:51:15 -0500 Subject: [PATCH] Override Global Configuration From PR #129 #128 --- src/constants.ts | 1 + src/extension.ts | 4 +++- src/formatting/xml-formatting-edit-provider.ts | 6 +++++- 3 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 src/constants.ts diff --git a/src/constants.ts b/src/constants.ts new file mode 100644 index 0000000..33b87fe --- /dev/null +++ b/src/constants.ts @@ -0,0 +1 @@ +export const extensionPrefix = "xmlTools"; diff --git a/src/extension.ts b/src/extension.ts index 720c780..f1ea7ae 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -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)); } diff --git a/src/formatting/xml-formatting-edit-provider.ts b/src/formatting/xml-formatting-edit-provider.ts index a82c1b0..6ed9646 100644 --- a/src/formatting/xml-formatting-edit-provider.ts +++ b/src/formatting/xml-formatting-edit-provider.ts @@ -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 { + // override global configuration (issue #128) + this.workspaceConfiguration = workspace.getConfiguration(constants.extensionPrefix, document.uri); + let xml = document.getText(range); xml = this.xmlFormatter.formatXml(xml, {