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.
10 anni fa
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.
10 anni fa
Ben Kurtovic
bbd4cd97cf
Add tests for some missed things in Wikicode.
10 anni fa
Ben Kurtovic
e294ee6298
Improve ListProxy detaching behavior.
10 anni fa
Ben Kurtovic
6954480263
Fix template parsing when comments are inside the name ( fixes #59 ).
10 anni fa
Ben Kurtovic
fc529bdb57
Add unit tests for #59 .
10 anni fa
Ben Kurtovic
871d48c688
Solve a couple more coverage issues; tighten.
10 anni fa
Ben Kurtovic
ded89fb14e
Add a few unit tests for untested code; remove a useless conditional.
10 anni fa
Ben Kurtovic
963cb2f780
Store builder handlers in a dictionary. ~5% speedup.
10 anni fa
Ben Kurtovic
b997e4cd71
Support attributes quoted with '; add required quotes in value setter.
10 anni fa
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.
10 anni fa
Ben Kurtovic
08cafc0576
Raise ParserError for internal problems. Improve coverage. Cleanup.
10 anni fa
Ben Kurtovic
d8adb62454
Some tweaks, but no change in functionality.
10 anni fa
Merlijn van Deen
3dd29097e4
_test_tokenizer: force utf-8 file encoding
10 anni fa
Ben Kurtovic
02eff0fc49
Fully fix #74 . Add another tokenizer test.
10 anni fa
Ben Kurtovic
c95802f9cc
Allow recursing through everything except the forced type ( fixes #70 )
10 anni fa
Ben Kurtovic
0497b54f03
Fix _handle_single_tag_end()'s token search order ( fixes #74 )
10 anni fa
Ben Kurtovic
5c5fd6b3cb
Fix a bug involving nested links ( closes #61 and #62 ).
10 anni fa
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.
10 anni fa
Marcio Faustino
88c8fb88e0
Switch to `unittest2` to be able to use new features in Python 2.6.
10 anni fa
Ben Kurtovic
e5f17eea00
Update copyright notices for 2014.
10 anni fa
Ben Kurtovic
c0fb7c030a
Implement new search protocol in Wikicode.
11 anni fa
Ben Kurtovic
45aec31629
Move range/xrange compatibility code to compat.py.
11 anni fa
Ben Kurtovic
44484daef3
Updating tests for new __children__ protocol.
11 anni fa
Ben Kurtovic
c8485bf56b
Python 3.2 is weird.
11 anni fa
Ben Kurtovic
39c0756130
Make StringMixIn a lot simpler thanks to __getattr__.
11 anni fa
Ben Kurtovic
1946cf621d
Add a temporary skip_style_tags until we resolve some issues.
11 anni fa
Ben Kurtovic
8df596ba08
Re-added 'flat' argument to Wikicode.get_sections().
Requested by Σ.
11 anni fa
Ben Kurtovic
79bf42df1c
Wikicode.get_sections() now returns sections in the correct order.
Reported by Σ.
11 anni fa
Ben Kurtovic
066049b46a
Update email address.
11 anni fa
Ben Kurtovic
aabe711ee6
Wikicode.matches() can now take a tuple or list.
11 anni fa
Ben Kurtovic
cf90557229
Template.has() should be passed ignore_empty=False by default.
**Breaking change**; closes #51 .
11 anni fa
Ben Kurtovic
5e6c994c2c
Wikicode.matches() now accepts tuples ( closes #48 )
11 anni fa
Ben Kurtovic
e5ad4639ff
Wikicode.i?filter*()'s matches argument now takes functions ( closes #47 )
Bump version to 0.4.dev.
11 anni fa
Ben Kurtovic
6e8412b1ec
Tests for Template.remove() with a Parameter as an argument.
11 anni fa
Ben Kurtovic
37003d2ed1
Bump version to 0.4.dev and add support for Python 3.2.
11 anni fa
Ben Kurtovic
d6e03800fa
Include tests for bracketed links too.
11 anni fa
Ben Kurtovic
7b50888e13
Tests for external links inside other markup.
11 anni fa
Ben Kurtovic
c204cf489f
Add some tests for tag edge cases.
11 anni fa
Ben Kurtovic
fdb2762393
Add a test for tag name capitalization.
11 anni fa
Ben Kurtovic
d1a7d25220
Set right context for ExternalLink.url; Wikicode.filter_external_links()
11 anni fa
Ben Kurtovic
67f1762aa4
Doc updates, and allow passing a starting context to tokenize().
11 anni fa
Ben Kurtovic
d91c65dc1f
TestExternalLink; some fixes in ExternalLink.
11 anni fa
Ben Kurtovic
655cdc0dab
TestBuilder.test_external_link()
11 anni fa
Ben Kurtovic
072b956a07
Make a couple tests harder.
11 anni fa
Ben Kurtovic
b9324eb658
Fix Python tokenizer to not generate empty Text tokens.
11 anni fa
Ben Kurtovic
be505465c0
Alter a test that imitates strange (incorrect?) MediaWiki behavior.
11 anni fa
Ben Kurtovic
44ee185377
Fix some tests involving colons starting lines.
11 anni fa
Ben Kurtovic
176290d75a
Add a couple more tests.
11 anni fa
Ben Kurtovic
93c51fe57c
Tokenizer tests for external links.
11 anni fa