diff options
Diffstat (limited to 'tmp/todo')
-rw-r--r-- | tmp/todo | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/tmp/todo b/tmp/todo new file mode 100644 index 00000000..50bec924 --- /dev/null +++ b/tmp/todo @@ -0,0 +1,75 @@ +a = a + x ==> a+=x + +******* + +join consecutive var statements + +******* + +x == false ==> x == 0 +x == true ==> x == 1 + +should warn too; +JS is so sloppy that this could be an indication of a bug. + +******* + +x, x ==> x +x = foo, x ==> x + +other similar cases? + +******* + +Try to concatenate all scripts somehow before starting minification; +the issue will be keeping track of the current source file for +generating source maps. perhaps store that in the AST? Have a single +AST_Toplevel for all files. + +XXX? Not sure if this is worth the trouble. + +******* + +discard spurious break statements + +******* + +for (...) { + if (foo) continue; + ... +} + +==> + +for (...) { + if (!foo) { ... } +} + +******* + +The following seems to compress suboptimally. Should probably run more +passes somewhere. + +function setOpacity(el, o) { + if (o != null) { + if (o == "" && o != 0) { + is_ie + ? el.style.filter = "" + : el.style.opacity = ""; + } else { + is_ie + ? el.style.filter = "alpha(opacity=" + Math.round(o * 100) + ")" + : el.style.opacity = o; + } + return o; + } else { + if (!is_ie) + return parseFloat(el.style.opacity); + else + if (/alpha\(opacity=([0-9.])+\)/.test(el.style.opacity)) + return parseFloat(RegExp.$1); + } +} + +******* + |