You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by ke...@apache.org on 2010/10/16 09:11:44 UTC
svn commit: r1023199 - in /ant/sandbox/antlibs/minify/trunk/src:
etc/testcases/compress.xml
main/org/apache/ant/js/minify/YUICompressorTask.java
Author: kevj
Date: Sat Oct 16 07:11:43 2010
New Revision: 1023199
URL: http://svn.apache.org/viewvc?rev=1023199&view=rev
Log:
-add addMin property for when you want to rename your minified files to file.min.js
Modified:
ant/sandbox/antlibs/minify/trunk/src/etc/testcases/compress.xml
ant/sandbox/antlibs/minify/trunk/src/main/org/apache/ant/js/minify/YUICompressorTask.java
Modified: ant/sandbox/antlibs/minify/trunk/src/etc/testcases/compress.xml
URL: http://svn.apache.org/viewvc/ant/sandbox/antlibs/minify/trunk/src/etc/testcases/compress.xml?rev=1023199&r1=1023198&r2=1023199&view=diff
==============================================================================
--- ant/sandbox/antlibs/minify/trunk/src/etc/testcases/compress.xml (original)
+++ ant/sandbox/antlibs/minify/trunk/src/etc/testcases/compress.xml Sat Oct 16 07:11:43 2010
@@ -55,10 +55,17 @@
<include name="*.css"/>
</fileset>
</minify:yui.css>
+
+ <!-- rename to .min.js -->
+ <minify:yui.compressor verbose="false" outputPath="${outputPath}" linebreak="80" addMin="true" type="js">
+ <fileset dir="${testscript.dir}">
+ <include name="*.js"/>
+ </fileset>
+ </minify:yui.compressor>
+
</target>
<target name="cleanup">
- <delete file="${output}"/>
<delete dir="${outputPath}"/>
</target>
</project>
\ No newline at end of file
Modified: ant/sandbox/antlibs/minify/trunk/src/main/org/apache/ant/js/minify/YUICompressorTask.java
URL: http://svn.apache.org/viewvc/ant/sandbox/antlibs/minify/trunk/src/main/org/apache/ant/js/minify/YUICompressorTask.java?rev=1023199&r1=1023198&r2=1023199&view=diff
==============================================================================
--- ant/sandbox/antlibs/minify/trunk/src/main/org/apache/ant/js/minify/YUICompressorTask.java (original)
+++ ant/sandbox/antlibs/minify/trunk/src/main/org/apache/ant/js/minify/YUICompressorTask.java Sat Oct 16 07:11:43 2010
@@ -55,6 +55,7 @@ public class YUICompressorTask extends T
private String lineBreak;
private boolean preserveSemi;
private boolean disableOptimization;
+ private boolean addMin;
private String charset;
private String outputPath;
private List inputResources = new ArrayList();
@@ -79,6 +80,9 @@ public class YUICompressorTask extends T
if(null == type || "".equals(type)) {
throw new BuildException("Type property must be specified <js|css>");
}
+ if(!"js".equals(type) && !"css".equals(type)) {
+ throw new BuildException("Type property must be specified <js|css>");
+ }
if(null == charset || "".equals(charset)) {
setCharset("UTF-8");
log("Charset not set; using [UTF-8]");
@@ -131,11 +135,23 @@ public class YUICompressorTask extends T
private Writer getWriter(FileResource f) throws IOException {
Writer out;
+ String outputName = f.getName();
+ // convert filename from file.js to file.min.js or file.css to file.min.css
+ if(addMin) {
+ int fileExtensionPos = outputName.lastIndexOf(".");
+ String name = outputName.substring(0,fileExtensionPos);
+ String extension = outputName.substring(fileExtensionPos, outputName.length());
+ outputName = name + ".min" + extension;
+ log("\naddMin set, renaming to : " + outputName);
+ }
+
+ // set outputPath to be the same as the input path for f
+ if(null == getOutputPath() || "".equals(getOutputPath().trim())) {
+ this.outputPath = f.getBaseDir().getAbsolutePath();
+ }
out = new OutputStreamWriter(
- null != getOutputPath() && getOutputPath().trim() != "" ?
- new FileOutputStream(getOutputPath() + File.separator + f.getFile().getName()) :
- f.getOutputStream()
- );
+ new FileOutputStream(getOutputPath() + File.separator + outputName)
+ );
return out;
}
@@ -191,6 +207,14 @@ public class YUICompressorTask extends T
this.nomunge = nomunge;
}
+ public boolean isAddMin() {
+ return addMin;
+ }
+
+ public void setAddMin(boolean min) {
+ this.addMin = min;
+ }
+
public String getType() {
return type;
}