#!/usr/bin/env python3
"""uso: python3 confere.py base.md transcript.txt
¿Cada fragmento entre comillas de la base está en la transcripción? Sale 1 si alguno no está."""
import re, sys, unicodedata
def n(s): # minúsculas, sin acento, sin puntuación
s = unicodedata.normalize("NFD", s.lower()).encode("ascii", "ignore").decode()
return re.sub(r"\s+", " ", re.sub(r"[^a-z0-9%]+", " ", s)).strip()
base = open(sys.argv[1], encoding="utf-8").read()
tx = n(open(sys.argv[2], encoding="utf-8").read())
fora = 0
for trecho in re.findall(r'"([^"]{20,})"', base):
ok = n(trecho) in tx
fora += not ok
print("OK " if ok else "FORA", trecho[:70])
sys.exit(1 if fora else 0)