#412 Support added for data files and custom scripts

This commit is contained in:
Elio Struyf
2022-09-30 14:44:07 +02:00
parent 13a71cfd82
commit 5254f2b7f9
+17 -4
View File
@@ -4,7 +4,7 @@ import { Notifications } from './Notifications';
import { commands, Uri, workspace, window } from 'vscode';
import * as vscode from 'vscode';
import { ContentType, CustomTaxonomy, TaxonomyType } from '../models';
import { SETTING_TAXONOMY_TAGS, SETTING_TAXONOMY_CATEGORIES, CONFIG_KEY, CONTEXT, ExtensionState, SETTING_TAXONOMY_CUSTOM, TelemetryEvent, COMMAND_NAME, SETTING_TAXONOMY_CONTENT_TYPES, SETTING_CONTENT_PAGE_FOLDERS, SETTING_CONTENT_SNIPPETS, SETTING_CONTENT_PLACEHOLDERS } from '../constants';
import { SETTING_TAXONOMY_TAGS, SETTING_TAXONOMY_CATEGORIES, CONFIG_KEY, CONTEXT, ExtensionState, SETTING_TAXONOMY_CUSTOM, TelemetryEvent, COMMAND_NAME, SETTING_TAXONOMY_CONTENT_TYPES, SETTING_CONTENT_PAGE_FOLDERS, SETTING_CONTENT_SNIPPETS, SETTING_CONTENT_PLACEHOLDERS, SETTING_CUSTOM_SCRIPTS, SETTING_DATA_FILES, SETTING_DATA_TYPES, SETTING_DATA_FOLDERS } from '../constants';
import { Folders } from '../commands/Folders';
import { join, basename, dirname, parse } from 'path';
import { existsSync, readFileSync, writeFileSync } from 'fs';
@@ -427,7 +427,7 @@ export class Settings {
}
// Read the files from the config folder
let configFiles = await workspace.findFiles(`**/${Settings.globalConfigFolder}/**`);
let configFiles = await workspace.findFiles(`**/${Settings.globalConfigFolder}/**/*.json`);
if (configFiles.length === 0) {
Logger.info(`No ".frontmatter/config" config files found.`);
}
@@ -470,17 +470,22 @@ export class Settings {
if (relSettingName.startsWith('.')) {
relSettingName = relSettingName.substring(1);
}
relSettingName = relSettingName.toLowerCase();
if (!Settings.globalConfig) {
Settings.globalConfig = {};
}
// Array settings
relSettingName = relSettingName.toLowerCase();
if (relSettingName === SETTING_TAXONOMY_CONTENT_TYPES.toLowerCase() ||
relSettingName === SETTING_CONTENT_PAGE_FOLDERS.toLowerCase() ||
relSettingName === SETTING_CONTENT_PLACEHOLDERS.toLowerCase()) {
relSettingName === SETTING_CONTENT_PLACEHOLDERS.toLowerCase() ||
relSettingName === SETTING_CUSTOM_SCRIPTS.toLowerCase() ||
relSettingName === SETTING_DATA_FILES.toLowerCase() ||
relSettingName === SETTING_DATA_FOLDERS.toLowerCase() ||
relSettingName === SETTING_DATA_TYPES.toLowerCase()) {
// Get the correct setting name
let settingNameValue = ""
if (relSettingName === SETTING_TAXONOMY_CONTENT_TYPES.toLowerCase()) {
settingNameValue = SETTING_TAXONOMY_CONTENT_TYPES;
@@ -488,6 +493,14 @@ export class Settings {
settingNameValue = SETTING_CONTENT_PAGE_FOLDERS;
} else if (relSettingName === SETTING_CONTENT_PLACEHOLDERS.toLowerCase()) {
settingNameValue = SETTING_CONTENT_PLACEHOLDERS;
} else if (relSettingName === SETTING_CUSTOM_SCRIPTS.toLowerCase()) {
settingNameValue = SETTING_CUSTOM_SCRIPTS;
} else if (relSettingName === SETTING_DATA_FILES.toLowerCase()) {
settingNameValue = SETTING_DATA_FILES;
} else if (relSettingName === SETTING_DATA_FOLDERS.toLowerCase()) {
settingNameValue = SETTING_DATA_FOLDERS;
} else if (relSettingName === SETTING_DATA_TYPES.toLowerCase()) {
settingNameValue = SETTING_DATA_TYPES;
}
const crntValue = Settings.globalConfig[`${CONFIG_KEY}.${settingNameValue}`] || [];