diff --git a/main.ts b/main.ts index 13fa7f40..ca0f511f 100644 --- a/main.ts +++ b/main.ts @@ -23,6 +23,7 @@ const DEFAULT_SETTINGS: DigitalGardenSettings = { faviconPath: "", noteSettingsIsInitialized: false, siteName: "Digital Garden", + mainLanguage: "en", slugifyEnabled: true, // Note Icon Related Settings noteIconKey: "dg-note-icon", diff --git a/scripts/generateGardenSettings.mjs b/scripts/generateGardenSettings.mjs index c43b360b..31cfe26a 100644 --- a/scripts/generateGardenSettings.mjs +++ b/scripts/generateGardenSettings.mjs @@ -19,6 +19,7 @@ const gardenSettings = { faviconPath: "", noteSettingsIsInitialized: true, siteName: "Digital Garden", + mainLanguage: "en", slugifyEnabled: true, noteIconKey: "dg-note-icon", defaultNoteIcon: "", diff --git a/src/models/settings.ts b/src/models/settings.ts index 34ee0b06..dd960cae 100644 --- a/src/models/settings.ts +++ b/src/models/settings.ts @@ -11,6 +11,7 @@ export default interface DigitalGardenSettings { theme: string; baseTheme: string; faviconPath: string; + mainLanguage: string; siteName: string; diff --git a/src/repositoryConnection/DigitalGardenSiteManager.ts b/src/repositoryConnection/DigitalGardenSiteManager.ts index 8b944cd0..8b218dac 100644 --- a/src/repositoryConnection/DigitalGardenSiteManager.ts +++ b/src/repositoryConnection/DigitalGardenSiteManager.ts @@ -70,6 +70,7 @@ export default class DigitalGardenSiteManager { const theme = JSON.parse(this.settings.theme); const baseTheme = this.settings.baseTheme; const siteName = this.settings.siteName; + const mainLanguage = this.settings.mainLanguage; let gardenBaseUrl = ""; // check that gardenbaseurl is not an access token wrongly pasted. @@ -84,6 +85,7 @@ export default class DigitalGardenSiteManager { const envValues = { SITE_NAME_HEADER: siteName, + SITE_MAIN_LANGUAGE: mainLanguage, SITE_BASE_URL: gardenBaseUrl, SHOW_CREATED_TIMESTAMP: this.settings.showCreatedTimestamp, TIMESTAMP_FORMAT: this.settings.timestampFormat, diff --git a/src/views/SettingsView/SettingView.ts b/src/views/SettingsView/SettingView.ts index b889913f..e72eba26 100644 --- a/src/views/SettingsView/SettingView.ts +++ b/src/views/SettingsView/SettingView.ts @@ -502,6 +502,20 @@ export default class SettingView { }), ); + new Setting(themeModal.contentEl) + .setName("Main language") + .setDesc( + 'ISO 639-1 language code for the main language of your site. This is used to set correct .', + ) + .addText((text) => + text + .setValue(this.settings.mainLanguage) + .onChange(async (value) => { + this.settings.mainLanguage = value; + await this.saveSettings(); + }), + ); + new Setting(themeModal.contentEl) .setName("Favicon") .setDesc(