From Wikipedia, the free encyclopedia
Jump to: navigation, search
Org-mode logo
Original author(s) Carsten Dominik
Developer(s) Carsten Dominik et al.
Stable release 8.3.2 / September 29, 2015; 33 days ago (2015-09-29)[1]
Written in Emacs lisp
Type Personal information management, Notetaking, Outlining, Literate programming
License GPL

Org-mode (also: Org mode;[2] pronounced /ɔːɡ məʊd/) is an editing and organizing mode for notes, planning, and authoring in the free software text editor Emacs. It is characterized by a flexible and versatile system which adapts to various workflows, simple and complex,[3] and by an extensive and extensible function (structured text editing, personal organization, web publishing, programming, etc.),[4] which can integrate with a large variety of external systems and resources.[5]

Org-mode was created by Carsten Dominik in 2003, originally to organize his life and work as a scientist,[6] and since the first release numerous users and developers helped him to improve this free software package,[7] which has grown to over 140,000 lines of code.[8] Org-mode is part of Emacs[9] as a major mode — although it is also released separately, and newer versions of Org-mode than the ones shipped with Emacs are often available. Bastien Guerry is the current maintainer, in cooperation with an active development community.[10]


As briefly described by Org system author Carsten Dominik, "Org-mode does outlining, note-taking, hyperlinks, spreadsheets, TODO lists, project planning, GTD, HTML and LaTeX authoring, all with plain text files in Emacs."[11]

All functionality is optional, to adapt to different use cases with diverse degrees of complexity. From the Org-mode home page, on simplicity and depth: "At its core, Org-mode is a simple outliner for note-taking and list management. You can learn the basics for using it in five minutes.[12] This may be all you need, and Org-mode will not impose more complex features on you. [...] The full feature set is both broad and deep, easy to access, but unobtrusive."[13]

Most aspects of Org-mode's behavior are customizable, in the standard Emacs manner, either by setting variables directly in the .emacs init file, or by using the more user-friendly Customize interface.[14]

The Org system is based on plain text files with a simple markup. A full functionality implies the use of Emacsavailable for most operating systems (Unix, Linux, Apple's OS X, MS Windows, Android, etc.) — or alternatively the use of Vim plugins or Org mobile apps for subsets of the functionality. However, Org's plain text files are directly readable and flexibly editable like any text document and by any text editor (including mobile editors), searchable with common tools such as grep, etc., and manipulable by most programming languages, which results in the maximum available portability and integration between different computers, mobile devices, and operating systems.[15] Emacs and other text editors can be configured to use UTF-8 for international compatibility.[16] Plain text, as a universal open format standard, is also considered by digital archives a high confidence format for long-term data preservation.[17][18]

The system includes a lightweight markup language designed to be easy to write and read in plain text files (similar in function to Markdown, reStructuredText, Textile, etc., with a different implementation), to be exportable (to .html, .tex, .pdf, .odt, etc.), and also to enable functionality, for text formatting such as  *bold*, /italic/, =code=, ~verbatim~, _underlined_, +strike-through+, :tags/drawers:, [[links]], | tables |, - lists, 1. ordered lists, - [X] checklists/tasks, * headlines/projects...

In addition to the Org markup, embedded LaTeX markup can also be used to represent mathematical symbols and formulae.


Org-mode, also known as the Emacs Org mode, has specific support for a number of uses, such as maintaining to-do lists, project planning, and writing web pages. For example, to-do items can optionally be given priorities and deadlines, subdivided into simple steps (nested sub-to-dos and/or checklists), and given tags and properties. An agenda for the items to be done this week or day can then be automatically generated by Org-mode.[19]

Other examples of functionality include:

Plain text hierarchical documents or outlines,[20] which for instance can have the same function (structured notes, brainstorming...) and be exported as mind maps in tree form. There is optional indentation for a cleaner outline view.

A org file shown in emacs text-mode
The same org file shows all trees in emacs org-mode
The same org file shown in overview in emacs org-mode

Structure editing, with a comprehensive set of functions. For example, list items, including subitems, can be quickly moved up/down in a list — to order by priority (first thing first), etc. — using the key bindings M-up and M-down (M = Meta/Alt). If the list is ordered, renumbering is automatic. Also, C-c ^ (C = Ctrl) can automatically sort entries in the active region in a number of ways; it also sorts tables.

Capture, a method used to quickly note down ideas, thoughts or links, and then file them away, edit them or categorize them later. Or, for example, when distractions appear during work hours, they can be promptly noted down to do them later at a suitable time, increasing concentration and efficiency at work. Templates are used for capture items, context (such as external link, timestamp, etc.), and target locations. E.g., among the various target types (where the captured item should be placed) there are file, heading, or a date tree in a file, that is a calendar in the form of an outline of years, months and days. There are many possible ways to use Org-mode, and for instance alternatives or complements to agenda views can be options such as the aforementioned date trees in one file, or simple calendar files compatible with any mobile text editor (e.g.,,, Any of these options can include schedules and references to other files (e.g. projects, task lists and notes for work and study, free time, people, etc.).[21] Also, a simpler alternative or complement to Org's capture method can be Emacs' custom find-file dedicated keys, such as <C-f1>, to directly open most used .org files for quick notes.[22]

Search options (links, tags, properties, agenda), in addition to those in Emacs (incremental search, helm,[23] deft,[24] Emacs grep, occur, etc.). E.g., with property searches like C-c / p, Org files can be used as searchable databases.[25]

Org files as interconnected pages of a personal wiki, with external links like  [[][topic]] or, using link abbreviations for absolute paths,  [[wiki:Topic][topic]]. Other methods for quick file and buffer (opened file) navigation are Emacs' Dired, Buffer Menu, Speedbar, and Sr-Speedbar. Also, Org-velocity and Emacs' Deft are similar to Notational Velocity.

Org-mode can be used as a distributed issue tracker, by storing .org files in a distributed revision control system such as Git. Developers of the Org-babel extension to Org-mode (for integration with programming languages) used Org-mode in this way to track bugs and feature requests.[26]

Add-on packages, contributed by different developers in a wide variety from, for example, generic exporters to any user-defined markup format such as Wikipedia's markup (org-export-generic, org-export), to flashcard learning systems implementing SuperMemo's algorithms (org-drill, org-learn).[27]

And, for instance: tree visibility cycling, quick table and spreadsheet editing, 2D and 3D information graphs, habit tracking, views, work time clocking, effort estimates, attachments, archiving, appointment reminders, automatic web publishing, customizable hook variables, etc.[28][29]

There is extensive functionality related to integration with other systems.


Org-mode can integrate with:

  • RSS feeds. Org-mode can add and change entries based on information found in RSS and Atom feeds.
  • Non-Org text files, using on them the Org-mode structure, list, table, and link editing via Org minor modes (Orgstruct, Orgtbl, org-link-minor-mode).
  • Calfw, a calendar table view in Emacs, using calfw-org for the Org agenda. Calfw also displays iCalendar (Google Calendar, etc.).[30]
  • Emacs' BBDB[31] to link to contact details for people. An alternative is org-contacts.[32]
  • Emacs email and news clients such as Gnus, VM and Wanderlust, to link to emails or newsgroup messages. Also, links like  mailto:... can open any external default email application, such as Mozilla Thunderbird.
  • Outlook, using org-outlook to create tasks from Outlook items, and open Outlook links in Org-mode.[33]
  • Web browsers like Firefox, to link to URLs (e.g. with Ctrl key binding C-c C-l):  [[][description]]. Bare URLs like are also enabled as links by default.
  • Any files, via absolute or relative hyperlinks (C-u C-c C-l), integrating with Emacs and default applications. E.g., a bare  file+sys:anyfile.pdf is an active file link.
  • Images, such as  [[/images/image.jpg]], which can be linked and exported. Images can also be shown graphically integrated with the Org text on Emacs, using org-toggle-inline-images (C-c C-x C-v), org-startup-with-inline-images and, new in Org 8, org-image-actual-width.
  • Mobile phones (smartphones) and tablets, by synchronizing Org files (e.g. with WebDAV, Dropbox, Unison, SyncToy...), and using one or several of the available mobile integrations for Android, iOS, and other platforms (e.g. Emacs on an Android tablet, a mobile text editor on any smartphone, etc.):
    • GNU Emacs for Android,[34] including Org-mode. Initial version, most Ctrl, etc. key bindings work with Hacker's Keyboard app, or a hardware keyboard and External Keyboard Helper Pro app. Customizable with the /sdcard/emacs/.emacs init file. A large display is recommended.
    • Emacs with Org-mode running on a remote server or VPS, connecting to it via a mobile SSH client such as Terminal IDE for Android, or iSSH for iPhone and iPad.
    • Emacs for Maemo including Org-mode (e.g. Nokia N900 smartphone with slide-out keyboard...), and other Emacs ports.[35]
    • Org mobile apps:[36]
      • MobileOrg for iOS.
      • MobileOrg for Android.
      • MobileOrgNG for Android.
    • Emacs evernote mode, to refer and edit Evernote notes directly from Emacs. There is also org-post-subtree-to-evernote.[37]
    • Org-toodledo, which synchronizes tasks bi-directionally between Org-mode and over fifty apps (on iPhone, iPad, iPod touch, Android, Windows Phone, BlackBerry, webOS, Symbian...) via Toodledo's web app and open API.[38]
    • Any mobile text editor for plain text files, such as Jota Text Editor for Android (or Jota+, which supports syntax highlighting of Org markup's main structure) or Nebulous Notes for iPhone and iPad, or Simplenote sync apps such as mNote for Android or Simplenote for iPhone and iPad.

Some of the integrations above require third-party Org-mode extensions, all of which are free software.

See also[edit]

External links[edit]


  1. ^ "Org mode for Emacs – Your Life in Plain Text". OrgMode team. Retrieved 2015-04-10. 
  2. ^ Gmane: Org, Org-mode, Orgmode, Org Mode - Carsten Dominik: Org, the system; Org-mode, the major mode
  3. ^ See System section
  4. ^ See Functionality section
  5. ^ See Integration section
  6. ^ Dominik, Carsten, Emacs Org-mode: Organizing a Scientist's Life and Work (abstract and video), Max Planck Institute for Neurological Research 
  7. ^ Org Mode Manual: History and acknowledgments, Free Software Foundation 
  8. ^ org-mode, Black Duck Open Hub (open-source project statistics) 
  9. ^ Corbet, Jonathan (2006), "Pre-testing Emacs 22", 
  10. ^ Org mode for Emacs – Community 
  11. ^ Dominik, Carsten, Technical description in 24 words 
  12. ^ O'Toole, David, Org tutorial 
  13. ^ The Internet Archive: (2011-07-23)
  14. ^ GNU Emacs Manual: Customization, Free Software Foundation 
  15. ^ "Plain text is supported by nearly every application program on every operating system" (The Linux Information Project: What is plain text?)
  16. ^ Emacs and UTF-8 encoding
  17. ^ Recommended Data Formats for Preservation Purposes (PDF), Florida Digital Archive 
  18. ^ University Digital Conservancy Preservation Policy, University of Minnesota Digital Conservancy 
  19. ^ Chavan, Abhijeet (2007), "Get Organized with Emacs Org-mode", Linux Journal 
  20. ^ Chua, Sacha, Outlining Your Notes with Org 
  21. ^ Cave, Charles, Capture mode and Date Trees in org-mode 
  22. ^ EmacsWiki: Dedicated Keys
  23. ^ helm
  24. ^ deft.el
  25. ^ Janusz, Edward, Emacs, Org Mode, and a database like no other 
  26. ^ Org-babel development 
  27. ^ Org-mode Contributed Packages
  28. ^ The Org Manual, Free Software Foundation 
  29. ^ Hansen, Bernt, Org Mode - Organize Your Life In Plain Text 
  30. ^ EmacsWiki: Calfw, a calendar framework for Emacs
  31. ^ BBDB for GNU Emacs
  32. ^ Danjou, Julien, org-contacts 
  33. ^ EmacsWiki: OrgOutlook
  34. ^ GNU Emacs for Android
  35. ^ EmacsWiki: Maemo Emacs, Category Ports
  36. ^ Org mobile apps: MobileOrg for iOS, MobileOrg for Android, MobileOrgNG for Android
  37. ^ Chua, Sacha, zomg, Evernote and Emacs 
  38. ^ Toodledo, integrated with org-toodledo
  39. ^ Vim plugins for Org-mode functionality: VimOrganizer, vim-orgmode, VOoM, vxfold.vim
  40. ^ EmacsWiki: Viper, Evil (Vi/Vim emulation layers)
  41. ^ Steckerhalter: ob-php
  42. ^ Babel: active code in Org-mode
  43. ^ GitHub Markup 
  44. ^ Bao, Haojun, org-jira 
  45. ^ Magnusson, Daniel, orgmode 
  46. ^ Dumont, Antoine R., org-trello – Sync org-mode file and trello 
  47. ^ Novoid: Memacs
  48. ^ Aptel, Aurélien, Org-sync 
  49. ^ BBCode: ox-bbcode.el


Journal articles[edit]