为mime附件包装内联javascript(每行最多72个字符)
Wrapping inline javascript for mime attachment (72 characters MAX per line)
我正在生成一封带有HTML mime附件的电子邮件,该附件需要在离线时可用。HTML需要一些javascript,特别是jQuery和Date.js。
我遇到的问题是,javascript需要行包装后72个字符,我被告知这是CANSPAM的原因。还有一些SMTP服务器会在这么多字符之后强制换行。如果强制换行发生在javascript不能有换行符的地方,它会破坏javascript。(jQuery minified是1连续行,超过72个字符多次)
是否有一个库或工具,我可以用它来解析javascript的文本,并在javascript友好的地方插入换行符?
我的应用程序代码是Ruby。
更新 --line-break 72
在它认为是72个字符时非常慷慨,甚至将函数定义的花括号与函数参数放在同一行。
将其作为--line-break 0
运行并在vim中执行:s/'){/)'r{/g
后,行似乎足够短
YUI Compressor将允许您使用--line-break
选项指定每行的最大列长度:
--line-break Some source control tools don't like files containing lines longer than, say 8000 characters. The linebreak option is used in that case to split long lines after a specific column. It can also be used to make the code more readable, easier to debug (especially with the MS Script Debugger) Specify 0 to get a line break after each semi-colon in JavaScript, and after each rule in CSS.
从经验来看,我看到它更多地将此视为指导方针而不是严格的规则。例如,如果您将换行符设置为80个字符,而您有一个100个字符的字符串,它不会为您将该字符串分隔。
但是,根据您的输入文件,您可能能够使其工作
相关文章:
- 拆分文本以每隔n个字符添加一行新行,并注意空格
- 使用Google Maps API向标记添加多个字符
- 单元格的工具提示或标题不显示超过2000个字符
- 如何显示字符串中最多 200 个字符
- 使用正则表达式匹配长度为六个字符的字母数字字符串
- 第一个字第一个字符第二个字第二个字符,一直到数组结束
- 将字符串分组为n个字符的块,并应用替换
- 如何在ajax中检查密码是否小于8个字符
- 在字符串列表中搜索任何出现的单词,如果单词的第一个字符匹配,则高亮匹配单词.Javascript正则表达式
- 如何使用正则表达式限制字符串的第一个字符
- 如何使用至少一个数字、一个大写字母和6-20个字符验证密码
- 如何在输入文本字段中输入10个字符时自动提交表单
- 如何从日期中分割x个字符
- 在跨度中每3个字符添加一个空格
- 跳过x个字符后,如何打印特定字符串
- 如何在JavaScript中每隔第n个字符分割一个字符串
- jQuery:从数据属性中删除除前4个字符外的所有字符
- 如何在jQuery中搜索两个字符之间的字符串
- 使用 JavaScript 中的正则表达式替换大文本中两个字符之间的每个出现的字符串
- 为mime附件包装内联javascript(每行最多72个字符)