From 5a378e7a2ee36f11bb562d2d4672b12ac4ed32a7 Mon Sep 17 00:00:00 2001 From: serr Date: Wed, 1 Jan 2025 17:56:08 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D1=80=D0=B8=20=D0=BE=D0=B1=D1=8A=D0=B5?= =?UTF-8?q?=D0=B4=D0=B8=D0=BD=D0=B5=D0=BD=D0=B8=D0=B8=20=D1=83=D0=B4=D0=B0?= =?UTF-8?q?=D0=BB=D1=8F=D1=8E=D1=82=D1=81=D1=8F=20=D0=BF=D1=80=D0=BE=D0=B1?= =?UTF-8?q?=D0=B5=D0=BB=D1=8B=20=D0=B8=20\n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cssmerger.go | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/cssmerger.go b/cssmerger.go index 2942b34..b1fa4bb 100644 --- a/cssmerger.go +++ b/cssmerger.go @@ -42,14 +42,9 @@ func Merge(root, output string, skipfiles []string) error { return nil } file.Close() - n, err := outFile.Write(data) + _, err = writeFile(outFile, data) if err != nil { - fmt.Printf("Failed to write %s file in %s\n", path, root) - return nil - } - // Если был пустой css, то не добавится перенос строки - if n > 0 { - outFile.WriteString("\n") + fmt.Printf("Failed to write in %s file\n", path) } } // Если возвращаемое значение nil, то обход продолжится @@ -60,6 +55,21 @@ func Merge(root, output string, skipfiles []string) error { return nil } +func writeFile(file *os.File, data []byte) (n int, err error) { + bcount := 0 + for _, char := range data { + if char == '\n' || char == ' ' { + continue + } + n, err := file.Write([]byte{byte(char)}) + if err != nil { + return n, err + } + bcount += n + } + return n, nil +} + // Проверяет есть ли строка в срезе строк func stringSliceContains(s []string, e string) bool { for _, a := range s {