summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <[email protected]>2018-07-31 16:53:03 +0200
committerBjørn Erik Pedersen <[email protected]>2018-07-31 16:53:03 +0200
commit88e447c449608523d87c517396bde31a62f392b6 (patch)
treeb336b9eceaacddfc35e35449802453211b5f0836
parentb718d743b7a2eff3bea74ced57147825294a629f (diff)
downloadhugo-88e447c449608523d87c517396bde31a62f392b6.tar.gz
hugo-88e447c449608523d87c517396bde31a62f392b6.zip
tocss/scss: Improve _ prefix handling in SCSS imports
See #5008
-rw-r--r--hugolib/resource_chain_test.go20
-rw-r--r--resource/tocss/scss/tocss.go2
2 files changed, 20 insertions, 2 deletions
diff --git a/hugolib/resource_chain_test.go b/hugolib/resource_chain_test.go
index 3d13d3912..3e199d318 100644
--- a/hugolib/resource_chain_test.go
+++ b/hugolib/resource_chain_test.go
@@ -114,7 +114,7 @@ func TestSCSSWithThemeOverrides(t *testing.T) {
b.WithSourceFile(filepath.Join(scssThemeDir, "components", "_imports.scss"), `
@import "moo";
-
+@import "_boo";
`)
b.WithSourceFile(filepath.Join(scssThemeDir, "components", "_moo.scss"), `
@@ -125,6 +125,14 @@ moo {
}
`)
+ b.WithSourceFile(filepath.Join(scssThemeDir, "components", "_boo.scss"), `
+$boolor: orange;
+
+boo {
+ color: $boolor;
+}
+`)
+
b.WithSourceFile(filepath.Join(scssThemeDir, "main.scss"), `
@import "components/imports";
@@ -138,6 +146,14 @@ moo {
}
`)
+ b.WithSourceFile(filepath.Join(scssDir, "components", "_boo.scss"), `
+$boolor: green;
+
+boo {
+ color: $boolor;
+}
+`)
+
b.WithTemplatesAdded("index.html", `
{{ $cssOpts := (dict "includePaths" (slice "node_modules/foo" ) ) }}
{{ $r := resources.Get "scss/main.scss" | toCSS $cssOpts | minify }}
@@ -145,7 +161,7 @@ T1: {{ $r.Content }}
`)
b.Build(BuildCfg{})
- b.AssertFileContent(filepath.Join(workDir, "public/index.html"), `T1: moo{color:#ccc}`)
+ b.AssertFileContent(filepath.Join(workDir, "public/index.html"), `T1: moo{color:#ccc}boo{color:green}`)
}
diff --git a/resource/tocss/scss/tocss.go b/resource/tocss/scss/tocss.go
index c50b054b7..5ba7793c0 100644
--- a/resource/tocss/scss/tocss.go
+++ b/resource/tocss/scss/tocss.go
@@ -93,6 +93,8 @@ func (t *toCSSTransformation) Transform(ctx *resource.ResourceTransformationCtx)
namePatterns = []string{"_%s.scss", "%s.scss", "_%s.sass", "%s.sass"}
}
+ name = strings.TrimPrefix(name, "_")
+
for _, namePattern := range namePatterns {
filenameToCheck := filepath.Join(basePath, fmt.Sprintf(namePattern, name))
fi, err := t.c.sfs.Fs.Stat(filenameToCheck)