Beispiel #1
0
                if me.parent == prev.parent: return
                r.append( prev.pcstyle())
            r.append( o( me.parent))
            return [a for a in r if a]
        def pcstyle( me):
            return c( me.parent)

    def pr( p):
        if p:
            if isinstance( p, (tuple,list)):
                for a in p:
                    if a: print a.rstrip()
            else: print p.rstrip()

    import sys
    for tt,s,i,sprev,sdif in sla( sys.stdin, State= State, newline= '\n<br>\n' ):

        print
        if 'style' in sdif:
            if sprev:
                pr( sprev.cstyle())
        if 'style' in sdif:
            print
            pr( s.postyle( sprev))
            pr( s.ostyle())
        elif sprev.closed:
            pr( s.ostyle())

        pr( s.open())

        for t in tt[:-1]:
Beispiel #2
0
    if not x: return
    last = x()
    stack[-1].append( last)
    if x is ListItem:
        last.append( Paragraph() )
        last = last[-1]
def push( x):
    if not x: return
    x = x()
    stack[-1].append( x)
    stack.append( x)
def pop():
    stack.pop()
    assert stack

for tt,s,i,sprev,sdif in sla( sys.stdin, State=State ):

    #if 'style' in sdif:
    #    pr( s.ostyle())

    #if 'style' in sdif:
    #    if sprev:
    #        pr( sprev.cstyle())

    x = styles.get( s.style, None)
    if 'style' in sdif:
        if sprev and s.parent != sprev.parent:
            if sprev.parent:
                pop()
        if not sprev or s.parent != sprev.parent:
            push( styles.get( s.parent))