Una línea vacía no contiene caracteres; una línea de espacios puede incluir espacios, tabulaciones u otros separadores Unicode. Su eliminación depende de la transformación. ListClean hace visible la dependencia: primero recorta, de modo que una fila de espacios solo queda vacía si se activa el recorte; después decide si elimina esa fila.

El recorte solo cambia los bordes

Para ` North Hall `, el recorte produce `North Hall`; el espacio interno permanece. No contrae espacios internos, porque podría cambiar identificadores, alineación o formato. El contador registra líneas modificadas, no caracteres eliminados.

Eliminar vacíos depende del valor recortado

Sin recorte, una línea con tres espacios es dato y sobrevive porque no es una cadena vacía. Con recorte, se vuelve vacía y se elimina si se eligió esa opción. El orden es fijo en todas las rutas e idiomas. El contador refleja filas retiradas después del recorte.

Los finales de línea se normalizan

CRLF de Windows y CR aislado se normalizan a LF antes de dividir. Un salto final no crea un elemento fantasma; dos saltos finales representan una línea vacía real. La salida siempre usa LF. ListClean no interpreta CSV ni saltos entre comillas: cada salto físico separa elementos.