diff options
author | Sergey Poznyakoff <gray@gnu.org> | 2018-08-18 17:43:36 +0300 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org> | 2018-08-18 17:43:36 +0300 |
commit | 8c0de7a515aa9d6db7b3ce4110a4e29261851abb (patch) | |
tree | 228c2bb1be5a907b373158c6c94cd8d51f23c419 | |
parent | 0c03a5a7b40b598b88f22f46b9e9086af6c59877 (diff) | |
download | wikitrans-8c0de7a515aa9d6db7b3ce4110a4e29261851abb.tar.gz wikitrans-8c0de7a515aa9d6db7b3ce4110a4e29261851abb.tar.bz2 |
Minor stylistic fixes.
-rw-r--r-- | README.rst | 6 | ||||
-rwxr-xr-x | bin/wikitrans | 3 | ||||
-rw-r--r-- | wikitrans/wiki2html.py | 13 | ||||
-rw-r--r-- | wikitrans/wiki2texi.py | 20 | ||||
-rw-r--r-- | wikitrans/wiki2text.py | 18 | ||||
-rw-r--r-- | wikitrans/wikidump.py | 4 | ||||
-rw-r--r-- | wikitrans/wikimarkup.py | 20 | ||||
-rw-r--r-- | wikitrans/wikitoken.py | 60 |
8 files changed, 103 insertions, 41 deletions
@@ -126,3 +126,3 @@ The ``wikitrans`` utility ========================= -This command line utility converts the supplied text to a selected +This command line utility converts the supplied text to selected output format. The usage syntax is:: @@ -162,3 +162,3 @@ Options are: ``-l LANG``, ``--lang=LANG`` - Set input document language + Set input document language. ``-o KW=VAL``, ``--option=KW=VAL`` @@ -166,3 +166,3 @@ Options are: ``-d DEBUG``, ``--debug=DEBUG`` - Set debug level (0..100) + Set debug level (0..100). ``-D``, ``--dump`` diff --git a/bin/wikitrans b/bin/wikitrans index caaa885..87de020 100755 --- a/bin/wikitrans +++ b/bin/wikitrans @@ -61,3 +61,4 @@ handlers = { 'texi': { - 'default': TexiWikiMarkup + 'default': TexiWikiMarkup, + 'wiktionary': TextWikiMarkup } diff --git a/wikitrans/wiki2html.py b/wikitrans/wiki2html.py index fc6b142..0696dce 100644 --- a/wikitrans/wiki2html.py +++ b/wikitrans/wiki2html.py @@ -45,2 +45,3 @@ __all__ = [ "HtmlWikiMarkup", "HtmlWiktionaryMarkup" ] + class HtmlSeqNode(WikiSeqNode): @@ -52,2 +53,3 @@ class HtmlSeqNode(WikiSeqNode): + class HtmlLinkNode(HtmlSeqNode): @@ -94,2 +96,3 @@ class HtmlLinkNode(HtmlSeqNode): + class HtmlRefNode(WikiRefNode): @@ -103,2 +106,3 @@ class HtmlRefNode(WikiRefNode): + class HtmlFontNode(HtmlSeqNode): @@ -113,2 +117,3 @@ class HtmlFontNode(HtmlSeqNode): + class HtmlTextNode(HtmlSeqNode): @@ -121,2 +126,3 @@ class HtmlTextNode(HtmlSeqNode): + class HtmlHdrNode(WikiHdrNode): @@ -128,2 +134,3 @@ class HtmlHdrNode(WikiHdrNode): + class HtmlBarNode(WikiNode): @@ -132,2 +139,3 @@ class HtmlBarNode(WikiNode): + class HtmlEnvNode(WikiEnvNode): @@ -149,2 +157,3 @@ class HtmlEnvNode(WikiEnvNode): + class HtmlTagNode(WikiTagNode): @@ -183,2 +192,3 @@ class HtmlTagNode(WikiTagNode): + class HtmlParaNode(HtmlSeqNode): @@ -187,2 +197,3 @@ class HtmlParaNode(HtmlSeqNode): + class HtmlPreNode(HtmlSeqNode): @@ -195,2 +206,3 @@ class HtmlPreNode(HtmlSeqNode): + class HtmlIndNode(WikiIndNode): @@ -300,2 +312,3 @@ class HtmlWikiMarkup(WikiMarkup): + class HtmlWiktionaryMarkup(HtmlWikiMarkup): diff --git a/wikitrans/wiki2texi.py b/wikitrans/wiki2texi.py index 55dffe2..936a133 100644 --- a/wikitrans/wiki2texi.py +++ b/wikitrans/wiki2texi.py @@ -32,2 +32,3 @@ import urllib + class Acc(list): @@ -85,2 +86,3 @@ class Acc(list): + class TexiTextNode(WikiTextNode): @@ -94,2 +96,3 @@ class TexiTextNode(WikiTextNode): + class TexiTagNode(WikiTagNode): @@ -128,2 +131,3 @@ class TexiTagNode(WikiTagNode): + class TexiParaNode(WikiSeqNode): @@ -138,2 +142,3 @@ class TexiParaNode(WikiSeqNode): + class TexiPreNode(WikiSeqNode): @@ -148,2 +153,3 @@ class TexiPreNode(WikiSeqNode): + class TexiFontNode(WikiSeqNode): @@ -158,2 +164,3 @@ class TexiFontNode(WikiSeqNode): + class TexiHdrNode(WikiHdrNode): @@ -176,2 +183,3 @@ class TexiHdrNode(WikiHdrNode): + class TexiBarNode(WikiNode): @@ -180,2 +188,3 @@ class TexiBarNode(WikiNode): + class TexiIndNode(WikiIndNode): @@ -187,2 +196,3 @@ class TexiIndNode(WikiIndNode): + class TexiEnvNode(WikiEnvNode): @@ -219,2 +229,3 @@ class TexiEnvNode(WikiEnvNode): + class TexiLinkNode(WikiSeqNode): @@ -250,2 +261,3 @@ class TexiLinkNode(WikiSeqNode): + class TexiRefNode(WikiRefNode): @@ -262,2 +274,3 @@ class TexiRefNode(WikiRefNode): + class TexiWikiMarkup(WikiMarkup): @@ -403,8 +416 @@ class TexiWikiMarkup(WikiMarkup): return self._end_print() - - - - - - - diff --git a/wikitrans/wiki2text.py b/wikitrans/wiki2text.py index 88e7610..7585bff 100644 --- a/wikitrans/wiki2text.py +++ b/wikitrans/wiki2text.py @@ -37,2 +37,3 @@ except ImportError: + class TextSeqNode(WikiSeqNode): @@ -46,2 +47,3 @@ class TextSeqNode(WikiSeqNode): + class TextTextNode(WikiTextNode): @@ -61,2 +63,3 @@ class TextTextNode(WikiTextNode): + class TextPreNode(WikiSeqNode): @@ -69,2 +72,3 @@ class TextPreNode(WikiSeqNode): + class TextParaNode(WikiSeqNode): @@ -77,2 +81,3 @@ class TextParaNode(WikiSeqNode): + class TextItNode(WikiSeqNode): @@ -86,2 +91,3 @@ class TextItNode(WikiSeqNode): + class TextBoldNode(WikiSeqNode): @@ -97,2 +103,3 @@ class TextBoldNode(WikiSeqNode): + class TextLinkNode(WikiSeqNode): @@ -141,2 +148,3 @@ class TextLinkNode(WikiSeqNode): + class TextTmplNode(TextLinkNode): @@ -145,2 +153,3 @@ class TextTmplNode(TextLinkNode): + class TextBarNode(WikiNode): @@ -152,2 +161,3 @@ class TextBarNode(WikiNode): + class TextHdrNode(WikiHdrNode): @@ -160,2 +170,3 @@ class TextHdrNode(WikiHdrNode): + class TextRefNode(WikiRefNode): @@ -168,2 +179,3 @@ class TextRefNode(WikiRefNode): + class TextEnvNode(WikiEnvNode): @@ -190,8 +202,7 @@ class TextEnvNode(WikiEnvNode): string += self.parser.indent(lev+3, x) - if not string.endswith("\n"): string += "\n" - return string + class TextIndNode(WikiIndNode): @@ -200,2 +211,3 @@ class TextIndNode(WikiIndNode): + class TextTagNode(WikiTagNode): @@ -340,2 +352,3 @@ class TextWikiMarkup(WikiMarkup): + class TextWiktionaryMarkup(TextWikiMarkup): @@ -347,2 +360 @@ class TextWiktionaryMarkup(TextWikiMarkup): html_base='http://%(lang)s.wiktionary.org/wiki/' - diff --git a/wikitrans/wikidump.py b/wikitrans/wikidump.py index d5f651c..bc71876 100644 --- a/wikitrans/wikidump.py +++ b/wikitrans/wikidump.py @@ -30,2 +30,3 @@ from wikitrans.wikimarkup import WikiMarkup + class DumpReferences(object): @@ -52,2 +53,3 @@ class DumpWikiMarkup(WikiMarkup): references = DumpReferences() + def __init__(self, **kwarg): @@ -66,3 +68,2 @@ class DumpWikiMarkup(WikiMarkup): """ - n = kwarg.pop('indent', None) @@ -71,2 +72,3 @@ class DumpWikiMarkup(WikiMarkup): super(DumpWikiMarkup, self).__init__(self, **kwarg) + def __str__(self): diff --git a/wikitrans/wikimarkup.py b/wikitrans/wikimarkup.py index a3e17d5..d199335 100644 --- a/wikitrans/wikimarkup.py +++ b/wikitrans/wikimarkup.py @@ -40,2 +40,3 @@ __all__ = [ "WikiMarkupParser", "WikiMarkup", + class UnexpectedTokenError(Exception): @@ -44,2 +45,3 @@ class UnexpectedTokenError(Exception): + class TagAttributeSyntaxError(Exception): @@ -47,2 +49,3 @@ class TagAttributeSyntaxError(Exception): self.value = value + def __str__(self): @@ -50,2 +53,3 @@ class TagAttributeSyntaxError(Exception): + class TagAttributes(object): @@ -96,8 +100,12 @@ class TagAttributes(object): raise TagAttributeSyntaxError(s) + def __len__(self): return len(self.tab) + def __getitem__(self, key): return self.tab[key] + def __contains__(self, key): return key in self.tab + def __iter__(self): @@ -105,10 +113,15 @@ class TagAttributes(object): yield(key) + def has_key(self, key): return self.__contains__(key) + def __setitem__(self, key, value): self.tab[key] = value + def __delitem__(self, key): del self.tab[key] + def __str__(self): return self.printable + def __repr__(self): @@ -116,2 +129,3 @@ class TagAttributes(object): + class WikiMarkupParser(object): @@ -314,3 +328,2 @@ class WikiMarkupParser(object): - def input(self): @@ -788,3 +801,2 @@ class WikiMarkupParser(object): list.append(tok) - self.clear_mark() @@ -794,3 +806,4 @@ class WikiMarkupParser(object): isblock = tag.isblock, - content = self._new_node(type = 'SEQ', content = list)) + content = self._new_node(type = 'SEQ', + content = list)) self.dprint(80, "LEAVE parse_tag = %s", ret) @@ -833,3 +846,2 @@ class WikiMarkupParser(object): tok = self.getkn() - ret = self._new_node(type='ENV', diff --git a/wikitrans/wikitoken.py b/wikitrans/wikitoken.py index 49c6c68..0678a75 100644 --- a/wikitrans/wikitoken.py +++ b/wikitrans/wikitoken.py @@ -43,9 +43,12 @@ import json + class WikiNodeEncoder(json.JSONEncoder): """Custom JSONEncoder subclass for serializing WikiNode and its subclasses.""" + def default(self, obj): if isinstance(obj, WikiNode): - return obj.jsonEncode() + return obj.json_encode() return json.JSONEncoder.default(self, obj) + def jsonencoder(func): @@ -56,4 +59,6 @@ def jsonencoder(func): return json + return _mkencoder + class WikiNode(object): @@ -82,3 +87,3 @@ class WikiNode(object): @jsonencoder - def jsonEncode(self): + def json_encode(self): ret = {} @@ -98,2 +103,3 @@ class WikiNode(object): + class WikiContentNode(WikiNode): @@ -112,3 +118,3 @@ class WikiContentNode(WikiNode): @jsonencoder - def jsonEncode(self): + def json_encode(self): ret = {} @@ -118,5 +124,5 @@ class WikiContentNode(WikiNode): elif isinstance(self.content, list): - ret['content'] = map(lambda x: x.jsonEncode(), self.content) + ret['content'] = map(lambda x: x.json_encode(), self.content) elif isinstance(self.content, WikiNode): - ret['content'] = self.content.jsonEncode() + ret['content'] = self.content.json_encode() else: @@ -127,2 +133,3 @@ class WikiContentNode(WikiNode): + class WikiSeqNode(WikiContentNode): @@ -140,3 +147,3 @@ class WikiSeqNode(WikiContentNode): @jsonencoder - def jsonEncode(self): + def json_encode(self): ret = {} @@ -145,5 +152,5 @@ class WikiSeqNode(WikiContentNode): elif isinstance(self.content, list): - ret['content'] = map(lambda x: x.jsonEncode(), self.content) + ret['content'] = map(lambda x: x.json_encode(), self.content) elif isinstance(self.content, WikiNode): - ret['content'] = self.content.jsonEncode() + ret['content'] = self.content.json_encode() else: @@ -167,3 +174,3 @@ class WikiTextNode(WikiContentNode): @jsonencoder - def jsonEncode(self): + def json_encode(self): return { @@ -172,2 +179,3 @@ class WikiTextNode(WikiContentNode): + class WikiDelimNode(WikiContentNode): @@ -187,2 +195,3 @@ class WikiDelimNode(WikiContentNode): + class WikiTagNode(WikiContentNode): @@ -207,3 +216,5 @@ class WikiTagNode(WikiContentNode): super(WikiTagNode, self).__init__(*args, **keywords) - if self.type == 'TAG' and self.tag == 'ref' and hasattr(self.parser,'references'): + if (self.type == 'TAG' + and self.tag == 'ref' + and hasattr(self.parser, 'references')): self.idx = len(self.parser.references) @@ -212,3 +223,3 @@ class WikiTagNode(WikiContentNode): @jsonencoder - def jsonEncode(self): + def json_encode(self): return { @@ -217,3 +228,3 @@ class WikiTagNode(WikiContentNode): 'args': self.args.tab if self.args else None, - 'content': self.content.jsonEncode() if self.content else None, + 'content': self.content.json_encode() if self.content else None, 'idx': self.idx @@ -221,2 +232,3 @@ class WikiTagNode(WikiContentNode): + class WikiRefNode(WikiContentNode): @@ -235,8 +247,9 @@ class WikiRefNode(WikiContentNode): @jsonencoder - def jsonEncode(self): + def json_encode(self): return { 'ref': self.ref, - 'content': self.content.jsonEncode() + 'content': self.content.json_encode() } + class WikiHdrNode(WikiContentNode): @@ -254,8 +267,9 @@ class WikiHdrNode(WikiContentNode): @jsonencoder - def jsonEncode(self): + def json_encode(self): return { 'level': self.level, - 'content': self.content.jsonEncode() + 'content': self.content.json_encode() } + class WikiEltNode(WikiContentNode): @@ -273,8 +287,9 @@ class WikiEltNode(WikiContentNode): @jsonencoder - def jsonEncode(self): + def json_encode(self): return { 'subtype': self.subtype, - 'content': self.content.jsonEncode() + 'content': self.content.json_encode() } + class WikiEnvNode(WikiContentNode): @@ -293,3 +308,3 @@ class WikiEnvNode(WikiContentNode): @jsonencoder - def jsonEncode(self): + def json_encode(self): return { @@ -297,5 +312,6 @@ class WikiEnvNode(WikiContentNode): 'level': self.level, - 'content': map(lambda x: x.jsonEncode(), self.content) + 'content': map(lambda x: x.json_encode(), self.content) } + class WikiIndNode(WikiContentNode): @@ -313,6 +329,6 @@ class WikiIndNode(WikiContentNode): @jsonencoder - def jsonEncode(self): + def json_encode(self): return { 'level': self.level, - 'content': self.content.jsonEncode() + 'content': self.content.json_encode() } |