org-mode/intro.org

40 lines
2.2 KiB
Org Mode
Raw Normal View History

* Introduction
[[http:orgmode.org][Emacs org-mode]] is an exceptionally rich emacs mode based around
hierachically-structured text documents. The environment that has
been designed around this central concept provides support for many
different usage modes. At a high level, important areas include note
taking, project planning and document publishing. Working with the
text files is made efficient by document navigation and editing
facilities which include creation, folding, restructuring and
repositioning of subtrees and list items, and a plain-text
spreadsheet for tabular data. Nevertheless, org is unobtrusive: an
org-mode buffer may make use of only the most basic features, or
even none at all. It is notoriously difficult to describe org
briefly: good starting points include [...].
Org therefore provides an ideal environment for literate
programming: chunks of source code in any language can be embedded
within the org-mode text file. The hierarchical structure of the
document may reflect, for example, the logic of the problem being
addressed or the structure of the project within which the problem
arises. Embedding source code within Org documents means that, for
example, the project-planning features of org-mode are immediately
available, and that the document may be published to HTML and LaTeX
with appropriate formatting of the code.
In addition to the standard org functionality, org provides
convenient switching between the org buffer with embedded code, and
a separate buffer in the native language mode. Thus literate
programming with org-mode does not impact upon language-specific
modes for working with source code in emacs. For example, when
working with [[http://www.r-project.org/][R]] code, you do not leave [[http://ess.r-project.org/][ess-mode]] until you flick back
from the code buffer to view it embedded within an org buffer, which
may also contain chunks of code in other languages.
* Litorgy
Litorgy provides several extensions to the above-described method of
working with source code in org mode:
1. Code block execution for interpreted languages (python, ruby, shell, R, perl)
2. [...]