Outline-based notes management and organizer
org-9.7pre0.20240225.113038.tar (.sig), 2024-Feb-25, 9.60 MiB
Bastien Guerry <>
Browse ELPA's repository
CGit or Gitweb

To install this package from Emacs, use package-install or list-packages.

Full description

This is a distribution of Org Mode, a major mode for keeping notes, authoring documents, computational notebooks, literate programming, maintaining to-do lists, planning projects, and more — in a fast and effective plain text system.

Check the Org Mode website for more.

1. Install Org

Org is part of GNU Emacs: you probably don't need to install it.

To install a more recent version, please use command: M-x list-packages, find "org" in the list, click on it, and click "Install" in the popped up window.

2. Join the GNU Project

Org is part of GNU Emacs and GNU Emacs is part of the GNU Operating System, developed by the GNU Project.

If you are the author of an awesome program and want to join us in writing Free (libre) Software, please consider making it an official GNU program and become a GNU Maintainer. Instructions on how to do this are here

Don't have a program to contribute? Look at all the other ways to help:

And to learn more about Free (libre) Software in general, please read and share this page:

3. License

Org-mode is published under the GNU GPLv3 license or any later version, the same as GNU Emacs.

Org-mode is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with Org mode. If not, see

Old versions

org-9.7pre0.20240225.85038.tar.lz2024-Feb-251.61 MiB
org-9.7pre0.20240224.125644.tar.lz2024-Feb-241.61 MiB
org-9.7pre0.20240219.102047.tar.lz2024-Feb-191.61 MiB
org-9.7pre0.20240209.203254.tar.lz2024-Feb-091.60 MiB
org-9.7pre0.20240131.145626.tar.lz2024-Jan-311.60 MiB
org-9.7pre0.20231231.103255.tar.lz2023-Dec-311.60 MiB
org- MiB
org- MiB
org-0.20171225.tar.lz2017-Dec-251.17 MiB
org-0.20121231.tar.lz2012-Dec-311017 KiB


ORG NEWS -- history of user-visible changes.   -*- mode: org; coding: utf-8 -*-

#+STARTUP: overview

#+LINK: doc
#+LINK: msg
#+LINK: git

Copyright (C) 2012-2024 Free Software Foundation, Inc.
See the end of the file for license conditions.

Please send Org bug reports to

* Version 9.7 (not released yet)
** Important announcements and breaking changes
*** When ~org-link-file-path-type~ is a function, its argument is now a filename as it is read by ~org-insert-link~; not an absolute path

Previously, when ~org-link-file-path-type~ is set to a function, the
function argument was the filename from the link expanded via
~expand-file-name~.  Now, a bare filename is passed to the function.

*** Org export backends can now disable citation processors

A new global export option ~:with-cite-processors~, when set to nil,
disables citation processors completely.  This option is available to
export backends via ~:options-alist~ when defining the backend.

The backends disabling citation processors must take care about
exporting citation objects and =print_bibliography= keywords via

Users can disable citations processors by customizing new
~org-export-process-citations~ option.

*** =ox-org= disables citation processors by default

Previously, when exporting to Org, all the citations and
=print_bibliography= keywords, were transformed according to the
chosen citation processor.

This is no loner the case.  All the citation-related markup is now
exported as is.

The previous behavior can be reverted by setting new custom option

*** =ox-org= now exports special table rows by default

Previously, when exporting to Org, special table rows (for example,
width cookies) were not exported.   Now, they are exported by default.

You can customize new option ~org-org-with-special-rows~ to fall back to previous behavior.

*** Org babel backends are now expected to define an additional API function ~org-babel-session-buffer:<lang>~

Org babel now uses session buffer (if it exists) to retrieve
~default-directory~ environment during src block evaluation.

By default, buffer named like session is checked.  All the backends
that create sessions inside buffers named differently should provide a
function ~org-babel-session-buffer:<lang>~.  The function must accept
two arguments - session name and info list (as returned by
~org-babel-get-src-block-info~); and return the session buffer name.

*** ~org-insert-subheading~ no longer inserts a sub-heading above current when point is at the beginning of line

Previously, calling ~org-insert-subheading~ on

: * Heading 1
: <point>* Heading 2


: * Heading 1
: ** <point>
: * Heading 2

This is no longer the case.  The sub-heading is always created below
current heading (prefix arguments have the same meaning as in

: * Heading 1
: * Heading 2
: ** <point>

*** Org mode now fontifies whole table lines (including newline) according to ~org-table~ face

Previously, leading indentation and trailing newline in table rows
were not fontified using ~org-table~ face.  ~default~ face was used instead.
This made it impossible to scale line height when ~org-table~ face has
smaller height than default (Emacs calculates line height using the tallest face).

Now, new ~org-table-row~ face is used on the whole table row lines,
including indentation and the final newline. This face, by default,
inherits from ~org-table~ face.

If the new behavior is not desired, ~org-table-row~ face can be
changed to inherit from ~default~ face.

~org-table~ takes precedence over ~org-table-row~ for the parts of
table rows without indentation and newline.

*** =ox-latex=: ~org-latex-line-break-safe~ is deprecated

~org-latex-line-break-safe~ constant was previously introduced to deal
with edge cases when LaTeX interprets [...] as LaTeX command