From 5a807bd897b1bdff5757deb3d41e69ec5725acc1 Mon Sep 17 00:00:00 2001 From: JensDiemer Date: Fri, 7 Feb 2020 15:06:52 +0100 Subject: update code style: * remove shebangs * remove "codeing: utf-8" * remove "object" in class * use more f-strings * IOError -> OSError * cleanup "super()" calls --- creole/__init__.py | 1 - creole/cmdline.py | 4 ++-- creole/emitter/creol2html_emitter.py | 17 ++++++++--------- creole/emitter/html2creole_emitter.py | 11 +++++------ creole/emitter/html2rest_emitter.py | 11 ++++------- creole/emitter/html2textile_emitter.py | 5 ++--- creole/exceptions.py | 3 +-- creole/html_tools/deentity.py | 3 +-- creole/html_tools/strip_html.py | 2 -- creole/html_tools/text_tools.py | 2 -- creole/parser/creol2html_parser.py | 8 ++++---- creole/parser/creol2html_rules.py | 9 +++------ creole/parser/html_parser.py | 9 ++++----- creole/parser/html_parser_config.py | 3 --- creole/rest_tools/clean_writer.py | 17 ++++++++++------- creole/rest_tools/pypi_rest2html.py | 3 +-- creole/shared/base_emitter.py | 5 ++--- creole/shared/document_tree.py | 7 +++---- creole/shared/example_macros.py | 3 --- creole/shared/markup_table.py | 3 +-- creole/shared/unknown_tags.py | 2 -- creole/shared/utils.py | 3 --- creole/tests/test_Makefile.py | 1 - creole/tests/test_TODOs.py | 2 -- creole/tests/test_cli.py | 7 +++---- creole/tests/test_creole2html.py | 1 - creole/tests/test_cross_compare_all.py | 3 +-- creole/tests/test_cross_compare_creole.py | 3 +-- creole/tests/test_cross_compare_rest.py | 3 +-- creole/tests/test_cross_compare_textile.py | 3 +-- creole/tests/test_html2creole.py | 2 -- creole/tests/test_html2rest.py | 3 +-- creole/tests/test_html2textile.py | 3 +-- creole/tests/test_macros.py | 12 ++---------- creole/tests/test_rest2html.py | 3 +-- creole/tests/test_subprocess.py | 2 -- creole/tests/test_utils.py | 3 +-- demo.py | 4 +--- 38 files changed, 65 insertions(+), 121 deletions(-) diff --git a/creole/__init__.py b/creole/__init__.py index 33d99fd..d009039 100644 --- a/creole/__init__.py +++ b/creole/__init__.py @@ -1,4 +1,3 @@ - """ python-creole ~~~~~~~~~~~~~ diff --git a/creole/cmdline.py b/creole/cmdline.py index 3fcdfe6..16ecb4e 100644 --- a/creole/cmdline.py +++ b/creole/cmdline.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python3 + """ python-creole commandline interface @@ -15,7 +15,7 @@ import codecs from creole import VERSION_STRING, creole2html, html2creole, html2rest, html2textile -class CreoleCLI(object): +class CreoleCLI: def __init__(self, convert_func): self.convert_func = convert_func self.parser = argparse.ArgumentParser( diff --git a/creole/emitter/creol2html_emitter.py b/creole/emitter/creol2html_emitter.py index f946c88..61e2e55 100644 --- a/creole/emitter/creol2html_emitter.py +++ b/creole/emitter/creol2html_emitter.py @@ -1,4 +1,3 @@ - """ WikiCreole to HTML converter @@ -16,7 +15,7 @@ from creole.parser.creol2html_parser import CreoleParser from creole.shared.utils import string2dict -class TableOfContent(object): +class TableOfContent: def __init__(self): self.max_depth = None self.headlines = [] @@ -91,7 +90,7 @@ class TableOfContent(object): return document -class HtmlEmitter(object): +class HtmlEmitter: """ Generate HTML output for the document tree consisting of DocNodes. @@ -212,10 +211,10 @@ class HtmlEmitter(object): # -------------------------------------------------------------------------- def _typeface(self, node, tag): - return '<%(tag)s>%(data)s' % { - "tag": tag, - "data": self.emit_children(node), - } + return '<{tag}>{data}'.format( + tag=tag, + data=self.emit_children(node), + ) # TODO: How can we generalize that: def emphasis_emit(self, node): @@ -278,7 +277,7 @@ class HtmlEmitter(object): w_str, h_str = size_str.split("x", 1) width = int(w_str.strip()) height = int(h_str.strip()) - return '%s' % ( + return '{}'.format( self.attr_escape(target), title, title, width, height) except BaseException: pass @@ -339,7 +338,7 @@ class HtmlEmitter(object): else: try: sourceline = inspect.getsourcelines(macro)[0][0].strip() - except IOError as err: + except OSError as err: evalue = etype(f"{evalue} (error getting sourceline: {err} from {filename})") else: evalue = etype(f"{evalue} (sourceline: {sourceline!r} from {filename})") diff --git a/creole/emitter/html2creole_emitter.py b/creole/emitter/html2creole_emitter.py index 7c6421e..ceac4fd 100644 --- a/creole/emitter/html2creole_emitter.py +++ b/creole/emitter/html2creole_emitter.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ html -> creole Emitter @@ -24,7 +23,7 @@ class CreoleEmitter(BaseEmitter): def __init__(self, document_tree, strict=False, *args, **kwargs): self.strict = strict - super(CreoleEmitter, self).__init__(document_tree, *args, **kwargs) + super().__init__(document_tree, *args, **kwargs) self.table_head_prefix = "= " self.table_auto_width = True @@ -62,7 +61,7 @@ class CreoleEmitter(BaseEmitter): return "\n" def headline_emit(self, node): - return "%s %s\n\n" % ("=" * node.level, self.emit_children(node)) + return f"{'=' * node.level} {self.emit_children(node)}\n\n" # -------------------------------------------------------------------------- @@ -131,9 +130,9 @@ class CreoleEmitter(BaseEmitter): if not self.strict: if width and height: - return "{{%s|%s|%sx%s}}" % (src, text, width, height) + return f"{{{{{src}|{text}|{width}x{height}}}}}" - return "{{%s|%s}}" % (src, text) + return f"{{{{{src}|{text}}}}}" # -------------------------------------------------------------------------- diff --git a/creole/emitter/html2rest_emitter.py b/creole/emitter/html2rest_emitter.py index f8e2322..e45210c 100644 --- a/creole/emitter/html2rest_emitter.py +++ b/creole/emitter/html2rest_emitter.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ html -> reStructuredText Emitter @@ -35,7 +34,7 @@ class ReStructuredTextEmitter(BaseEmitter): """ def __init__(self, *args, **kwargs): - super(ReStructuredTextEmitter, self).__init__(*args, **kwargs) + super().__init__(*args, **kwargs) self.table_head_prefix = "_. " self.table_auto_width = False @@ -97,7 +96,7 @@ class ReStructuredTextEmitter(BaseEmitter): if self._substitution_data and node.parent == self.root: result += "%s\n\n" % self._get_block_data() - result += super(ReStructuredTextEmitter, self).emit_node(node) + result += super().emit_node(node) return result def p_emit(self, node): @@ -262,9 +261,7 @@ class ReStructuredTextEmitter(BaseEmitter): def li_emit(self, node): content = self.emit_children(node).strip("\n") - result = "\n%s%s %s\n" % ( - " " * (node.level - 1), self._list_markup, content - ) + result = f"\n{' ' * (node.level - 1)}{self._list_markup} {content}\n" return result def _list_emit(self, node, list_type): diff --git a/creole/emitter/html2textile_emitter.py b/creole/emitter/html2textile_emitter.py index 3cbbd02..785ed17 100644 --- a/creole/emitter/html2textile_emitter.py +++ b/creole/emitter/html2textile_emitter.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ html -> textile Emitter @@ -23,7 +22,7 @@ class TextileEmitter(BaseEmitter): """ def __init__(self, *args, **kwargs): - super(TextileEmitter, self).__init__(*args, **kwargs) + super().__init__(*args, **kwargs) self.table_head_prefix = "_. " self.table_auto_width = False diff --git a/creole/exceptions.py b/creole/exceptions.py index d52e6b4..826ddbd 100644 --- a/creole/exceptions.py +++ b/creole/exceptions.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ python-creole exceptions diff --git a/creole/html_tools/deentity.py b/creole/html_tools/deentity.py index 165a7af..16a7dfa 100644 --- a/creole/html_tools/deentity.py +++ b/creole/html_tools/deentity.py @@ -1,4 +1,3 @@ - """ python-creole utils ~~~~~~~~~~~~~~~~~~~ @@ -24,7 +23,7 @@ entities_regex = re.compile( ) -class Deentity(object): +class Deentity: """ replace html entity diff --git a/creole/html_tools/strip_html.py b/creole/html_tools/strip_html.py index c265099..be3d37e 100644 --- a/creole/html_tools/strip_html.py +++ b/creole/html_tools/strip_html.py @@ -1,5 +1,3 @@ -#!/usr/bin/env python -# coding: utf-8 """ diff --git a/creole/html_tools/text_tools.py b/creole/html_tools/text_tools.py index 5b52719..c08b392 100644 --- a/creole/html_tools/text_tools.py +++ b/creole/html_tools/text_tools.py @@ -1,5 +1,3 @@ -#!/usr/bin/env python -# coding: utf-8 """ diff --git a/creole/parser/creol2html_parser.py b/creole/parser/creol2html_parser.py index ff440e2..3cb0c19 100644 --- a/creole/parser/creol2html_parser.py +++ b/creole/parser/creol2html_parser.py @@ -26,7 +26,7 @@ from creole.parser.creol2html_rules import INLINE_FLAGS, INLINE_RULES, BlockRule from creole.shared.document_tree import DocNode -class CreoleParser(object): +class CreoleParser: """ Parse the raw text and create a document object that can be converted into output using Emitter. @@ -473,7 +473,7 @@ class CreoleParser(object): def emit(node, ident=0): for child in node.children: - print("%s%s: %r" % (" " * ident, child.kind, child.content)) + print(f"{' ' * ident}{child.kind}: {child.content!r}") emit(child, ident + 4) emit(start_node) print("*" * 80) @@ -483,7 +483,7 @@ class CreoleParser(object): print(" debug groups:") for name, text in groups.items(): if text is not None: - print("%15s: %r" % (name, text)) + print(f"{name:>15}: {text!r}") print("-" * 80) @@ -508,7 +508,7 @@ if __name__ == "__main__": groups = match.groupdict() for name, text in groups.items(): if name != "char" and text is not None: - print("%20s: %r" % (name, text)) + print(f"{name:>20}: {text!r}") parser = CreoleParser("", blog_line_breaks=blog_line_breaks) diff --git a/creole/parser/creol2html_rules.py b/creole/parser/creol2html_rules.py index 4cb1e2a..07754c9 100644 --- a/creole/parser/creol2html_rules.py +++ b/creole/parser/creol2html_rules.py @@ -1,6 +1,3 @@ -# coding: utf-8 - - """ Creole Rules for parser ~~~~~~~~~~~~~~~~~~~~~~~ @@ -13,7 +10,7 @@ import re -class InlineRules(object): +class InlineRules: """ All inline rules """ @@ -97,7 +94,7 @@ class InlineRules(object): char = r'(?P . )' -class BlockRules(object): +class BlockRules: """ All used block rules. """ @@ -169,7 +166,7 @@ class BlockRules(object): ) -class SpecialRules(object): +class SpecialRules: """ re rules witch not directly used as inline/block rules. """ diff --git a/creole/parser/html_parser.py b/creole/parser/html_parser.py index b8c3cee..d789a97 100644 --- a/creole/parser/html_parser.py +++ b/creole/parser/html_parser.py @@ -1,4 +1,3 @@ - """ python-creole ~~~~~~~~~~~~~ @@ -77,7 +76,7 @@ class HtmlParser(HTMLParser): _inline_placeholder = "inlinedata" def __init__(self, debug=False): - super(HtmlParser, self).__init__(convert_charrefs=False) + super().__init__(convert_charrefs=False) self.debugging = debug if self.debugging: @@ -120,7 +119,7 @@ class HtmlParser(HTMLParser): for name, text in groups.items(): if text is not None: if self.debugging: - print("%15s: %r (%r)" % (name, text, match.group(0))) + print(f"{name:>15}: {text!r} ({match.group(0)!r})") method = getattr(self, f'_pre_{name}_cut') return method(groups) @@ -251,7 +250,7 @@ class HtmlParser(HTMLParser): def debug_msg(self, method, txt): if not self.debugging: return - print("%-8s %8s: %s" % (self.getpos(), method, txt)) + print(f"{str(self.getpos()):<8} {method:>8}: {txt}") def debug(self, start_node=None): """ @@ -269,7 +268,7 @@ class HtmlParser(HTMLParser): def emit(node, ident=0): for child in node.children: - txt = "%s%s" % (" " * ident, child.kind) + txt = f"{' ' * ident}{child.kind}" if child.content: txt += f": {child.content!r}" diff --git a/creole/parser/html_parser_config.py b/creole/parser/html_parser_config.py index 679db4c..38557ed 100644 --- a/creole/parser/html_parser_config.py +++ b/creole/parser/html_parser_config.py @@ -1,6 +1,3 @@ -# coding: utf-8 - - """ python-creole ~~~~~~~~~~~~~ diff --git a/creole/rest_tools/clean_writer.py b/creole/rest_tools/clean_writer.py index 524c8d6..e8c224b 100644 --- a/creole/rest_tools/clean_writer.py +++ b/creole/rest_tools/clean_writer.py @@ -59,7 +59,7 @@ class CleanHTMLWriter(html4css1.Writer): self.translator_class = CleanHTMLTranslator -class CleanHTMLTranslator(html4css1.HTMLTranslator, object): +class CleanHTMLTranslator(html4css1.HTMLTranslator): """ Clean html translator for docutils system. """ @@ -97,15 +97,18 @@ class CleanHTMLTranslator(html4css1.HTMLTranslator, object): parts.append(part) if DEBUG: - print("Tag %r - ids: %r - attributes: %r - parts: %r" % ( - tagname, getattr(node, "ids", "-"), attributes, parts - )) + print( + f'Tag {tagname!r}' + f' - ids: {getattr(node, "ids", "-")!r}' + f' - attributes: {attributes!r}' + f' - parts: {parts!r}' + ) if empty: infix = ' /' else: infix = '' - html = '<%s%s>%s' % (' '.join(parts), infix, suffix) + html = f"<{' '.join(parts)}{infix}>{suffix}" if DEBUG: print(f"startag html: {html!r}") return html @@ -148,7 +151,7 @@ class CleanHTMLTranslator(html4css1.HTMLTranslator, object): node.stubs = [] def visit_field_list(self, node): - super(CleanHTMLTranslator, self).visit_field_list(node) + super().visit_field_list(node) if "13}: {txt}") diff --git a/creole/shared/document_tree.py b/creole/shared/document_tree.py index 20c6a44..fdcc863 100644 --- a/creole/shared/document_tree.py +++ b/creole/shared/document_tree.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ python-creole @@ -83,13 +82,13 @@ class DocNode: continue if callable(getattr(self, i)): continue - print("%20s: %r" % (i, getattr(self, i, "---"))) + print(f"{i:>20}: {getattr(self, i, '---')!r}") class DebugList(list): def __init__(self, html2creole): self.html2creole = html2creole - super(DebugList, self).__init__() + super().__init__() def append(self, item): # for stack_frame in inspect.stack(): print(stack_frame) diff --git a/creole/shared/example_macros.py b/creole/shared/example_macros.py index 88a9bc8..78f317c 100644 --- a/creole/shared/example_macros.py +++ b/creole/shared/example_macros.py @@ -1,6 +1,3 @@ -# coding: utf-8 - - """ Creole macros ~~~~~~~~~~~~~ diff --git a/creole/shared/markup_table.py b/creole/shared/markup_table.py index acb9b21..dd26374 100644 --- a/creole/shared/markup_table.py +++ b/creole/shared/markup_table.py @@ -1,5 +1,4 @@ - -class MarkupTable(object): +class MarkupTable: """ Container for holding table data and render the data in creole markup. Format every cell width to the same col width. diff --git a/creole/shared/unknown_tags.py b/creole/shared/unknown_tags.py index 26cfd3a..8d36ad0 100644 --- a/creole/shared/unknown_tags.py +++ b/creole/shared/unknown_tags.py @@ -1,5 +1,3 @@ -#!/usr/bin/env python -# coding: utf-8 """ diff --git a/creole/shared/utils.py b/creole/shared/utils.py index 1d0071f..9c8ffc8 100644 --- a/creole/shared/utils.py +++ b/creole/shared/utils.py @@ -1,6 +1,3 @@ -# coding: utf-8 - - """ python creole utilities ~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/creole/tests/test_Makefile.py b/creole/tests/test_Makefile.py index dbf129c..412be65 100644 --- a/creole/tests/test_Makefile.py +++ b/creole/tests/test_Makefile.py @@ -1,4 +1,3 @@ - """ :copyleft: 2020 by python-creole team, see AUTHORS for more details. :license: GNU GPL v3 or above, see LICENSE for more details. diff --git a/creole/tests/test_TODOs.py b/creole/tests/test_TODOs.py index a2b75c9..c114089 100644 --- a/creole/tests/test_TODOs.py +++ b/creole/tests/test_TODOs.py @@ -1,5 +1,3 @@ -# coding: utf-8 - """ Unittest which failed, cause bugfixes not implemented, yet. """ diff --git a/creole/tests/test_cli.py b/creole/tests/test_cli.py index ffd48ac..76d8050 100644 --- a/creole/tests/test_cli.py +++ b/creole/tests/test_cli.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ unittest for CLI @@ -22,7 +21,7 @@ from creole.tests.utils.unittest_subprocess import SubprocessMixin CMDS = ("creole2html", "html2creole", "html2rest", "html2textile") -class CliTestMixins(object): +class CliTestMixins: def test_creole2html(self): self._test_convert( source_content=b"= test creole2html =", @@ -101,7 +100,7 @@ class CreoleCLITests(BaseCreoleTest, SubprocessMixin, CliTestMixins): class CreoleCLITestsDirect(BaseCreoleTest, CliTestMixins): def setUp(self): - super(CreoleCLITestsDirect, self).setUp() + super().setUp() self._old_sys_argv = sys.argv[:] def tearDown(self): diff --git a/creole/tests/test_creole2html.py b/creole/tests/test_creole2html.py index d938a38..d129848 100644 --- a/creole/tests/test_creole2html.py +++ b/creole/tests/test_creole2html.py @@ -1,4 +1,3 @@ - """ creole2html unittest ~~~~~~~~~~~~~~~~~~~~ diff --git a/creole/tests/test_cross_compare_all.py b/creole/tests/test_cross_compare_all.py index c069fa9..c09b550 100644 --- a/creole/tests/test_cross_compare_all.py +++ b/creole/tests/test_cross_compare_all.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ cross compare unittest diff --git a/creole/tests/test_cross_compare_creole.py b/creole/tests/test_cross_compare_creole.py index 7c4d893..fe71397 100644 --- a/creole/tests/test_cross_compare_creole.py +++ b/creole/tests/test_cross_compare_creole.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ cross compare creole unittest diff --git a/creole/tests/test_cross_compare_rest.py b/creole/tests/test_cross_compare_rest.py index ea02e19..a475e06 100644 --- a/creole/tests/test_cross_compare_rest.py +++ b/creole/tests/test_cross_compare_rest.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ cross compare reStructuredText unittest diff --git a/creole/tests/test_cross_compare_textile.py b/creole/tests/test_cross_compare_textile.py index 63ce6c7..b387806 100644 --- a/creole/tests/test_cross_compare_textile.py +++ b/creole/tests/test_cross_compare_textile.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ cross compare textile unittest diff --git a/creole/tests/test_html2creole.py b/creole/tests/test_html2creole.py index 2895b78..7cbad0d 100644 --- a/creole/tests/test_html2creole.py +++ b/creole/tests/test_html2creole.py @@ -1,5 +1,3 @@ -#!/usr/bin/env python -# coding: utf-8 """ diff --git a/creole/tests/test_html2rest.py b/creole/tests/test_html2rest.py index a10ae2a..13ac4ee 100644 --- a/creole/tests/test_html2rest.py +++ b/creole/tests/test_html2rest.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ html2rest unittest diff --git a/creole/tests/test_html2textile.py b/creole/tests/test_html2textile.py index cd03b88..318eca6 100644 --- a/creole/tests/test_html2textile.py +++ b/creole/tests/test_html2textile.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ html2textile unittest diff --git a/creole/tests/test_macros.py b/creole/tests/test_macros.py index c596a81..1a69b36 100644 --- a/creole/tests/test_macros.py +++ b/creole/tests/test_macros.py @@ -1,13 +1,10 @@ -# coding: utf-8 - - """ Creole unittest macros ~~~~~~~~~~~~~~~~~~~~~~ Note: all mecro functions must return unicode! - :copyleft: 2008-2011 by python-creole team, see AUTHORS for more details. + :copyleft: 2008-2020 by python-creole team, see AUTHORS for more details. :license: GNU GPL v3 or above, see LICENSE for more details. """ @@ -26,7 +23,7 @@ def unittest_macro1(**kwargs): >>> unittest_macro1(a=1,b=2) '[test macro1 - kwargs: a=1,b=2]' """ - kwargs = ','.join(['%s=%s' % (k, json.dumps(v)) for k, v in sorted(kwargs.items())]) + kwargs = ','.join('{}={}'.format(k, json.dumps(v)) for k, v in sorted(kwargs.items())) return f"[test macro1 - kwargs: {kwargs}]" @@ -36,8 +33,3 @@ def unittest_macro2(char, text): 'a|b' """ return char.join(text.split()) - - -if __name__ == '__main__': - import doctest - print(doctest.testmod()) diff --git a/creole/tests/test_rest2html.py b/creole/tests/test_rest2html.py index dee787c..a5f08c1 100644 --- a/creole/tests/test_rest2html.py +++ b/creole/tests/test_rest2html.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ rest2html unittest diff --git a/creole/tests/test_subprocess.py b/creole/tests/test_subprocess.py index 4a8b02e..c99b05d 100644 --- a/creole/tests/test_subprocess.py +++ b/creole/tests/test_subprocess.py @@ -1,5 +1,3 @@ -# coding: utf-8 - """ unittest ~~~~~~~~ diff --git a/creole/tests/test_utils.py b/creole/tests/test_utils.py index 5131a16..c310aa1 100644 --- a/creole/tests/test_utils.py +++ b/creole/tests/test_utils.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 + """ unittest for some utils diff --git a/demo.py b/demo.py index 962d3c8..19eae90 100644 --- a/demo.py +++ b/demo.py @@ -1,5 +1,4 @@ -#!/usr/bin/env python -# coding: utf-8 +#!/usr/bin/env python3 """ @@ -7,7 +6,6 @@ ~~~~~~~~~~~ """ -from __future__ import division, absolute_import, print_function, unicode_literals from creole import creole2html, html2creole, html2rest, html2textile -- cgit v1.2.1