tests/heredoctest.py
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
Mon, 20 Feb 2017 12:42:23 +0100
changeset 31111 0c003943134f
parent 29485 6a98f9408a50
child 40318 55fd0fefbec4
permissions -rw-r--r--
color: move 'write-err' logic to the core ui class This is similar to what we needed for 'write', we move the logic from the extension to the core class. Beside the dispatch to 'win32print', we just apply label to the argument.

from __future__ import absolute_import, print_function

import sys

globalvars = {}
lines = sys.stdin.readlines()
while lines:
    l = lines.pop(0)
    if l.startswith('SALT'):
        print(l[:-1])
    elif l.startswith('>>> '):
        snippet = l[4:]
        while lines and lines[0].startswith('... '):
            l = lines.pop(0)
            snippet += l[4:]
        c = compile(snippet, '<heredoc>', 'single')
        try:
            exec(c, globalvars)
        except Exception as inst:
            print(repr(inst))