From 0970fe47b917ddcef486ba478dd7d24930b8df28 Mon Sep 17 00:00:00 2001 From: Elio Struyf Date: Thu, 10 Sep 2020 16:28:45 +0200 Subject: [PATCH] #17 - Added support for indentation --- src/commands/Settings.ts | 7 +++++-- src/helpers/ArticleHelper.ts | 5 ++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/commands/Settings.ts b/src/commands/Settings.ts index 8f5b8e64..c9f8ac1e 100644 --- a/src/commands/Settings.ts +++ b/src/commands/Settings.ts @@ -5,6 +5,7 @@ import { TaxonomyType } from "../models"; import { CONFIG_KEY, SETTING_TAXONOMY_TAGS, SETTING_TAXONOMY_CATEGORIES, EXTENSION_NAME } from '../constants'; import { ArticleHelper, SettingsHelper, FilesHelper } from '../helpers'; import { TomlEngine, getFmLanguage, getFormatOpts } from '../helpers/TomlEngine'; +import { DumpOptions } from 'js-yaml'; export class Settings { @@ -240,11 +241,13 @@ export class Settings { taxonomies = taxonomies.filter(o => o !== selectedOption); } data[matterProp] = [...new Set(taxonomies)].sort(); + const spaces = vscode.window.activeTextEditor?.options?.tabSize; // Update the file fs.writeFileSync(file.path, matter.stringify(article.content, article.data, { ...TomlEngine, - ...langOpts - }), { encoding: "utf8" }); + ...langOpts, + indent: spaces || 2 + } as DumpOptions as any), { encoding: "utf8" }); } } } diff --git a/src/helpers/ArticleHelper.ts b/src/helpers/ArticleHelper.ts index 77e7226d..1b4f49f7 100644 --- a/src/helpers/ArticleHelper.ts +++ b/src/helpers/ArticleHelper.ts @@ -66,11 +66,14 @@ export class ArticleHelper { const language = getFmLanguage(); const langOpts = getFormatOpts(language); + const spaces = vscode.window.activeTextEditor?.options?.tabSize; + return matter.stringify(content, data, ({ ...TomlEngine, ...langOpts, noArrayIndent: !indentArray, - lineWidth: 500 + lineWidth: 500, + indent: spaces || 2 } as DumpOptions as any)); }