Ctrl K
ComunidadGuías…

scripts/audit_unicode_paths.py

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
"""Detect tracked paths that collide after Unicode NFC normalization."""
from __future__ import annotations
import argparse,unicodedata
from pathlib import Path
from scripts.audit_common import print_failures,require_root,tracked_files

def audit_paths(paths:list[Path])->list[str]:
    seen={};out=[]
    for path in paths:
        key=unicodedata.normalize('NFC',path.as_posix())
        previous=seen.get(key)
        if previous is not None and previous!=path:out.append(f'Unicode-normalized path collision: {previous} <-> {path}')
        else:seen[key]=path
    return out
def audit(root:Path)->list[str]:return audit_paths(tracked_files(require_root(root)))
def main(argv=None):
    p=argparse.ArgumentParser(description=__doc__);p.add_argument('root',nargs='?',default='.');return print_failures(audit(Path(p.parse_args(argv).root)))
if __name__=='__main__':raise SystemExit(main())