I keep trying to get into org mode, and it never gets a hold of me. Would love to hear what amazing things folks are doing with org mode that can't be achieved, e.g., with markdown.
http://doc.norang.ca/org-mode.html gets posted almost every time there's an org-mode front-page link, and there's good reason for that. I've been working in org-mode since 2006-2007, and it's still the most complete, single-page view integration I've seen of the project into someone's life. Sacha Chau (http://sachachua.com/blog/) is also a fantastic resource for information on org-mode, just a bit more spread out across years of posts.
So, yeah, with 10 years of org-mode experience behind me, I still don't feel like it's smooth yet. I never got the hang of clocking. The lack of stable integrations to the outside world are what kill me. Yes, there's been mobile apps from mobileorg to orgzly to new ones I don't know about, but none have ever really nailed the interface. Calendar syncing is iffy, and breaks often. I still use org-mode for notes, blogs, writing, etc, and my emacs config is org-babel'd, which is a fantastic literate programming environment. I'm even working on a small package to export org-mode to gitbook format (http://github.com/qdot/org-gitbook, don't get your hopes up yet as right now it's just 2 small functions, but it does work). org-trello integration (https://org-trello.github.io/) is getting me closer to what I want, but that still means bouncing org -> trello -> other services, which isn't exactly ergonomic.
I would love if org-mode could be my full memex implementation, but there's parts that just aren't there quite yet. Since part of the package is still extremely useful to me, I'll certainly keep trying.
;;;;org-mode configuration
;; Enable org-mode
(require 'org)
;; Make org-mode work with files ending in .org
;;(add-to-list 'auto-mode-alist '("\\.org$" . org-mode))
;; The above is the default in recent emacsen
;; The following lines are always needed. Choose your own keys.
(add-to-list 'auto-mode-alist '("\\.org\\'" . org-mode))
(global-set-key "\C-cl" 'org-store-link)
(global-set-key "\C-ca" 'org-agenda)
(global-set-key "\C-cb" 'org-iswitchb)
;; set todo configuration in org-mode
(setq org-todo-keywords
'((sequence "TODO" "IN-PROGRESS" "WAITING" "|" "NTD" "DONE")))
(setq org-log-done 'time)
;; Hide leading stars
(setq org-startup-indented t
org-hide-leading-stars t)
Step 3 create a .org file
c-x c-f first.org
Step 4 create your first node in your first file
alt-enter
Step 5 play with your nodes
;; cycle through todo list progress: todo in-progress done etc..
shift left and right
;; promote and demote nodes
alt left and right
;; expand and colapse
tab
;; create more nodes
alt-enter
For me it's the editor tools. Keeping my projects/todos/etc in a text file that is organized outliner style is really good, the org specific editor commands makes changing that file easy.
Having the agenda view (calendar) generated, having sparse trees, having spreadsheet like tools, having precise and intuitive folding behaviour make it great.
I don't care at all about the whole org->html pipeline. Who cares. It's not very good and it isn't better than markdown. I get that if you are already in the org world it's nice, but it's not the reason to get into that world.
> I don't care at all about the whole org->html pipeline. Who cares. It's not very good
Sure, you probably wouldn't use it to generate a large, professional website, but I've found it (HTML generation) to be surprisingly customisable and definitely very useful in many cases where one might otherwise write HTML by hand or even in markdown.
> and it isn't better than markdown.
What can markdown do that org cannot? Also, org mode exports to markdown (among many other formats) and its strong support in emacs means the text-editing experience is probably going to be much better than it would be in markdown (in any editor, I would bet).
I'm pretty fluent in org and I still just write it up in markdown or with a zen coding plugin or in hiccup. Although I do occasionally export my org stuff to html for one reason or another. It's really list focused obviously but I don't dislike it, it just doesn't solve any problems for me.
I use it to track my to-do lists at work and take assorted notes.
It provides all the features you would expect from in-depth TODO apps, like arbitrarily-deep task hierarchies, customizeable task statuses, due dates (and recurring due dates), and hyperlinks to other items. Doing that kind of thing is quite easy. But then you can go far beyond that.
I use it to track my time, and a few key strokes gets me a report of how I spent all my time last week. You can also easily track events and look at your agenda for the day, with all appointments shown alongside your deadlines, and then look at the same report for another day in the past/future. This is much better than trying to cross-reference Outlook with a ticketing system to see what's on your plate for a given day.
Some other miscellaneous useful features:
* Support for tables right in the text file (it formats the rows/columns automatically) with Excel-style formula support
* Assuming you do your other work in Emacs, if you're coding and somebody asks you to do something for you, you can do a single key-command to instantly enter a sub-menu that helps you create new TODO items via customizeable templates, and jump right back to where you left off when you finish that
* It supports syntax-highlighted code blocks that you can execute inside the Org file and show the output alongside the code
* Many other reports can be generated, i.e. show me all unfinished TODO items with a certain combination of tags
IMO if you're using Emacs, learning to use Org is a no-brainer, and if you're using Vim, switching to Emacs + Evil just for Org is definitely worth considering.
That list would be never-ending, but the thing that really makes it for me is the way you can do literate programming. On the other hand, I can rarely use it because my colleagues don't use Emacs
There's a guys who wrote an integration with trello for the todo feature. It's working great :)
Sure you have to pull and push manually but still it's awesome
for me it's the ability to publish my blog to a static set of html files (and have pretty-printed source code). The other thing I love is the agenda: having a set of files spread apart (I keep 3: personal, work, random) and add todos in there as part of free text, and be able to keep track of them in a centralized place is priceless.
I also use those files as a journal, tagging them and searching later is very easy and a great way to document things (for personal purposes).
It is not the language per se, but the tools around it that makes it amazing.
After years hearing about org-mode, three months ago I finally decided to try it out. Here is how it went.
I started simple. First I watched a short tutorial which gave me the overall idea [1]. Then, I created a simple todo.org file and started fiddling with it. You add lists with * and nests them with more *
* Project
** Code
*** TODO Email my co.
*** TODO Implement foo
** DONE Implement bar
As a side note, I think Markdown syntax is much better visually. org-mode has more clutter when formatting block code, inline code, and URLs. The good thing about * is that nesting is easy.
After that, I started trying out the keybindings: <tab>/<S-tab> folds lists; C-c C-t is a function to cycle between task states; C-c C-s schedules a task for a given day; C-c C-d sets a final deadline; C-c C-a shows the agenda (day/week/month); you can refile entire groups of tasks (C-c w), archive (C-c C-x C-a), move tasks around (M-ArrowUp/ArrowDown), increase depth (M-ArrowRight/Left). These are the main shortcuts I use. You don't need to memorize all, you can access most through M-x org- and hitting tab to see the functions available.
Another useful function: C-c C-l adds a link, which can be an URL, a file, a folder. Then, you can open that link with C-c C-o. It is great to add context to a task, like
* TODO read hacker news article [[https://news.ycombinator.com/item?id=14571453][link]].
Seeing how customizable it is, then I searched how other people used org-mode to manage their tasks. I found two tutorials implementing GTD. I followed this guide [2] entirely, specially its workflow. And I incorporated some ideas from [3], like clocking my time in a task (C-c C-x C-i or M-x org-clock-in for clocking in, and C-c C-x C-o or M-x org-clock-out for clocking out) and the list of task states. Guide [2] suggests using remember-mode, but it has been replaced since then by capture-mode. capture-mode is a function that contains custom templates for adding tasks (like adding date+time of creation and filing to a given tree/asterisk) and writing notes, seamlessly without changing context in emacs.
The thing is, you don't need to learn and implement all at once. You will build your org file incrementally along with its tools, according to your demand. And there are tools for so many stuff.
Finally, there is Orgzly, which is an open source Android app to sync your org files using Dropbox. This was the best combo for me, as I have all tasks synced with me while it keeps all org-mode functionalities, as they are just text files.
A fair warning is that it might have been somewhat easier for me because I was an Emacs user prior to that, so I already knew the shortcuts to move around text.
Do you have an example or two of changed since since 7.8.11? As someone who started using org-mode at the end of last week, I'd like to make an informed decision on whether or not to go ahead and tattoo this to my forearms, or whether I should wait for an updated version.
Org's interface is very stable. I've been using it since version 6 (Emacs 23, ca. 2009), and the next key binding that changes out from under me will be the first.
Go ahead and get the tattoo; you won't be needing to get it lasered off any time soon. :)
How do you get your information out of orgmode, e.g: for sharing/collaborating with other people? I find this to be very important as I do it often in Asana.
You can convert org-mode documents into LaTeX, html, txt files, etc. pretty easily from within Emacs. The org mode docs explains it. Takes all of 3 seconds when you know how to do it.
Since you mention Asana your probably interested in the task-management side of org-mode. I know people simply check the documents into version-control. Whenever you've done a pull, your task-list has been updated as well. I know someone also made an integration for Asana, but I'm not sure how stable it is
https://github.com/fniessen/refcard-org-mode