var name; function loadStyleSheet(sheet, callback, reload, remaining) { var sheetName = name.slice(0, name.lastIndexOf('/') + 1) + sheet.href; var input = readFile(sheetName); var parser = new less.Parser({ paths: [sheet.href.replace(/[\w\.-]+$/, '')] }); parser.parse(input, function (e, root) { if (e) { print("Error: " + e); quit(1); } callback(root, sheet, { local: false, lastModified: 0, remaining: remaining }); }); // callback({}, sheet, { local: true, remaining: remaining }); } function writeFile(filename, content) { var fstream = new java.io.FileWriter(filename); var out = new java.io.BufferedWriter(fstream); out.write(content); out.close(); } // Command line integration via Rhino (function (args) { name = args[0]; var output = args[1]; if (!name) { print('No files present in the fileset; Check your pattern match in build.xml'); quit(1); } path = name.split("/");path.pop();path=path.join("/") var input = readFile(name); if (!input) { print('lesscss: couldn\'t open file ' + name); quit(1); } var result; var parser = new less.Parser(); parser.parse(input, function (e, root) { if (e) { quit(1); } else { result = root.toCSS(); if (output) { writeFile(output, result); print("Written to " + output); } else { print(result); } quit(0); } }); print("done"); }(arguments));