INNER CODE UNIT · Python
extraer_bloques
Hainrixz/whatsapp-agentkit · scripts/audit.py:202
def extraer_bloques(markdown: str, lenguaje: str) -> list[BloqueCodigo]:
"""
Extrae los bloques ```<lenguaje> de un markdown, conservando el numero de
linea REAL dentro del archivo (no la linea relativa al bloque).
Maneja fences indentados (los que estan dentro de una lista numerada) y
les quita la indentacion comun para que el contenido compile igual.
"""
bloques: list[BloqueCodigo] = []
lineas = markdown.splitlines()
dentro = False
lang_actual = ""
indent_actual = 0
linea_apertura = 0
buffer: list[str] = []
for i, linea in enumerate(lineas, start=1):