]> Devi Nivas Git - chevron.git/log
chevron.git
11 years agoOnly define UnclosedSection once.
Daniel Morrison [Sun, 16 Nov 2014 06:02:03 +0000 (01:02 -0500)]
Only define UnclosedSection once.

If you define things in a loop it slows down. Go figure.

    42% speedup.

11 years agoImprove newline handling for standalone's.
Daniel Morrison [Sun, 16 Nov 2014 05:43:49 +0000 (00:43 -0500)]
Improve newline handling for standalone's.

Fixes bug in benchmark. No I’m still not sure I understand.

11 years agoFaster html_escape
Daniel Morrison [Sun, 16 Nov 2014 05:28:21 +0000 (00:28 -0500)]
Faster html_escape

- uses string specific speedups
- requires & be handled first
- 33.7% overall speedup… we need this

11 years agoHandle no newline after standalone.
Daniel Morrison [Sun, 16 Nov 2014 05:26:16 +0000 (00:26 -0500)]
Handle no newline after standalone.

11 years agoFix bugginess of {{{}}} style no escape.
Daniel Morrison [Sun, 16 Nov 2014 05:24:24 +0000 (00:24 -0500)]
Fix bugginess of {{{}}} style no escape.

- Checks to ensure delimiters are set correctly.
- Actually remove the }

11 years agoSpecial handling for 'set delimiter?'
Daniel Morrison [Sun, 16 Nov 2014 05:19:15 +0000 (00:19 -0500)]
Special handling for 'set delimiter?'

I don’t understand why, but this helps unit tests pass.

11 years agommap does not actually work like that.
Daniel Morrison [Sun, 16 Nov 2014 05:17:14 +0000 (00:17 -0500)]
mmap does not actually work like that.

- Remove mmap
- Just load the entire file into memory (should be fine)

11 years agoFixed end of file errors.
Daniel Morrison [Sun, 16 Nov 2014 04:10:28 +0000 (23:10 -0500)]
Fixed end of file errors.

11 years agoMore is finished stuff.
Daniel Morrison [Sun, 16 Nov 2014 04:08:39 +0000 (23:08 -0500)]
More is finished stuff.

11 years agoRemove is_finished
Daniel Morrison [Sun, 16 Nov 2014 04:04:57 +0000 (23:04 -0500)]
Remove is_finished

11 years agoremove get()
Daniel Morrison [Sun, 16 Nov 2014 04:02:24 +0000 (23:02 -0500)]
remove get()

11 years agoRemove grab_literal
Daniel Morrison [Sun, 16 Nov 2014 04:00:22 +0000 (23:00 -0500)]
Remove grab_literal

11 years agoChange file-like objects to strings.
Daniel Morrison [Sun, 16 Nov 2014 03:51:52 +0000 (22:51 -0500)]
Change file-like objects to strings.

11 years agoAdded inline comments
noah morrison [Sat, 15 Nov 2014 04:19:52 +0000 (23:19 -0500)]
Added inline comments

And updated the render doc comment

11 years agoMake the unknown tag message more apparent
noah morrison [Sat, 15 Nov 2014 04:16:56 +0000 (23:16 -0500)]
Make the unknown tag message more apparent

Maybe this should throw an exception even

11 years agoUse endswith instead of splicing
noah morrison [Sat, 15 Nov 2014 03:38:46 +0000 (22:38 -0500)]
Use endswith instead of splicing

11 years agoMove the last literal yield up higher
noah morrison [Sat, 15 Nov 2014 03:23:45 +0000 (22:23 -0500)]
Move the last literal yield up higher

Moved it above the standalone checking

11 years agoUse endswith instead of splicing
noah morrison [Sat, 15 Nov 2014 03:02:14 +0000 (22:02 -0500)]
Use endswith instead of splicing

11 years agoUpdated README
noah morrison [Wed, 12 Nov 2014 15:12:40 +0000 (10:12 -0500)]
Updated README

11 years agoAdded complete unpacking ability to render
noah morrison [Wed, 12 Nov 2014 15:11:43 +0000 (10:11 -0500)]
Added complete unpacking ability to render

All of renders args are now KWargs

11 years agoUpdated test.mustache and data.json
noah morrison [Wed, 12 Nov 2014 14:51:36 +0000 (09:51 -0500)]
Updated test.mustache and data.json

11 years agoFixed variables being registered as standalones
noah morrison [Wed, 12 Nov 2014 14:49:29 +0000 (09:49 -0500)]
Fixed variables being registered as standalones

I was never setting is_standalone to false if the tag
was a variable or a no html escape tag

11 years agoRemoved unneeded if statement
noah morrison [Wed, 12 Nov 2014 14:30:46 +0000 (09:30 -0500)]
Removed unneeded if statement

11 years agoFixed partial standalones
noah morrison [Wed, 12 Nov 2014 02:44:22 +0000 (21:44 -0500)]
Fixed partial standalones

Partial standalone tags do not have the whitespace stripped from them

11 years agoAdded partial padding
noah morrison [Wed, 12 Nov 2014 02:36:06 +0000 (21:36 -0500)]
Added partial padding

Partials now can be indented in a silly manner based on the spec

(the silly manner being variables inside the partial have a
 god given ability to reset the indentation)

11 years agoFixed set delimiter tags nomming a character
noah morrison [Tue, 11 Nov 2014 03:17:00 +0000 (22:17 -0500)]
Fixed set delimiter tags nomming a character

11 years agopep8
noah morrison [Tue, 11 Nov 2014 02:15:10 +0000 (21:15 -0500)]
pep8

oops....

11 years agoFix standalones failing to register.
Daniel Morrison [Tue, 11 Nov 2014 01:33:21 +0000 (20:33 -0500)]
Fix standalones failing to register.

11 years agoFixed random character nomming
noah morrison [Tue, 11 Nov 2014 01:32:46 +0000 (20:32 -0500)]
Fixed random character nomming

11 years agoFixed falsy scopes exiting prematurely
noah morrison [Tue, 11 Nov 2014 01:01:30 +0000 (20:01 -0500)]
Fixed falsy scopes exiting prematurely

11 years agoAdded current scope key (.)
noah morrison [Tue, 11 Nov 2014 00:50:13 +0000 (19:50 -0500)]
Added current scope key (.)

11 years agoFixed partial scoping
noah morrison [Tue, 11 Nov 2014 00:49:11 +0000 (19:49 -0500)]
Fixed partial scoping

partials would not get their parent's partial detials
(partials_path, partials_ext, partials_dict)

11 years agoAdded section looping
noah morrison [Tue, 11 Nov 2014 00:48:08 +0000 (19:48 -0500)]
Added section looping

( note: not implemented on inverted sections! )

11 years agoMake unittests easier to deal with.
Daniel Morrison [Mon, 10 Nov 2014 03:48:01 +0000 (22:48 -0500)]
Make unittests easier to deal with.

- Test everything

    ./test_spec.py

- Test suite

    ./test_spec.py inverted

- Test unit

    ./test_spec.py inverted.test_7

11 years agoFixed html escaping on double quotes
noah morrison [Mon, 10 Nov 2014 03:12:02 +0000 (22:12 -0500)]
Fixed html escaping on double quotes

I   am   an   moron

11 years agoFixed variables being standalones
noah morrison [Mon, 10 Nov 2014 03:11:04 +0000 (22:11 -0500)]
Fixed variables being standalones

11 years agoBegan fixing standalones
noah morrison [Sun, 9 Nov 2014 01:19:24 +0000 (20:19 -0500)]
Began fixing standalones

* stopped closing the file, instead use a variable
  so I can reach the end of the file and seek back

* moved literal yielding to the end of the tokenize function
  so I can remove whitespace from it if it's before a standalone

* stopped set_delimiter? from continuing the while loop
  so I can handle the standalone

* added standalone handling, which checks the left and the right
  parts of every tag to see if it's all alone on a line. And if so
  it will edit the whitespace in the literals

11 years agoFixed IndexError on scopes
noah morrison [Sat, 8 Nov 2014 03:00:38 +0000 (22:00 -0500)]
Fixed IndexError on scopes

If there are no scopes it defaults to None

11 years agoget_key now defaults to ''
noah morrison [Sat, 8 Nov 2014 02:59:08 +0000 (21:59 -0500)]
get_key now defaults to ''

Instead of return None, get_key now returns an empty string.

Also wrapped get_key calls in str

11 years agoFixed get_partial raising an error
noah morrison [Sat, 8 Nov 2014 02:56:27 +0000 (21:56 -0500)]
Fixed get_partial raising an error

get_partial would throw an error when no partial was found.
Now it just returns an empty StringIO (and thus an empty partial).

11 years agoAdded support for delimiters to be any size
noah morrison [Thu, 6 Nov 2014 22:25:05 +0000 (17:25 -0500)]
Added support for delimiters to be any size

Instead of needing them to be 2 characters.

Also ignores all spaces in the center (instead of expecting one).

And fixed a bug where delimiters would eat some trailing characters!

11 years agoAdded the parameter partials_dict to render
noah morrison [Thu, 6 Nov 2014 22:23:07 +0000 (17:23 -0500)]
Added the parameter partials_dict to render

partials_dict will be searched before the filesystem is.
It is an easy way to only use strings and not need the filesystem.

11 years agoUpdated unittests to deal with partials.
noah morrison [Thu, 6 Nov 2014 22:16:10 +0000 (17:16 -0500)]
Updated unittests to deal with partials.

11 years agoFixed python 2 StringIO bug
noah morrison [Thu, 6 Nov 2014 20:34:32 +0000 (15:34 -0500)]
Fixed python 2 StringIO bug

In python 2 strings were not being converted to StringIOs.

The new method assumes that template is a string and tries to convert
it to a StringIO. If that fails then it assumes a file-like object.

11 years agoFixed whitespace stripping
noah morrison [Thu, 6 Nov 2014 20:25:14 +0000 (15:25 -0500)]
Fixed whitespace stripping

In the last commit I changed how tag_key was being grabbed.
This broke the way that I was stripping the whitespace.
(whitespace from the front was staying)

11 years agoRemoved peek
noah morrison [Thu, 6 Nov 2014 02:47:05 +0000 (21:47 -0500)]
Removed peek

Peek had a lot of file-object calls that were not needed,
and was an easy removal.

11 years agoRemoved cgi import
noah morrison [Wed, 5 Nov 2014 02:30:36 +0000 (21:30 -0500)]
Removed cgi import

Made my own html escape function to replace the cgi import.

Also updated the test.mustache and data.json files to have an
escaped string get printed.

11 years agoRemoved the 3 from the readme
noah morrison [Mon, 3 Nov 2014 22:00:48 +0000 (17:00 -0500)]
Removed the 3 from the readme

As far as I'm aware this project works on python2 and python3.

If this is not true it is a bug.

11 years agoRename project to entei
noah morrison [Mon, 3 Nov 2014 21:57:20 +0000 (16:57 -0500)]
Rename project to entei

11 years agoFixed the bug from last night.
noah morrison [Mon, 3 Nov 2014 21:40:48 +0000 (16:40 -0500)]
Fixed the bug from last night.

Removed some leftover code from testing that messed things up.

11 years agoAdded some documentation
noah morrison [Mon, 3 Nov 2014 04:43:51 +0000 (23:43 -0500)]
Added some documentation

And fixed some pep8 problems.

also... the code seems to not be rendering right...
how long has that been happening?

11 years agoMade unit tests more descriptive
noah morrison [Sat, 1 Nov 2014 20:33:14 +0000 (16:33 -0400)]
Made unit tests more descriptive

11 years agoFixed Indented Multiline Standalone failure
noah morrison [Sat, 1 Nov 2014 20:30:28 +0000 (16:30 -0400)]
Fixed Indented Multiline Standalone failure

* Handle empty data
* Close file instead of EOFError
* Yield final literal

11 years agoAdded unit tests
noah morrison [Sat, 1 Nov 2014 19:43:19 +0000 (15:43 -0400)]
Added unit tests

11 years agoUpdated the README
noah morrison [Sat, 1 Nov 2014 19:24:53 +0000 (15:24 -0400)]
Updated the README

11 years agoAdded a render function
noah morrison [Sat, 1 Nov 2014 19:20:45 +0000 (15:20 -0400)]
Added a render function

Render takes a template and data dictionary and returns
a mustache rendered string.

Also updated the test.mustache and added a partial.mustache file.

11 years agoStopped tokenize from yielding comment tags
noah morrison [Sat, 1 Nov 2014 19:18:53 +0000 (15:18 -0400)]
Stopped tokenize from yielding comment tags

11 years agoFixed "no escape?" bug
noah morrison [Sat, 1 Nov 2014 17:23:51 +0000 (13:23 -0400)]
Fixed "no escape?" bug

Triple brace tags were yielding "no escape?" instead of "no escape".

11 years agoDRY'd the code some
noah morrison [Sat, 1 Nov 2014 16:50:26 +0000 (12:50 -0400)]
DRY'd the code some

Added a function to grab literals and tag keys,
since the code was very similar and in two places.

Also the grab_literal function is probably more efficent,
as it doesn't peek so much.

11 years agoAdded some documentation
noah morrison [Sat, 1 Nov 2014 16:49:53 +0000 (12:49 -0400)]
Added some documentation

Documented the tokenize function.

11 years agoUpdated README
noah morrison [Fri, 31 Oct 2014 20:42:03 +0000 (16:42 -0400)]
Updated README

11 years agoChanged tokenize to use file like objects
noah morrison [Fri, 31 Oct 2014 20:36:57 +0000 (16:36 -0400)]
Changed tokenize to use file like objects

tokenize now takes a file object (or file like object).
If tokenize is given a string it turns it into a file like object.

Also renamed look to peek.

11 years agoChanged sys import to just import argv
noah morrison [Fri, 31 Oct 2014 19:38:23 +0000 (15:38 -0400)]
Changed sys import to just import argv

11 years agoRemoved unnecessary custome exception
noah morrison [Fri, 31 Oct 2014 19:06:52 +0000 (15:06 -0400)]
Removed unnecessary custome exception

The custome exception EOF was not needed,
there is a built-in one called EOFError.

11 years agoAdded section detection
noah morrison [Fri, 31 Oct 2014 19:00:03 +0000 (15:00 -0400)]
Added section detection

Unclosed sections now raise an error

11 years agoFixed README.md syntax
noah morrison [Fri, 31 Oct 2014 18:39:31 +0000 (14:39 -0400)]
Fixed README.md syntax

11 years agoAdded nicer file targeting
noah morrison [Fri, 31 Oct 2014 18:35:43 +0000 (14:35 -0400)]
Added nicer file targeting

You can now specify the data and template files from the command line.
Also added a data.json file, even though it is currently unused.

11 years agoFixed the mustache file
noah morrison [Thu, 30 Oct 2014 22:06:35 +0000 (18:06 -0400)]
Fixed the mustache file

test.mustache was invalid, I forgot to close a tag and used html inside
the non html-escaped tags (instead of a json variable name).

11 years agoinitial commit
noah morrison [Thu, 30 Oct 2014 02:43:15 +0000 (22:43 -0400)]
initial commit