# Org-mode

Org-mode (auch: Org Mode, org mode oder orgmode) ist ein Programm für den freien Texteditor Emacs, das dazu dient, Notizen zu sammeln, Texte zu entwerfen und sie in verschiedenen Formaten zu veröffentlichen. Dazu hält dieser Editiermodus auch Funktionen zur Projektplanung und Aufgabenverwaltung bereit. Alle Inhalte werden in reinem Text erfasst und mit einer eigenen vereinfachten Auszeichnungssprache versehen. Auch dieses Dateiformat wird daher als Org-mode bezeichnet. Die damit erstellten Inhalte (wissenschaftliche Aufsätze, Bücher) können ohne externe Konverter direkt aus Org-mode heraus in verschiedene Zielformate exportiert und zur Herstellung für Print und Online weiter verarbeitet werden. Org-mode ist eine Alternative zu Markdown; auf GitHub werden Readme-Dateien im Format Org-mode wie Markdown-Dateien angezeigt.

## Geschichte

Ursprünglicher Autor von Org-mode war Carsten Dominik, der im Jahr 2003 mit der Entwicklung begann. Das Projekt wurde von Januar 2011 bis Anfang 2013 von Bastien Guerry geleitet. Mit Version 8.0 im April 2013 trat Bastien Guerry als Maintainer zurück und Carsten Dominik übernahm abermals die Leitung des Projekts, bevor diese wiederum an Guerry überging. Im Dezember 2024 übergab er die Projektleitung an Ihor Radchenko.
Org-mode wurde erstmals in Emacs 22 offiziell aufgenommen.
Ziel war es vor allem, einen Editier-Modus (Major mode) für Emacs zu entwickeln, mit dem es möglich ist, Notizen für die wissenschaftliche Arbeit, die als reiner Text vorliegen, einzugeben, sie zu „organisieren“ (daher der Name Org-mode) und diese gleichzeitig mit Features für das Projektmanagement zu kombinieren.
Der ältere Outline mode in Emacs erschien Dominik hierfür unzureichend, weil er zu sehr an einer Gliederung mit Überschriften orientiert war und Listen nicht unterstützte. Außerdem erschienen ihm die Tastaturkürzel zu schwer erinnerlich. Er stellte sich eine Benutzerschnittstelle vor, bei der die Befehle in einem Zyklus durchgeschaltet werden können. Außerdem sollte es möglich sein, die Gliederung der Notizen umzustrukturieren.

## Funktionen
### Gliederungseditor

Org-mode macht Emacs zu einem Gliederungseditor (englisch: Outliner), der hierarchisch strukturierte Überschriften mit dem dazugehörigen Text einfalten und re-organisieren kann. Gliederungspunkte können mitsamt den Unterpunkten innerhalb einer Liste verschoben werden, sowohl vertikal (innerhalb der Reihenfolge in der Liste) als auch horizontal (hinsichtlich der Gliederungstiefe). Strukturelemente werden farblich hervorgehoben.
Der Text kann in vielfacher Weise formatiert und strukturiert werden (beispielsweise gibt es Auszeichnungen für fette oder kursive Formatierung, für Listen und Fußnoten). Auch Hyperlinks zu externen Ressourcen können eingefügt werden. Außerdem ist ein Editor enthalten, mit dem man Tabellen in reinem Text flexibel eingeben und auch nachträglich bearbeiten kann. In der Tabelle sind zudem einfache Berechnungen möglich.
* Org-mode als Gliederungseditor zur Projektverwaltung
* Durch Code-Faltung ist nur die erste Gliederungsebene zu sehen
* Aufgeklappt: Der vollständige Text mit allen Unterpunkten wird angezeigt

### Projektmanagement

Jeder Teil des Texts einer Org-mode-Datei kann mit Metadaten versehen werden (Schlagwörter, Fristen, Zeitstempel), die dem Projektmanagement und der Projektplanung dienen. Eine Agenda-Ansicht kann alle zeitbezogenen Metadaten in Form eines Wochen- oder Tageskalenders anzeigen. So kann man zum Beispiel Notizen sammeln oder einen Fristen- oder einen Wiedervorlagenkalender führen. Dazu arbeitet Org-mode auf Wunsch auch mit dem Kalender (Calendar) und dem Tagebuch (Diary) von Emacs zusammen.

### Digitales Publizieren

Org-mode verfügt über mehrere Exportfilter, mit denen ein Text, der mit dem Modus geschrieben wurde, zur Veröffentlichung nach HTML, DocBook, LaTeX, Markdown und ODT exportiert werden kann. Für Präsentationen kann das Beamer-Paket für LaTeX verwendet werden. Damit wird Org-mode zu einer allgemeinen Schreib- und Publikations-Umgebung, in der ganze Projekte durchgeführt werden können, ähnlich wie das ältere Projekt Emacs Muse, das nur noch in längeren zeitlichen Abständen weiter entwickelt wird (Version 3.20.2 von 2018). Auch der Konverter Pandoc unterstützt das Format Org-mode.

### Literate Programming

Da man Gliederung, Fließtext und Programm-Quelltexte frei miteinander kombinieren kann, ist es auch möglich, Org-mode für Literate programming einzusetzen. Das folgende einfache Beispiel zeigt dies für einen R-Code. Hier wird neben der Anweisung auch das Berechnungsergebnis innerhalb des Dokumentes angezeigt:
Seine besondere Stärke in Verbindung mit Org-Mode ist dann das Exportieren der Berechnungen und Ergebnisse innerhalb des Dokuments. Manche Benutzer pflegen auch ihre Emacs-Konfigurationsdateien in Org-Mode und exportieren die Emacs-Lisp-Datei. Dadurch entfallen die Kommentare in der Konfiguration, so dass die Datei beim Programmstart deutlich schneller geladen werden kann.

### Mobile Nutzung

MobileOrg dient als Anbindung an Smartphones und Tablets, die unter iOS und Android laufen. Hierfür stehen freie Apps bereit, die einen Export aus Org-mode offline lesen und bearbeiten können.