Bug 963932 - Refactor the output emitted by Parser.jsm to avoid too much useless nesting, r=past