Я пытаюсь проанализировать блоки с отступами с помощью pyparsing и indentedBlock
Здесь мой код
from pyparsing import *
indent_stack = [1]
line = ungroup(restOfLine)
block = ungroup(indentedBlock(line, indent_stack))
# Work
data = """ foo
bar
tar
"""
block.parseString(data).pprint()
Проблема в том, что parseString
не вернется. Кажется, я жду большего ввода или, может быть, я попал в бесконечный цикл. Если я помещу однонитированную строку в блок, начинаю работать
data = """ foo
bar
tar
end
"""
Но я хочу иметь возможность разобрать до не смещенной строки (рабочий случай) или до конца строки (не рабочий случай)