Summary
If you are looking for an open source Microsoft Office equivalent, what should you use, and why?
Content
What I currently use
Options
Offline:
- Microsoft Office
- Libre Office
- Collabora Office
- Only Office
- Google Workspace (via Google Docs Offline Chrome Extension)
Online:
- Microsoft 365
- Collabora Online
- Google Workspace
- Proton Workspace
- rollApp + LibreOffice
Evaluation criteria
- Fully open source
- Works offline via desktop app
- Works online through browser (think Microsoft 365)
- Online and offline versions function basically identically. (Ironically, Microsoft 365 is actually not good in this regard. See here)
- For the offline desktop version at the least, must be able to eventually make a full Vertico command palette for it, once I start using customized Emacs completion interfaces to build command palettes for all non-Emacs programs.
- To be able to do this, you must at the least be able to change keybindings, and import/export your keybindings.
- Even better if there is a
.jsonor.toml(or whatever) config file, meant to be edited directly. But this isn’t strictly necessary. So long as keybindings can be changed and also imported/exported, that alone is sufficient. - An example of an application that flunks this, somewhat shockingly, is Microsoft Excel on Windows. It does not natively allow you to change or customize its built-in keyboard shortcuts… at all. (Ironically Excel for Mac does).
- Has a proper CLI
Not important to me:
- Has a command palette out of the box. (Collabora Office does not, at time of writing).
Further reasoning for decision
What do I need my office system to do?
Basically, I just need to be able to edit normal office files:
.docx.xlsxand.csv.pptx
I want to shift absolutely as much of my life as I can into Org Mode, but I have historical documents right now that aren’t .org files. I mean, most of my files that aren’t .org are Markdown, but the office suite is for the files that aren’t plaintext at all. In practice for me, that is mostly .xlsx spreadsheets. Eventually I’d like to move many of those into Org tables, but it will quite an effort to get Org configured to the point where I am able to fully do that. I think most of what I want to do is possible with enough configuration tinkering, but it isn’t an overnight sort of thing.
Collabora’s sales pitch
Collabora has a number of excellent pages up that I found quite persuasive: