Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/donpark/html2jade
Converts HTML to Jade template. Not perfect but useful enough for non-daily conversions.
https://github.com/donpark/html2jade
Last synced: 25 days ago
JSON representation
Converts HTML to Jade template. Not perfect but useful enough for non-daily conversions.
- Host: GitHub
- URL: https://github.com/donpark/html2jade
- Owner: donpark
- License: mit
- Created: 2011-04-23T15:12:44.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2017-04-24T04:35:25.000Z (over 7 years ago)
- Last Synced: 2024-10-06T04:02:55.111Z (about 1 month ago)
- Language: HTML
- Homepage:
- Size: 184 KB
- Stars: 1,175
- Watchers: 45
- Forks: 157
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-pug - html2pug
- awesome-starred - donpark/html2jade - Converts HTML to Jade template. Not perfect but useful enough for non-daily conversions. (others)
README
# html2jade #
[![Build Status](https://travis-ci.org/donpark/html2jade.png?branch=master)](https://travis-ci.org/donpark/html2jade)`html2jade` converts HTML into [Jade](https://github.com/visionmedia/jade) format.
This module is now maintained by [@aichholzer](https://github.com/aichholzer)
## Status ##
Mostly usable but sometimes requires fixing up, usually involving conditionals and scripts indentation.
While converting a fairly complicated theme package with ~20 HTML files, I had to hand-edit just twice.
Compatible with Node.js 4.0+ (verified with v4.2.4) but likely **NOT** with Node.js 0.11.x, 0.12.x, and io.js.
## Requirements
`html2jade` version prior to 0.7 support OS X and Linux only.
`html2jade` version 0.7+ should support OS X, Windows, and Linux.
## Install ##
npm install -g html2jade
## Command-line Usage ##
Outputs to stdout if input is URL
html2jade http://twitter.com
html2jade http://twitter.com > twitter.jade
Outputs to file if input is file
html2jade mywebpage.html # outputs mywebpage.jade
html2jade public/*.html # converts all .html files to .jadeConvert HTML from `stdin`
cat mywebpage.html | html2jade -
To generate [Scalate](http://scalate.fusesource.org/) compatible output:
html2jade --scalate http://twitter.com
html2jade --scalate http://twitter.com > twitter.jade
html2jade --scalate mywebpage.html
html2jade --scalate public/*.html### Command-line Options ###
* `-d, --double` - use double quotes for attributes
* `-o, --outdir ` - path to output generated jade file(s) to
* `-n, --nspaces ` - the number of spaces to indent generated files with. Default is 2 spaces
* `-t, --tabs` - use tabs instead of spaces
* `--donotencode` - do not html encode characters. This is useful for template files which may contain expressions like {{username}}
* `--bodyless` - do not output enveloping html and body tags
* `--numeric` - use numeric character entities
* `-s, --scalate` - generate [Scalate](http://scalate.fusesource.org/) variant of jade syntax
* `--noattrcomma` - omit attribute separating commas
* `--noemptypipe` - omit lines with only pipe ('|') printable character## Programmatic Usage (>= 0.0.7)
To convert raw HTML into Jade:
var html2jade = require('html2jade');
var html = "Hello World";
html2jade.convertHtml(html, {}, function (err, jade) {
// do your thing
});To convert DOM document into Jade (client-side):
// assumes html2jade.js file has been loaded
Html2Jade.convertDocument(document, {}, function (err, jade) {
// do your thing
});
## Converting Mustache/Handlebars TemplatesJade is commonly used to generate HTML with embedded Mustache or Handlebars templates.
Be sure to use version 0.8+ if you use template expressions in element IDs or CSS class names
to avoid generating invalid Jade files.## Tools using `html2jade` ##
### Web version ###
There is a [web version](http://html2jade.aaron-powell.com/) of `html2jade`,
kindly provided by [@aaronpowell](https://github.com/aaronpowell).Pascal Garber's [jade2html2jade](https://github.com/JumpLink/jade2html2jade) does roundtrip from jade to HTML and back. [Online demo](http://jumplink.github.io/jade2html2jade/).
### Linux tray app ###
[Miniclip](http://myguidingstar.github.com/miniclip/) is a Linux tray app that quickly converts
HTML to Jade, CSS to Stylus and JS to Coffee from clipboard.## Testing ##
As of version 0.4, there is a simple unit test that converts HTML files in `test/data` directory
and compare them against Jade files in the same directory. Unit test harness requires `coffee-script`
and `mocha` to be installed globally. Run the tests with command `npm test`.## Useful forks ##
If you're having issues with `br` line-breaks which apparently Jade has some problems with,
try [@smaudet](https://github.com/smaudet)'s
[`fix-breaklines`](https://github.com/smaudet/html2jade/tree/fix-breaklines) branch.