shithub: hugo

Download patch

ref: 88e447c449608523d87c517396bde31a62f392b6
parent: b718d743b7a2eff3bea74ced57147825294a629f
author: Bjørn Erik Pedersen <[email protected]>
date: Tue Jul 31 12:53:03 EDT 2018

tocss/scss: Improve _ prefix handling in SCSS imports

See #5008

--- a/hugolib/resource_chain_test.go
+++ b/hugolib/resource_chain_test.go
@@ -114,7 +114,7 @@
 
 	b.WithSourceFile(filepath.Join(scssThemeDir, "components", "_imports.scss"), `
 @import "moo";
-
+@import "_boo";
 `)
 
 	b.WithSourceFile(filepath.Join(scssThemeDir, "components", "_moo.scss"), `
@@ -125,6 +125,14 @@
 }
 `)
 
+	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 @@
 }
 `)
 
+	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 @@
 `)
 	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}`)
 
 }
 
--- a/resource/tocss/scss/tocss.go
+++ b/resource/tocss/scss/tocss.go
@@ -93,6 +93,8 @@
 			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)