Yehuda Katz
17ee7ffaca
Merge pull request #388 from dmarcotte/empty-inverse-blocks
...
Allow empty blocks around simple inverses
2012-12-23 20:31:46 -08:00
Les Hill
4bb794d814
Partials can be paths
...
Allows partials with slashes, a common partial syntax. For example:
{{> shared/dude}}
2012-12-13 11:15:38 -08:00
Daniel Marcotte
4cfda479fa
Allow empty blocks around simple inverses
...
Previously, the parser required at least one character of whitespace
to properly interpret empty blocks around simple inverses, which was
non-intuitive and inconsistent with empty block parsing.
Update the parser to allow empty blocks around simple inverses.
2012-12-11 09:47:49 -08:00
Yehuda Katz
a927a9b0ad
Add block comment syntax:
...
{{!-- can contain
{{handlebars expressions}} --}}
2012-10-15 13:51:53 -04:00
Les Hill
a1c9acb8b1
Escaped single quotes in hash arguments
2012-09-22 08:09:33 -07:00
tomhuda
5a6e4f1ddd
Fix repeated delimiter escaping
2012-09-12 20:44:48 -07:00
Les Hill
9ce3032678
Recognize bar='baz' hash argument
2012-08-14 23:12:22 -07:00
Yehuda Katz
72e05d623c
Add support for @data variables
2012-07-05 22:43:05 -07:00
tomhuda
175c6fae0f
More cleanup
...
* Make block and inverse use the main helper path
* Eliminate separate inverse AST node
2012-05-28 17:00:41 -07:00
Peter Wagenet
0b97fea56f
Fixed error in lexer
2012-02-08 20:49:50 -08:00
Peter Wagenet
2ea95ca08d
Fixed whitespace and semi-colons
2012-02-08 20:49:49 -08:00
Yehuda Katz
c79c761460
Add support for escaping mustaches
2011-12-27 17:04:59 -08:00
Yehuda Katz
932e2970ad
Realign lexer actions
2011-12-27 01:23:28 -08:00
Yehuda Katz
373d10edb1
Literal square-bracket path segments cannot have ] in them. TODO: Allow escaped path segments.
2011-12-27 01:21:53 -08:00
Chris Broadfoot
f6070f0084
Fix support for Rhino
2011-12-20 10:43:37 +11:00
Mike Moulton
42e31ef6db
Escaping a '/' in the ID regex. This was preventing handelbars.js from loading in Rhino.
2011-11-22 22:46:29 -08:00
Alan Johnson
fc84308cc9
Got simple literal expressions added into paths.
2011-09-02 09:04:41 -04:00
tomhuda
1482f1ae72
Add BOOLEAN support
2011-06-01 22:57:22 -07:00
tomhuda
0f78345d0c
Add support for INTEGER expressions
2011-06-01 22:33:48 -07:00
Schuyler Duveen
4e5cf17311
support "$" as an ID character: google has a bunch of json that has $t, etc values
2011-05-13 11:40:31 -04:00
wycats
a4ca50533d
Add support for line-breaks in mustaches
2011-05-12 12:23:15 -07:00
Yehuda Katz
3e5bc84058
Merge pull request #69 from rgrove/allow-hyphens.
...
Allow ids to contain hyphens. Fixes #36 .
2011-05-03 19:01:37 -07:00
Ryan Grove
b324d002ca
Allow ids to contain hyphens. Fixes #36 .
...
Previously, a mustache like {{foo-bar}} would generate a
parse error, which was a departure from the behavior of
other Mustache implementations.
2011-04-28 22:30:21 -07:00
Ryan Grove
aba636ec38
Support multi-line comments.
...
{{!
Like this.
}}
2011-04-18 16:08:20 -07:00
tomhuda
ca9b9671a5
Add Hash arguments to simple mustaches (TODO: add Hash args to block helpers)
2011-03-04 00:11:03 -08:00
tomhuda
e0aa705f71
Add support for hash args in the tokenizer and parser
2011-03-03 21:33:28 -08:00
tomhuda
51d2543ba1
Add support for {{foo.bar.baz}}
2011-03-03 20:08:28 -08:00
Alan Johnson
e6b14fa934
Put null byte on content match instead of [^]
2011-01-25 21:13:39 -05:00
David Stone
dd4c03d0e3
IE doesn't like negated empty character classes.
...
Changing this to match the "dot" character class wouldn't work, though, because . doesn't match invisible whitespace like newlines, so we need to include those specifically.
2011-01-19 16:22:28 -08:00
wycats
fa5853079f
arrrrg
2011-01-10 16:00:09 -08:00
wycats
ce1ed0dc4a
Fix for shitty JS regex engines.
2011-01-10 15:47:11 -08:00
wycats
bf6c74aa83
Restructure things more simply
2010-12-29 18:21:43 -08:00
Zach Carter
97536f897e
Switch to Jison's lexer.
2010-12-14 19:07:05 -05:00
wycats
f205cec745
Finish compatibility with the old handlebars:
...
* foo"bar" is an invalid param
* {{foo}}bar{{/baz}} is invalid
* fix a number of issues with inverse sections
* add partials
2010-12-03 16:49:04 -05:00
wycats
c89ecf80a5
Inverse should really be its own node, as it has totally different runtime semantics
2010-12-03 01:10:14 -05:00
wycats
8f6f3051e6
Add support for inverted sections in the parser
2010-12-03 00:54:18 -05:00
wycats
87b526df27
Allow empty blocks.
2010-12-02 01:27:41 -05:00
wycats
762329913d
Fix a number of outstanding issues:
...
* {{}} escape their contents, {{{}}} and {{& }} do not
* Add support in the parser, tokenizer and AST for partials
with context (support is still not there in the runtime)
* Fix some inconsistencies with the old behavior involving
the correct printing of null and undefined
* Add Handlebars.Exception
* Fixed an issue involving ./foo and this/foo
* Fleshed out helperMissing in the specs (this will be
moved out into handlebars proper once registerHelper
and registerPartial are added)
2010-12-02 01:13:24 -05:00
wycats
f8b245896d
Make the ID node capable of handling paths
...
TODO: handle invalid paths in the tokenizer or parser
TODO: invalidate "{{ foo/ bar }}"
2010-11-25 16:12:50 -08:00
wycats
85fa2cb65f
Initial commit. Note that I'm using CommonJS modules and node purely to help me develop this. If this ends up being useful, I will likely distribute the entire package as a single JS file for easier consumption in the browser.
2010-11-25 00:50:57 -08:00