Ho scritto una libreria open source che analizza i dati strutturati ma ha omesso intenzionalmente il rilevamento del carriage-return perché non vedo il punto. Aggiunge ulteriore complessità e sovraccarico per poco / nessun vantaggio.
Con mia sorpresa, un utente ha presentato un bug in cui il parser non funzionava e ho scoperto che la causa del problema era che i dati utilizzati terminano con la linea CR anziché con LF o CRLF.
OSX non ha usato terminazioni di linea stile LF da quando è passato a una piattaforma basata su Unix?
So che esistono applicazioni come Notepad ++ in cui è possibile modificare le terminazioni di riga per utilizzare CR in modo esplicito, ma non vedo perché qualcuno vorrebbe farlo.
È sicuro escludere il supporto per la percentuale statisticamente insignificante di utenti che decidono (per qualsiasi motivo) per i vecchi line-end di stile Mac OS?
Aggiornamento:
Per chiarire, il supporto delle terminazioni di riga di Windows (es. CRLF) non richiede il riconoscimento del token CR. Ai fini dell'efficienza, il lexer corrisponde su una base per-char. Ignorando silenziosamente i caratteri CR, il token CRLF si semplifica in LF. In quanto tale, il token CRLF stesso può essere considerato un anacronismo tutto suo ma non è quello di cui tratta questa domanda.
L'ultimo sistema operativo che forniva il supporto a livello di sistema per le terminazioni di linea in stile CR era Mac OS 9 . Ironia della sorte, l'unica applicazione che lo utilizza ancora come predefinita in OSX è Microsoft Excel.