diff options
author | Bjørn Erik Pedersen <[email protected]> | 2018-01-25 17:03:29 +0100 |
---|---|---|
committer | Bjørn Erik Pedersen <[email protected]> | 2018-01-26 14:04:14 +0100 |
commit | 6413559f7575e2653d76227a8037a7edbaae82aa (patch) | |
tree | 4b2d2be2943e1f7c37d6aa09937bec4391c1e678 /source | |
parent | 322c567220aa4123a5d707629c1bebd375599912 (diff) | |
download | hugo-6413559f7575e2653d76227a8037a7edbaae82aa.tar.gz hugo-6413559f7575e2653d76227a8037a7edbaae82aa.zip |
Add a way to disable one or more languages
This commit adds a new config setting:
```toml
disableLanguages = ["fr"]
```
If this is a multilingual site:
* No site for the French language will be created
* French content pages will be ignored/not read
* The French language configuration (menus etc.) will also be ignored
This makes it possible to start translating new languages and turn it on when you're happy etc.
Fixes #4297
Fixed #4329
Diffstat (limited to 'source')
-rw-r--r-- | source/sourceSpec.go | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/source/sourceSpec.go b/source/sourceSpec.go index 74a754a26..e40010162 100644 --- a/source/sourceSpec.go +++ b/source/sourceSpec.go @@ -35,6 +35,7 @@ type SourceSpec struct { Languages map[string]interface{} DefaultContentLanguage string + DisabledLanguages map[string]bool } // NewSourceSpec initializes SourceSpec using languages from a given configuration. @@ -42,6 +43,12 @@ func NewSourceSpec(cfg config.Provider, fs *hugofs.Fs) *SourceSpec { defaultLang := cfg.GetString("defaultContentLanguage") languages := cfg.GetStringMap("languages") + disabledLangsSet := make(map[string]bool) + + for _, disabledLang := range cfg.GetStringSlice("disableLanguages") { + disabledLangsSet[disabledLang] = true + } + if len(languages) == 0 { l := helpers.NewDefaultLanguage(cfg) languages[l.Lang] = l @@ -62,7 +69,7 @@ func NewSourceSpec(cfg config.Provider, fs *hugofs.Fs) *SourceSpec { } } - return &SourceSpec{ignoreFilesRe: regexps, Cfg: cfg, Fs: fs, Languages: languages, DefaultContentLanguage: defaultLang} + return &SourceSpec{ignoreFilesRe: regexps, Cfg: cfg, Fs: fs, Languages: languages, DefaultContentLanguage: defaultLang, DisabledLanguages: disabledLangsSet} } func (s *SourceSpec) IgnoreFile(filename string) bool { |