24 Nov 2025
Announcing Casual CSV
Like Make, the CSV file format will outlive us all. That said, editing a CSV file is a precarious task, as it can be easy to violate its separator and escape rules. Thankfully, the Emacs ecosystem has got you covered, with the 3rd party ELPA package csv-mode. This mode provides all kinds of conveniences including:
- spreadsheet-like visualizing and editing of fields (field alignment)
- separator auto-detection (comma, tab, space, etc.)
- support for quoted fields
- sorting by fields
- killing and yanking fields
To aid in the discovery and usage of these features, I’m happy to announce Casual CSV, a Transient menu for csv-mode, now available in the Casual v2.11.1 update on MELPA.
One notable feature Casual CSV adds is the ability to select a region of rows to copy to the kill-ring as an Org table. This is also usable in Markdown flavors that support tables.
Closing Thoughts and Caveats
YMMV on how well csv-mode works for you as its performance is tied to the size of CSV file you are working with. If you are trying to edit a CSV file that is hundreds of megabytes in size or greater, you might want to think twice before doing this in Emacs with csv-mode.
As a general rule, I try to avoid editing CSV files in the first place, as I prefer to think of them as files for data exchange. My ideal use-case for csv-mode is really for viewing. That said, if you really need to edit a CSV file, it is best to copy it first. Casual CSV reflects this sensibility by offering a command to duplicate a file.
To get the best results out of csv-mode, I highly recommend turning on field alignment and separator auto-detection. In addition, turning off line-wrapping will aid in both visualization and navigation. The following Elisp configuration shows how to do this.
1 2 3 4 5 6 7 8 9 10 | |
Past Articles
| 13 NOV 2025 |
Thoughts on Funding Free Software Development“I don’t like to dream about getting paid.” read more |
| 3 NOV 2025 |
Prototyping a Toolbar UI for EdebugWhere a prototype toolbar UI for Edebug is made available for public scrutiny. read more |
| 30 OCT 2025 |
Announcing Casual EdiffWhere an earnest attempt is made to improve the usability of Ediff for sensibilities in 2025. read more |
| 25 SEP 2025 |
Storing a Link from your Web Browser to BibTeX using Org protocolAutomate writing a BibTeX Online entry to Emacs from your web browser using Org protocol. read more |
| 24 SEP 2025 |
Announcing Casual BibTeXAnnouncing Casual support for BibTeX, a bibilography database. read more |
| 8 SEP 2025 |
Announcing Numeri - an Emacs package for Roman number translationNever not know what Super Bowl it is. read more |
| 24 AUG 2025 |
A proof of concept to put a better Emacs UI on top of GnuplotWhere I demo a PoC of a Transient-based UI for Gnuplot and ask out loud, “should I go further?” read more |
| 12 AUG 2025 |
Fixing Emacs Page NavigationPage navigation in Emacs only does half of what you expect. Here’s how to fix it. read more |
| 5 AUG 2025 |
Emacs Elevator Pitch: Nerd-kitch MerchThe first thing to do in software is make a T-shirt. read more |
Page 1 / 17 >