Skip to content
This repository was archived by the owner on Jul 17, 2022. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
language: groovy
dist: trusty
jdk:
- oraclejdk8
install: ./gradlew resolveAllDependencies test
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ minifyCss {
dest = "${buildDir}/all-min.css"
yuicompressor { // Optional
lineBreakPos = -1
charset = 'UTF-8'
}
}

Expand Down Expand Up @@ -89,6 +90,7 @@ csslint {
- source = File to minify
- dest = File for minified output
- *(Optional)* yuicompressor.lineBreakPos = -1 (default) Insert a line break after the specified column number
- *(Optional)* yuicompressor.charset = 'UTF-8' (default) Read the input file using specified charset (e.g. 'UTF-8', 'ISO-8859-1', etc.)

### gzipCss
- source = File to compress
Expand Down
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -225,6 +225,6 @@ def getPomConfiguration() {
// download dependencies all at once, keeps downloads out of travis output
task resolveAllDependencies {
doLast {
configurations.all { it.resolve() }
configurations.findAll { it.canBeResolved } .each { it.resolve() }
}
}
1 change: 1 addition & 0 deletions plugin.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ task minify(type: com.eriwen.gradle.css.tasks.MinifyCssTask) {
dest = file("${buildDir}/all-min.css")
yuicompressor {
lineBreakPos = 100
charset = 'UTF-8'
}
}

Expand Down
8 changes: 4 additions & 4 deletions src/main/groovy/com/eriwen/gradle/css/CssMinifier.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,18 @@ import com.yahoo.platform.yui.compressor.CssCompressor
* @author Eric Wendelin
*/
class CssMinifier {
private static final String CHARSET = 'UTF-8'
public static final String UTF8_CHARSET = 'UTF-8'

/**
* Given input and output files, minify input file and output to given output file
* @param inputFile File to be minified
* @param outputFile File for minified output
*/
void minifyCssFile(final File inputFile, final File outputFile, final Integer lineBreakPos) {
void minifyCssFile(final File inputFile, final File outputFile, final Integer lineBreakPos, final String charset) {
Reader reader
CssCompressor compressor
try {
reader = new InputStreamReader(new FileInputStream(inputFile), CHARSET)
reader = new InputStreamReader(new FileInputStream(inputFile), charset)
compressor = new CssCompressor(reader)
} finally {
// Close the input stream first, and then open the output stream,
Expand All @@ -31,7 +31,7 @@ class CssMinifier {

Writer writer
try {
writer = new OutputStreamWriter(new FileOutputStream(outputFile), CHARSET)
writer = new OutputStreamWriter(new FileOutputStream(outputFile), charset)
compressor.compress(writer, lineBreakPos)
} finally {
if (writer != null) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,5 @@ import org.gradle.api.tasks.Input
class YuiCompressorExtension {
public static final NAME = "yuicompressor"
@Input Integer lineBreakPos = -1
@Input String charset = CssMinifier.UTF8_CHARSET
}
3 changes: 2 additions & 1 deletion src/main/groovy/com/eriwen/gradle/css/tasks/CssTask.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ class CssTask extends DefaultTask {
private static final CssMinifier MINIFIER = new CssMinifier()

Integer lineBreakPos = -1
String charset = CssMinifier.CHARSET

@TaskAction
def run() {
Expand Down Expand Up @@ -62,7 +63,7 @@ class CssTask extends DefaultTask {
}
}

MINIFIER.minifyCssFile(new File(tempPath), outputFiles[0] as File, lineBreakPos)
MINIFIER.minifyCssFile(new File(tempPath), outputFiles[0] as File, lineBreakPos, charset)

ant.gzip(src: outputPath, destfile: "${outputPath}.gz")
ant.move(file: "${outputPath}.gz", tofile: outputPath)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,6 @@ class MinifyCssTask extends SourceTask {

@TaskAction
def run() {
MINIFIER.minifyCssFile(source.singleFile, dest as File, project.yuicompressor.lineBreakPos)
MINIFIER.minifyCssFile(source.singleFile, dest as File, project.yuicompressor.lineBreakPos, project.yuicompressor.charset)
}
}