What if my data contains a new line? People focus on the comma then forget the newline is just as significant. That still needs to be escaped and we're right back where we started.<p>Meanwhile, RFC4180 takes less time to read than this entire article.
If we are willing to throw away the comma, use the ASCII RS, record separator symbol. It's exactly what you want, even has a visual ␞ these days.<p>It's a problem solved decades ago with solutions we've failed to adopt. Weird, buggy, poorly parsable CSV is still somehow the norm.<p>Not saying you should, but if you want to change, the answer is already there. Change has to start somewhere...
Not long ago there was also a post about "Unicode Separated Value"
<a href="https://github.com/sixarm/usv">https://github.com/sixarm/usv</a>
<a href="https://news.ycombinator.com/item?id=39679378">https://news.ycombinator.com/item?id=39679378</a>
I don't think CSV can ever be "fixed." Its popular because there is always someone naive enough to think that it works, and ignorant of specs that handle corner cases.
I think we should name the files ".cso"<p>CSO is a stormwater industry term for "Combined Sewer Overflow." They happen in older cities where storm runoff and raw sewage (poop) go into the same sewer system. When there is a lot of rain, the wastewater treatment plants overflow, and then raw sewage runs into waterways.<p><a href="https://en.wikipedia.org/wiki/Combined_sewer#Combined_sewer_overflows_(CSOs)" rel="nofollow">https://en.wikipedia.org/wiki/Combined_sewer#Combined_sewer_...</a>
No! The poop symbol is used in data, and thus is a terrible separator. If you have to quote it anyway, use commas, as that is already in use. Or use "Unicode" separated values.
Perhaps naive, but we escape with \ everywhere else, so why not here?<p>If you're typing in CSV manually, escape with \<p>If you're exporting to CSV, the program already know which part is data and which part is the next cell, so again the program can escape with \
<a href="https://webcache.googleusercontent.com/search?q=cache:https://www.getgrist.com/blog/how-to-fix-csv-make-it-even-more-%25F0%259F%2592%25A9/" rel="nofollow">https://webcache.googleusercontent.com/search?q=cache:https:...</a><p>n.b. not worth your time. tl;dr: lets replace the comma with the poop emoji because commas occur in data.<p>There's already a solution to that (obviously). Best argument a contrarian could make is you "learn about unicode", by which they'd mean, the words "basic multilingual plane" are included at one point.