David Winegar
8b5d6f9a3b
Changes to table close handling
Fix problem in which fake table closes were causing a problem inside
cells. Changed inline table handling to fix this.
há 9 anos
David Winegar
457b224045
Add padding to table cell tags
Padding now included on all wiki table cells. With wiki table cells
that include attributes, `wiki_markup` is also included (unchanged).
há 9 anos
David Winegar
ddaa3ec92a
Reorder table tokenizer methods for forward declaration
Make sure py tokenizer methods only call methods that have been declared
earlier. Not necessary but makes it much easier to maintain/write
the C tokenizer if methods are in the same order.
há 9 anos
David Winegar
842af20c38
fixed hacky table cell style exception, added tests
Removed the `StopIteration()` exception for handling table style
and instead call `_handle_table_cell_end()` with a new parameter.
Also added some random tests for table openings.
há 9 anos
David Winegar
f1664a8d67
Updated row and table handling
Changed row recursion handling to make sure the tag is emitted even
when hitting recursion limits. Need to test table recursion to make
sure that works. Also fixed a bug in which tables were eating the
trailing token. Added several tests for rows and trailing tokens with
tables.
há 9 anos
David Winegar
ec08001871
Tables and rows now use newline as padding
Tables and rows use newlines as padding, partly because these characters
are pretty important to the integrity of the table. They might need
to be in the preceding whitespace of inner tags instead as padding after,
not sure.
há 9 anos
David Winegar
9e4bb0c7e5
Clean up and style changes
Added comments, tried to keep to 80 character lines.
há 9 anos
David Winegar
d356a570b3
Added closing_wiki_markup support to Tag node
Added support for allowing different wiki syntax for replacing the opening
and closing tags. Added for table support.
há 9 anos
David Winegar
9f159ecfa2
Add table start/row start style attribute support
Started styling attributes for table row and table start. Still not entirely
sure about this, definitely need to make changes regarding padding.
há 9 anos
David Winegar
0bba69d5dc
Added tests/support for header cells
Support for header cells was mostly in already, just needed minor
changes. Added two tests as well.
há 9 anos
David Winegar
a13bc948fa
Started table cell attribute support
Started support for parsing table style attributes. I suspect some
of this is incorrect, need to add more tests to see.
há 9 anos
David Winegar
b7e40d7b5a
Table cells now recurse
Added another stack layer for tokenizing table cells because of
styling/correctness of implementation. Added many tests cases.
há 9 anos
David Winegar
a8d2983161
Started table parsing in PyTokenizer
Started parsing table support and added the start of table support.
This is a big commit (ugh) and it should probably be split up into
multiple smaller ones if possible, but that seems unworkable as of
right now because of all the dependencies. Also breaks tests of
CTokenizer (double ugh) because I haven't started table support there.
May want to pick line by line on this commit later but I need to save
my work for now.
há 9 anos
Ben Kurtovic
87e0079512
Take proper advantage of Sphinx's default domains.
há 9 anos
Ben Kurtovic
bbd4cd97cf
Add tests for some missed things in Wikicode.
há 9 anos
Ben Kurtovic
e294ee6298
Improve ListProxy detaching behavior.
há 9 anos
Ben Kurtovic
6954480263
Fix template parsing when comments are inside the name ( fixes #59 ).
há 9 anos
Ben Kurtovic
871d48c688
Solve a couple more coverage issues; tighten.
há 9 anos
Ben Kurtovic
ded89fb14e
Add a few unit tests for untested code; remove a useless conditional.
há 10 anos
Ben Kurtovic
963cb2f780
Store builder handlers in a dictionary. ~5% speedup.
há 10 anos
Ben Kurtovic
b997e4cd71
Support attributes quoted with '; add required quotes in value setter.
há 10 anos
Ben Kurtovic
a4c2fd023a
Remove some useless code in the tokenizers.
há 10 anos
Ben Kurtovic
8bc7ea669d
Improve test coverage; fix some node-related bugs.
* Parameters with non-integer keys can no longer be created with
showkey=False, nor have the value of this attribute be set to False
later.
* Calling Template.remove() with a Parameter object that is not part of
the template now raises ValueError instead of doing nothing.
* Added tests for HTMLEntity._unichr() being called with out-of-range
codepoints.
* Added tests for Tag.__children__() and Tag.__showtree__() involving
attributes that have no values.
há 10 anos
Ben Kurtovic
08cafc0576
Raise ParserError for internal problems. Improve coverage. Cleanup.
há 10 anos
Ben Kurtovic
9412579d86
Remove unnecessary unicode_literals.
há 10 anos
Ben Kurtovic
02eff0fc49
Fully fix #74 . Add another tokenizer test.
há 10 anos
Ben Kurtovic
34a6c7cc4c
Typo fix.
há 10 anos
Ben Kurtovic
c95802f9cc
Allow recursing through everything except the forced type ( fixes #70 )
há 10 anos
Ben Kurtovic
b4b62026f8
Update changelog, docs.
há 10 anos
Ben Kurtovic
0101c038fb
Python 3, grr.
há 10 anos
Ben Kurtovic
0497b54f03
Fix _handle_single_tag_end()'s token search order ( fixes #74 )
há 10 anos
Ricordisamoa
9108d49d68
fix some typos: occurance → occurrence, parasable → parsable
há 10 anos
Ben Kurtovic
d342831af8
Allow passing skip_style_tags to parse() ( fixes #73 )
há 10 anos
Ben Kurtovic
99cf0a4412
Version bump to 0.4.dev.
há 10 anos
Ben Kurtovic
9953fd5585
release/0.3.3
há 10 anos
Ben Kurtovic
454890ab0d
Fix docstring for Wikicode.strip_code().
há 10 anos
Marcio Faustino
f616e6b3b7
Avoid custom constructor and sub-class `dict` directly instead.
Before:
$ python -m timeit -s 'from mwparserfromhell.parser.tokens import Text' 'Text(text = "abc")'
1000000 loops, best of 3: 0.91 usec per loop
After:
$ python -m timeit -s 'from mwparserfromhell.parser.tokens import Text' 'Text(text = "abc")'
1000000 loops, best of 3: 0.223 usec per loop
há 10 anos
Ben Kurtovic
cf7ab558bf
Make Wikicode.get_sections() much faster ( closes #63 ).
Patch mostly by @spointy .
há 10 anos
Ben Kurtovic
5c5fd6b3cb
Fix a bug involving nested links ( closes #61 and #62 ).
há 10 anos
Ben Kurtovic
1312a1fb8a
Some clean up for Python 2.6 support.
* Removed unittest2 dependency on Python >2.6.
* Moved discover_tests.py into tests/.
* tokenizer.c: Fixed errors noted by -Wshorten-64-to-32.
há 10 anos
Marcio Faustino
3d1329aa3a
Don't assume it's a named tuple to support Python 2.6.
há 10 anos
Marcio Faustino
ee194fb07a
Use a generator expression instead to support Python 2.6.
há 10 anos
Marcio Faustino
9650cd6276
Support `.encode()` keyword arguments for Python 2.6.
há 10 anos
Ben Kurtovic
e5f17eea00
Update copyright notices for 2014.
há 10 anos
Ben Kurtovic
1607687c37
Remove unused import; fix indentation.
há 10 anos
Ben Kurtovic
3d6079d831
Mixed up py3k and py2k.
há 10 anos
Ben Kurtovic
f0a591b323
Move get_children() out of utils.
há 10 anos
Ben Kurtovic
c0fb7c030a
Implement new search protocol in Wikicode.
há 10 anos
Ben Kurtovic
45aec31629
Move range/xrange compatibility code to compat.py.
há 10 anos
Ben Kurtovic
99d433c2d5
Change protocol for Node iteration; rename __iternodes__ to __children__.
há 10 anos