2012-10-13 14 views
7

Sto lavorando a un file build di grunt che colpisce un URL e scrive l'output in un file HTML statico. L'url che sto colpendo ha compresso l'HTML e mi piacerebbe stamparlo prima di scrivere sul file statico. Ci sono dei buoni moduli per fare questo? Mi sono guardato intorno e sembra che l'html prettyprinter di Max Ogden sia la mia opzione più vicina (https://github.com/maxogden/commonjs-html-prettyprinter). Forse se lo combino con il task grunt-shell o qualcosa del genere? Veramente preferirei semplicemente richiedere un modulo in grunt e dire pretty (my-file.html) e poi scrivere quello usando fs ma fino ad ora che si sta rivelando sfuggente.Modulo per Pretty Printing HTML?

risposta

15

Hai trovato tutte le risorse di cui hai bisogno. Quel modulo lo fa per te.

var html = require("html"); 
var data = '<h2><strong><a href="http://awesome.com">AwesomeCom</a></strong><span>is awesome</span></h2>'; 
var prettyData = html.prettyPrint(data, {indent_size: 2}); 
process.stdout.write(prettyData) 

Guardate è source.


Oppure si potrebbe usare child_process per eseguire il comando trovato nel README: html *.html.

+0

fantastico, grazie! il mio nodo-fu non è super forte. Ho finito per inviarlo a fs.writeFileSync in questo modo: fs.writeFileSync (dest, html.prettyPrint (body, {indent_size: 2})); dove dest è il percorso finale del file e il corpo è il corpo della risposta http. Grazie! – robdodson

+0

Felice potrei aiutare;) – MiniGod