玉伯同学近期发布了 Closure CompilerYUI Compressor右键菜单插件
而之前基于 YUI Compressor 的同类型工具被称为“TBCompressor”,
(为了区别真正的 YUI Compressor 我用了本文的标题)
一直以来大家伙儿都用这个组合来压缩 JS 和 CSS 文件,
基本上没有什么问题——
除了作者在 compressor.cmd 中所注释的这种情况:
“对于 css 文件,只有(略),情况很少,手工处理”。

那么这次的完善就是针对上述情况而作,
将以前需要手工完成的内容继续交由 cmd 来处理。

请编辑 compressor.cmd 并找到如下代码:

if "%~x1" == ".js" ( copy /y "%RESULT_FILE%" "%RESULT_FILE%.swp" > nul "%JAVA_HOME%\bin\native2ascii.exe" -encoding GB18030 "%RESULT_FILE%.tmp" "%RESULT_FILE%" del /q "%RESULT_FILE%.tmp" )

替换为:

copy /y "%RESULT_FILE%" "%RESULT_FILE%.tmp" > nul "%JAVA_HOME%\bin\native2ascii.exe" -encoding GB18030 "%RESULT_FILE%.tmp" "%RESULT_FILE%" del /q "%RESULT_FILE%.tmp" REM 5. 对于 css 文件,替换 \uxxxx 为 \xxxx by quchao if "%~x1" == ".css" ( SETLOCAL ENABLEDELAYEDEXPANSION FOR /f "delims=" %%u IN ('more /s "%RESULT_FILE%"') DO (IF %%u NEQ "" SET "u=%%u" & SET "u=!u:\u=\!" & >>U ECHO,!u!) SETLOCAL DISABLEDELAYEDEXPANSION MOVE U "%RESULT_FILE%" )

以上代码基于 YUI Compressor 的右键菜单插件
事实上修改方法同样适用于 TBCompressor ,
明早我将知会玉伯。
已知会他,
他选择使用一个软件来实现替换过程,
最终效果一样,
那么大伙儿自行选择吧。

比较懒的同学可以直接下载不才修改后的版本:
DropBox 下载:compressor.cmd
下载后直接覆盖同名文件即可。

标签: JavaScript, YUI

已有 22 条评论

  1. TBCompressor 基于YUICompressor的淘宝封装的css和js压缩工具 | 混迹 IT 好多年!
  2. CSS精简压缩:技巧与工具 | 站长站

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  3. 18个CSS精简压缩工具和技巧 | 中国私服网

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  4. CSS精简压缩:技巧与工具 | 站长站

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  5. CSS压缩大法:技巧与工具 | S9Tech

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  6. 网络钻头 » 18个CSS精简压缩工具和技巧

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  7. 10个在线CSS压缩工具 | 墨城画莎|情侣博客|兴君爱久

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  8. Apple Apple

    win7下不能自动安装,手动把命令写到注册表里了,运行正常。http://ipple.net/lanmp/win7-tbcompressor-yuicompressor.html
    找了半天win7下的docs命令教程也没找到,如果博主有时间可以考虑更新一下这个插件。

  9. 让win7下支持一键使用YUICompressor压缩js、css文件 _苹果园子

    [...]大家知道现在有很多工具可以压缩js、css文件,YUICompressor是其中之一,淘宝团队把这个工具包装了一个可以放在鼠标右键里的TBCompressor,quchao同学又对css压缩部分进行了一下改进,但是昨晚我在自己笔记本上折腾了一晚上,怎么也是装不上,安装的时候就会弹出“安装失败”的错误警告。遂想插件是不是有问题呢,于是今天到公司电脑上试了下,很顺利呀。看来就一种可能性了,系统的问题。[...]

  10. Apple Apple

    win7上安装的时候,报错误警告“安装失败”,但是cmd命令行里提示安装成功。
    而实际上是无法使用的,在右键菜单里没有创建这个压缩项。

    1. Chao QU Chao QU

      @Apple
      你好,
      已经记不清是否在 Win7 有过测试,
      但我是第一次收到这个 bug 。

      其实右键的菜单项可以通过任意的方式去添加,
      只要运行时执行必要的命令即可。
      你可以研究一下哦。

  11. CSS压缩大法:技巧与工具 | ibelieve

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  12. CSS精简压缩:技巧与工具 : 七七学习网-amo

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  13. 18个CSS精简压缩工具和技巧 « 幻岛|领地

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  14. 创意坊 » CSS压缩大法:技巧与工具

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  15. 桌面版CSS压缩工具推荐 | CSSWEBSITE

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  16. shadowkun shadowkun

    把我博客挂上,有时间多逛逛,兄弟!~~

    1. Chao QU Chao QU

      @shadowkun
      哈哈,已加。回头你也给我加上。

  17. 天缘 天缘

    这个是个好东西,怎么说都可以加快网页载入速度了。

  18. 18个CSS精简压缩工具和技巧 | 帕兰映像

    [...]另外,推荐阅读屈超同学的《完善 TBCompressor 对 CSS 文件的压缩过程》。[...]

  19. marc marc

    额,我覆盖了一下,我们的主要是UTF-8编码,压缩CSS的时候提示找不到文件。压缩JS正常

    1. Chao QU Chao QU

      @marc
      编码问题,
      玉伯的这个工具目前需要手动修改 cmd 里的代码来支持 UTF-8,
      如果玉伯不跟进我可以考虑制作一个区别编码的版本。
      :)

添加新评论