Esempio n. 1
0
def creole2html(markup_string, debug=False, parser_kwargs={}, emitter_kwargs={}):
    """
    convert creole markup into html code

    >>> creole2html(u'This is **creole //markup//**!')
    u'<p>This is <strong>creole <i>markup</i></strong>!</p>\\n'
    """
    assert isinstance(markup_string, unicode)

    # Create document tree from creole markup
    document = CreoleParser(markup_string, **parser_kwargs).parse()
    if debug:
        document.debug()

    # Build html code from document tree
    #print "creole2html HtmlEmitter kwargs:", emitter_kwargs
    return HtmlEmitter(document, **emitter_kwargs).emit()
Esempio n. 2
0
def creole2html(markup_string, debug=False,
        parser_kwargs={}, emitter_kwargs={},
        block_rules=None, blog_line_breaks=True,
        macros=None, verbose=None, stderr=None,
    ):
    """
    convert creole markup into html code

    >>> creole2html('This is **creole //markup//**!')
    '<p>This is <strong>creole <i>markup</i></strong>!</p>'
    
    Info: parser_kwargs and emitter_kwargs are deprecated
    """
    assert isinstance(markup_string, TEXT_TYPE), "given markup_string must be unicode!"

    parser_kwargs2 = {
        "block_rules": block_rules,
        "blog_line_breaks": blog_line_breaks,
    }
    if parser_kwargs:
        warnings.warn("parser_kwargs argument in creole2html would be removed in the future!", PendingDeprecationWarning)
        parser_kwargs2.update(parser_kwargs)

    # Create document tree from creole markup
    document = CreoleParser(markup_string, **parser_kwargs2).parse()
    if debug:
        document.debug()

    emitter_kwargs2 = {
        "macros": macros,
        "verbose": verbose,
        "stderr": stderr,
    }
    if emitter_kwargs:
        warnings.warn("emitter_kwargs argument in creole2html would be removed in the future!", PendingDeprecationWarning)
        emitter_kwargs2.update(emitter_kwargs)

    # Build html code from document tree
    return HtmlEmitter(document, **emitter_kwargs2).emit()
Esempio n. 3
0
    def error(self, text, exc_info=None):
        """
        Error Handling.
        """
        if self.verbose > 1 and exc_info:
            exc_type, exc_value, exc_traceback = exc_info
            exception = "".join(traceback.format_exception(exc_type, exc_value, exc_traceback))
            self.stderr.write(exception)

        if self.verbose > 0:
            return u"[Error: %s]\n" % text
        else:
            # No error output
            return u""


if __name__ == "__main__":
    txt = u"""this is **bold** ok?
            for example ** this sentence"""

    print "-" * 80
    #    from creole_alt.creole import CreoleParser
    p = CreoleParser(txt)
    document = p.parse()
    p.debug()

    html = HtmlEmitter(document).emit()
    print html
    print "-" * 79
    print html.replace(" ", ".").replace("\n", "\\n\n")