構造化されたデータを解析するオープンソースライブラリを作成しましたが、要点がわからないため、意図的にキャリッジリターン検出を省略しました。追加の複雑さとオーバーヘッドが追加され、ほとんど/まったく利点がありません。
驚いたことに、ユーザーがパーサーが機能していなかったバグを提出しました。問題の原因は、データがLFまたはCRLFではなくCR行の終わりを使用していることにあります。
UNIXベースのプラットフォームに切り替えてから、OSXはLFスタイルの行末記号を使用していませんか?
行末を明示的にCRを使用するように変更できるNotepad ++のようなアプリケーションがあることは知っていますが、なぜだれがそうしたいのかわかりません。
(何らかの理由で)古いMac OSスタイルの行末を決定する統計的に重要でない割合のユーザーのサポートを除外しても安全ですか?
更新:
明確にするために、Windowsの行末記号(CRLFなど)のサポートには、CRトークンの認識は必要ありません。効率化のため、字句解析器は文字ごとに一致します。CR文字を静かに無視することにより、CRLFトークンはLFに単純化されます。そのため、CRLFトークン自体は時代錯誤とみなすことができますが、それはこの質問の目的ではありません。
CRスタイルの行末をシステム全体でサポートする最後のOSはMac OS 9でした。皮肉なことに、OSXでデフォルトとして使用している唯一のアプリケーションはMicrosoft Excelです。
CR
、コードベースへの改行をサポートするために単にシャベルで作業するよりも多くの時間を費やしました。(...これが当てはまらないと固く信じている場合、パーサーのデザインはかなり多忙でなければなりません)