From 173187e2633f3fc037c83e1e3de2902ae3c93b92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Erik=20Pedersen?= Date: Thu, 29 Oct 2020 17:14:04 +0100 Subject: Add module.replacements Fixes #7904 Fixes #7908 --- modules/collect.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'modules/collect.go') diff --git a/modules/collect.go b/modules/collect.go index 3059d3f99..e00fa540f 100644 --- a/modules/collect.go +++ b/modules/collect.go @@ -274,10 +274,14 @@ func (c *collector) add(owner *moduleAdapter, moduleImport Import, disabled bool } } - // Fall back to /themes/ + // Fall back to project/themes/ if moduleDir == "" { - moduleDir = filepath.Join(c.ccfg.ThemesDir, modulePath) - + var err error + moduleDir, err = c.createThemeDirname(modulePath, owner.projectMod) + if err != nil { + c.err = err + return nil, nil + } if found, _ := afero.Exists(c.fs, moduleDir); !found { c.err = c.wrapModuleNotFound(errors.Errorf(`module %q not found; either add it as a Hugo Module or store it in %q.`, modulePath, c.ccfg.ThemesDir)) return nil, nil @@ -441,7 +445,7 @@ func (c *collector) applyThemeConfig(tc *moduleAdapter) error { tc.cfg = cfg } - config, err := DecodeConfig(cfg) + config, err := decodeConfig(cfg, c.moduleConfig.replacementsMap) if err != nil { return err } @@ -605,7 +609,6 @@ func (c *collector) normalizeMounts(owner *moduleAdapter, mounts []Mount) ([]Mou mnt.Source = filepath.Clean(mnt.Source) mnt.Target = filepath.Clean(mnt.Target) - var sourceDir string if owner.projectMod && filepath.IsAbs(mnt.Source) { -- cgit v1.2.3