Sed 缩小文本/HTML模板中的HTML文件

Sed 缩小文本/HTML模板中的HTML文件,sed,mustache,handlebars.js,yui-compressor,http-compression,Sed,Mustache,Handlebars.js,Yui Compressor,Http Compression,我使用胡子/把手模板 例如: ... 要压缩的内容 我希望在模板中压缩/缩小HTML文件,以获得最佳压缩效果 YUIcompressor,闭包不起作用,因为他们认为它是脚本,并给我脚本错误 HTMLCompressor即使认为这是一个脚本,也不会触及它们 如何使用text/html类型缩小脚本标记中的内容? 我能用图书馆吗? 如果不是,sed或egrep是更好的方法吗?您是否有sed/egrep语法来删除空行(只有空格或制表符)、删除所有制表符、修剪额外空格 谢谢。sed-e“s/^[\t]

我使用胡子/把手模板

例如:


... 要压缩的内容
我希望在模板中压缩/缩小HTML文件,以获得最佳压缩效果

YUIcompressor,闭包不起作用,因为他们认为它是脚本,并给我脚本错误

HTMLCompressor即使认为这是一个脚本,也不会触及它们

如何使用text/html类型缩小脚本标记中的内容? 我能用图书馆吗? 如果不是,sed或egrep是更好的方法吗?您是否有sed/egrep语法来删除空行(只有空格或制表符)、删除所有制表符、修剪额外空格

谢谢。

sed-e“s/^[\t]*///g“-e”/^$/d”您的文件
这将从开头删除所有多余的空格和制表符,并删除所有空行

sed-e“s/^[\t]*//g“-e”:a;N;$!ba;s/\N//g”您的文件
这将从开头删除所有额外的空格和制表符,并连接所有代码


如果我遗漏了什么,很抱歉。

尝试使用缩小此类代码。如果没有mime类型,或者如果该类型是各种JavaScript类型之一,则只会假定脚本标记中的内容是JavaScript。它还足够聪明,可以知道哪些空白可以删除,而不会破坏内容的输出或以后递归美化代码。

使用
sed:a;N、 美元!文学士;s/>\s*
如果您不在Windows上,请将双引号更改为单引号。谢谢。它已关闭,但不会移除选项卡。经过一些研究,我发现\t不起作用。您应该按ctrl+v组合键,然后单击命令行上的选项卡。在放入脚本时,应点击选项卡,而不是\t。但事实并非如此。谢谢。在mac iterm2上,当我复制并粘贴到终端上时,它不工作。
sed-e“s/^[\t]*///g“-e”:a;N;$basename utility.js;s/\N//g“
也不工作在mac终端上谢谢。该工具很有前途,但缺少一个简单的命令,如tool-minify.sh等。其他工具,如htmlcompressor、yui,使用起来相当简单如果我们在node.js应用程序中使用“Pretty diff”,它很简单,但如果在普通应用程序中使用,它会非常复杂。您必须构建一个maven类型的脚本,然后执行。如果删除制表符/空格是目的的话,我更喜欢sed而不是这种非常不同的方法。它在使用WSH的Windows中提供了本机命令行支持。请参阅WSH的api。我目前正在开发一个扩展,允许目录和子目录进行比较,而不仅仅是文件比较。对于其他系统,我确实使用文件api.js为Node.js提供了一些支持。Node.js支持有点过时,我计划很快更新。不幸的是,我使用的是mac。如果可能的话,我建议您添加一个.jar,它可以作为.sh运行。如果不是的话,自定义的.sh对unix用户是很好的。我喜欢这个库,并期待着在访问.sh文件时使用它。据我所知,Bash shell不提供JavaScript解释,当前的Unix和Linux发行版也不像Perl解释器那样提供JavaScript解释。在这种情况下,您必须安装一个附加程序,例如Node.js。我对Mac没有太多的经验,所以我可能完全错了。
<script id="contact-detail-template" type="text/html">
    <div>... content to be compressed </div>
</script>