Org mode for GNU Emacs
Org is a highly flexible structured plain text file format, composed of a few simple, yet versatile, structures — constructed to be both simple enough for the novice and powerful enough for the expert.
Get a glimpse of the expressive power Org offers in the example below. Click the headings and links to discover how Org intelligently folds structural content.
#+title: Example Org File #+author: TEC #+date: 2020-10-27
Outlining
Headings and folding make structured editing a breeze.
Plain text makes it easy to sync and version control Org files.
* Revamp orgmode.org website
Outlining
Headings and folding make structured editing a breeze. Plain text makes it easy to sync and version control Org files.Agenda
List todos across all your files. Filter content, and update it in place.The /beauty/ of org *must* be shared.
[[https://upload.wikimedia.org/wikipedia/commons/b/bd/Share_Icon.svg]]
** DONE Make screenshots
CLOSED: [2020-09-03 Thu 18:24]
** DONE Restyle Site CSS
Go through [[file:style.scss][stylesheet]]
** TODO Check CSS on main pages
Prose
* Learn Org
Org makes easy things trivial and complex things practical. You don't need to learn Org before using Org: read the quickstart page and you should be good to go. If you need more, Org will be here for you as well: dive into the manual and join the community!
** Feedback
#+include: "other/feedback.org*manual" :only-contents t
* Check CSS minification ratios
Babel
Perform literate programming in org, with notebook-like live code execution in the buffer.#+begin_src python
from pathlib import Path cssRatios = [] for css_min in Path("resources/style").glob("*.min.css"): css = css_min.with_suffix('').with_suffix('.css') cssRatios.append([css.name, "{:.0f}% minified ({:4.1f} KiB)".format( 100 * css_min.stat().st_size / css.stat().st_size, css_min.stat().st_size / 1000)]) return cssRatios
#+end_src
Evaluated results
#+RESULTS:
| index.css | 76% minified ( 1.4 KiB) |
| org-demo.css | 77% minified ( 2.8 KiB) |
| errors.css | 74% minified ( 4.9 KiB) |
| org.css | 75% minified (10.7 KiB) |
Further reading
Beyond the quickstart and the manual, Org has a guide and a wealth of community-written documentation on Worg .
Nearly every Org user has a story to tell about how Org enables and empowers them — some have found it so useful that they have written (scientific) papers about the value of Org for conducting reproducible research. Some have produced third party tools to enjoy Org outside of Emacs, such as mobile applications.
More Org
The de facto mimetype for Org files is text/org
. Org files use the
.org
extension. Most operating systems don't know to open .org
files in Emacs, but they can be configured to do so without much
effort.
While the reference implementation of Org in Emacs lisp is by far the most featureful, there are many additional tools that work with Org.
Project heartbeat
New features:
<No new features added to Org mode recently>
- Announcements:
- Bastien Guerry: Org Capturing Introduction (Mon Feb 26 09:42:48 UTC 2024)
- Discussions:
- pinmacs: yank media: allow customization of absolute path a filter for type candidates (Mon Sep 16 04:59:11 UTC 2024)
- Ihor Radchenko: Allow starting multiple org-timers in sequence (was: Feature mostly complete) (Sun Sep 15 13:06:16 UTC 2024)
- Ihor Radchenko: Mark all the tags in HTML export with unique class (was: Adding a class to the auto-inserted <br> elements) (Mon Sep 09 17:14:42 UTC 2024)
- Gregor Zattler: stable literal hrefs in HTML export of direct links and usage of link description instead of numbered links in case of shortend link syntax (Tue Aug 20 15:07:31 UTC 2024)
- Ihor Radchenko: Automatically display images in resutls of evaluation (was: [PATCH v4.0] Re: [PATCH] add a function to only refresh inline images under current headline instead of global buffer) (Sun Aug 18 10:34:34 UTC 2024)
- Recent blog posts (from 2024-09-16 Emacs news):
- Why and How I use "Org Mode" for my writing and more (2022, Reddit, Irreal)
- Insert a screenshot image in latex-mode with the help of org-download (@mmonga@mathstodon.xyz)
- Conditional tangling in org mode based on tags · GitHub (@zondo@mathstodon.xyz)
- How I use :dbconnection in org files (@eslr@mastodon.social)
- A quick hack to convert org/org-roam links from ID to filename with optional pandoc conversion to other formats
- Irreal: Babel and Python
- Guide to creating a multilingual website with org-publish (@len@toot.si)
- Org-zettel-ref-mode release 0.3.1 (Reddit) - More elegant names for overviews, improved sync
- Conversion script: Logseq to org roam (Reddit)
Worg, a World of Org
Org and Org-mode have so many use cases that it is simply not possible to easily document them, let alone show them all off on a single page. As a result, Worg serves as a community wiki and provides a place to document and share information about all aspects of using and working with Org.
For example, Worg contains:
- The FAQ
- Org hacks
- A list of tutorials
- Documentation on all hooks, commands and options
- Org in the wild
- …and much more
Worg is maintained as a Git repository of Org files that are published as an HTML website. New contributors are welcome.
~$ git clone https://git.sr.ht/~bzg/worg
Joining the mailing list
Org mailing list is the central place where to connect with Org community. You can subscribe to the list and browse the list archive on list.orgmode.org or on this mailman page.
If you are not a subscriber to the list, you can still send an email to emacs-orgmode@gnu.org, we will add you to the whitelist of people who can reach the list.
You can read more on the mailing list and more information on Org news on the social web.
You can also connect with other org-thusiasts via IRC at #org-mode
on
Libera.Chat.
The full list of contributors to Org mode is maintained in Worg and you can also check the manual's acknowledgments.
Doom, Spacemacs, Scimax and popular configs
The Emacs starter kits Doom, Spacemacs and Scimax come with a curated
set of packages and configurations that aim to enhance Org mode (and
Emacs more generally) for particular use cases. They include Org
along with integrations between org-mode
and other modes (such as
evil-mode
). Here are links to the current packages included with
Doom, and Spacemacs. Scimax is deeply integrated with Org so a good
place to start is the manual. Doom installs a version of Org that is
close to the development HEAD
, while Spacemacs and Scimax track org
elpa.
Starter kits often make significant changes to the default user experience for Emacs. If you are looking for something closer to vanilla Emacs there are popular configs such as Purcell's emacs.d that include org-mode customization and Org-related packages.
In Other Editors, Android, iOS
While the full set of Org features is currently exclusive to Emacs, basic functionality for Org files has been implemented for a variety of editors and mobile apps. Here are some extensions and apps that enable support for Org files.
- Vim : orgmode.nvim, vim-orgmode, and org.vim
- VS Codium : vscode-org-mode
- Android : Orgzly Revived, Orgro, Org Note
- iOS : MobileOrg, Orgro
- Web : Organice (progressive web app), Org Note