5 ms·
I've been trying for a while to understand what org-mode gives you. I saw Dominik's tech talk at Google, and Bieber's discussion on dropping vim with emacs. I r
by chemag 10y ago
I've been trying for a while to understand what org-mode gives you. I saw Dominik's tech talk at Google, and Bieber's discussion on dropping vim with emacs. I really like the approach taken in this article, showing some of the language features.
IIUC, what org-mode provides you is:
1. a (markdown-like) lightweight document markup language, with lots of syntax hooks ("#+") for different tools.
2. some (even lighter, i.e., no "#+" required) organization-based syntax hooks. These are the TODO/DONE/... labels (plus the "[ ]" tidbits), the table syntax, the metadata (e.g. AUTHOR). In fact, the idea of adding metadata to a lightweight markup language is very interesting.
3. some "programmy" syntax items, including things like tags, spreadsheet-like tables, properties, etc.
4. the agenda view. This is a horizontal search on multiple .org files to create a work agenda.
5. some emacs functionality related to automatic recognition and operation on some of the syntax items. For example, org-table-align will "Re-align the table and don't move to another field".
There are lots of other features, but nothing that other lightweight markup languages don't/can't have too.
My main concerns are:
1. it is inextricably tied to emacs. AFAICT, only (5) in the previous list is emacs-only. All the other functionalities are related to the markup syntax.
2. I wish the org-mode language was fully markdown compatible (I can barely remember the syntax of one, and now I need to use 2).
- dangom 10y agoYou are very right that other lightweight markup languages could provide syntax for everything that org-mode does. But what would possibly interpret that syntax? The fact that org-mode is tied to Emacs is both its weakness but also its strength. By sitting on the Emacs interpreter, org-mode imposes no limits to what you can achieve. The synergy with other Emacs packages is enormous. You also forgot to mention one of the coolest features of Org: exporting your documents to whatever format you may want, e.g. html, latex, markdown, odt, reveal.js, - and it's possible to hack the export to fit your needs usually with modest effort. Here's an example of workflow to collaborate with Word users, for example: https://lists.gnu.org/archive/html/emacs-orgmode/2015-06/msg00246.html https://lists.gnu.org/archive/html/emacs-orgmode/2015-06/msg... And here a recent blog post on exporting org to jupyter notebooks: http://kitchingroup.cheme.cmu.edu/blog/2017/01/21/Exporting-org-mode-to-Jupyter-notebooks/ http://kitchingroup.cheme.cmu.edu/blog/2017/01/21/Exporting-...
- chemag 10y agoI can see some of the benefits of the integration: emacs can do the horizontal search for TODO entries, create an agenda, let you edit it, and move the changes to the right .org file. Still, I'd argue that the file is the important thing here, not the tool to manage it. I should be able to edit .org files with any other tool (e.g. an android app that eventually modifies a .org file in github), and then do re-process the file. Other languages also allow exporting to other formats. I use md-to-pdf all the time, and it works well. Integrating the use of other tools in the export process should be independent of the usage of emacs.
- mikekchar 10y agoThere is lots of functionality you can't do without some kind of non-ordinary editor functionality. The table functionality comes to mind, as does the time management functionality. But, really org-mode's syntax is simple and close enough to MD that it's very easy to implement in other editors. There is a vim package and even an Intellij package. But I challenge you to start implementing the non-syntax parts in another editor and you will quickly see that there is a lot of it.
- stinkytaco 10y agoWell, you can edit it in any text editor. You just don't get the automatic formatting, coloring, table calculations and so on that all depend on elisp.
- throwanem 10y ago> I should be able to edit .org files [...] and then re-process the file. You can. It's a plain text file; Emacs provides a "live" and highly interactive UI for it, but nothing prevents you editing elsewhere and invoking Emacs, in "batch" (i.e. UI-less pure language interpreter) mode if you like, to evaluate, export, or perform whatever other actions on the file. I do this all the time, albeit in an interactive Emacs, with Editorial on my phone and files synced in Dropbox. There are also libraries in languages other than elisp which provide some export functionality; notably, Github uses org-ruby, I think it's called, to HTMLify org files for web UI rendering.
- 10y ago
- nobodyorother 10y agoThe biggest thing, to me, is Babel: it's a system that lets you combine documentation and code into a single unit, and lets you combine code from many different languages into a single tool for processing. Now, instead of an unintelligible readme with an undocumented handful of scripts, I've actually got real documentation and an entire project basically in a single file. http://www.jstatsoft.org/v46/i03 http://www.jstatsoft.org/v46/i03 I've been thinking of starting a project specifically in org-mode for quite a while.
- dwc 10y agoI think a fruitful way of looking at what org mode gives you as... a way to pull together many organizational aspects of your life into one system, as opposed to having 5 different apps that have boundaries between them. Doing an outline for that presentation next week, but need to put it down now, and don't want to forget about it? Schedule a reminder or due date right there in the document and it'll show up in your agenda. No switching over to a reminder app. Want to log time spent on it? Do it right there. In the middle of all that and get a phone call with a new task? You're a hotkey away from recording that info without leaving what you're working on. For me it's the integration of all things organizational that makes it compelling.