coffeecup
Version:
Markup as CoffeeScript.
91 lines (57 loc) • 4.21 kB
Markdown
**v0.3.6** (2012-4-01):
- added support for SVG 1.1 tags
- fixed Cannot find module 'optparse'
- add uglify.js as dependency
- add safe helper
- works with coffeescript 1.2.x
- works with latest stable version of node 0.6.14
- moved skeleton into separate file
- rewrote all tests in mocha
- add creamer/flatiron examples
**v0.3.1** (2011-09-29):
- Fixed #71: indexOf not supported in IE7 (thanks @jaekwon).
- Added better error reporting to express adapter. [benekastah]
- Added `yield`: see `/docs/reference.md`. Closes #16 (thanks @pyrotechnick, @colinta and @smathy).
- Added prefixed attributes: `data: {icon: 'foo.png'}` renders as `data-icon="foo.png"`. [colinta]
- Added functions as attribute values: `onclick: -> alert 'hi'`. Closes #79 (thanks @smathy).
**v0.3.0** (2011-09-04):
- Fixed #64 (`hardcode` option masked in express adapter). [smathy]
- Added missing elements from the HTML 5 spec (both valid and obsolete). Closes #66 (thanks @aeosynth).
- Added compile to js option to CLI. Closes #58. [rachel-carvalho]
- Fixed #69 (`coffeekup -w` only compiles upon first change). [rachel-carvalho]
**v0.3.0beta** (2011-07-27):
- Added documentation: API reference at `/docs/reference.md` and annotated source at `/docs/coffeekup.html`.
- Added id/class shortcuts: `div '#id.class.class2', 'contents'` (thanks @aeosynth and @payload).
- Added IE conditional comments: `ie 'lt IE8', -> 'IE 7 or less stuff'` (thanks @aeosynth).
- Added `ck.adapters.express` which allows `partial 'foo'` instead of `text @partial 'foo'` - see `/examples/express` (thanks @cushman).
- Added `coffeescript src: 'file.coffee'` and `coffeescript 'string'` - see reference (thanks @henrikh).
- Changed the template param format to align with Express and other templating engines. Now `tpl(foo: 'bar')` makes `foo` accessible as `h1 @foo`. `context` is not used anymore.
- `tpl(locals: {foo: 'bar'})` now always implemented through the `with` keyword (past behavior with `dynamic_locals: true`).
- `tpl(hardcode: {foo: 'bar'})` will hardcode `foo` into the compiled template's body (past behavior with `dynamic_locals: false`).
- Fixed: `coffeescript -> code()` now correctly adds CoffeeScript helpers to the output.
- Changed: using `.call(this);` instead of `();` in js generated by `coffeescript`.
- Fixed: correctly handle numbers and booleans when used as tag contents or attribute values.
- Fixed #50: "`coffeekup -w` quits on syntax error".
- Added: doctypes now editable at `coffeekup.doctypes`, tags at `coffeekup.tags`, and self-closing tags at `coffeekup.self_closing`.
- Added the `ce` doctype.
- Changed: using `doctypes['default']` instead of `doctypes['5']` by default.
- Changed: in `coffeekup.render`, option `cache` is now `false` by default.
- Added a third optional param to `render`. You can pass an object with options and they will be merged with the main object param.
- Removed ck_* locals, now all implementation inside the `__ck` object.
**v0.2.3** (2011-05-06):
- Compatible with npm 1.x.
- Converting any ampersands (instead of /&(?!\w+;/) to & when escaping html.
- New CLI option -o / --output [DIR] (specifies a directory to compile into).
- Self-closing tags are now: 'area', 'base', 'basefont', 'br', 'col', 'frame', 'hr', 'img', 'input', 'link', 'meta' and 'param'.
**v0.2.2** (2011-01-05):
- Updated to CoffeeScript 1.0.0 and node 0.2.6/0.3.3.
**v0.2.1** (2010-11-23):
- Updated to CoffeeScript 0.9.5 and node 0.2.5/0.3.1.
- Fixed string templates compilation in opera.
**v0.2.0** (2010-11-09):
- Huge performance gains, now among the fastest. See `cake benchmark`.
- Compile templates into standalone functions with `coffeekup.compile`.
- Option `format` to add line breaks and indentation to output.
- Escape HTML automatically with the `autoescape` option, or manually with the `h` local.
- CLI behaviour closer to CoffeeScript's: compiles to `filename.html` by default, can watch and recompile with `-w`.
- CLI `-u`/`--utils` option to make build-time utility locals available to templates (currently only `render`).