from __future__ import annotations from lark import Lark # Minimal prompt grammar kept for import compatibility and simple parsing use. grammar = r""" !start: (prompt | /[][():]/+)* prompt: (emphasized | plain | comma | WHITESPACE)* !emphasized: "(" prompt ")" | "(" prompt ":" [WHITESPACE] NUMBER [WHITESPACE] ")" comma: "," WHITESPACE: /\s+/ plain: /([^,\\\[\]():|]|\\.)+/ %import common.SIGNED_NUMBER -> NUMBER """ parser = Lark(grammar, start="start") def parse_prompt(text: str): return parser.parse(text or "")