+
+ }
+
+ public void validateJavascriptCompression(JsRender.JsRender file, WindowState state, string code)
+ {
+ // this uses the roojspacker code to try and compress the code.
+ // it should highlight errors before we actually push live the code.
+
+ // standard error format: file %s, line %s, Error
+
+ var p = new JSDOC.Packer();
+ p.keepWhite = false;
+ p.skipScope = false;
+ p.dumpTokens = false;
+ p.cleanup = false;
+ var estr = "";
+ var ret = new Gee.HashMap<int,string>();
+
+ p.packFile(code, file.filename,"");
+ if (!p.hasErrors("")) {
+ state.showCompileResult(err);
+ }
+
+ if (estr.length > 0 ) {
+
+ var bits = estr.split(",");
+ if (bits.length > 2) {
+ var linebits = bits[1].strip().split(" ");
+ if (linebits.length > 1) {
+ var line = int.parse(linebits[1]);
+ // line is correct - but our standard for error messages is to do it start at '0'
+ ret.set(line -1 , bits[2]);
+ }
+
+ }
+ }
+
+ return ret;
+