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.
Org-mode
| |
---|---|
Basisdaten
| |
Hauptentwickler | Carsten Dominik |
Entwickler | GNU-Projekt, Bastien Guerry, Carsten Dominik, Ihor Radchenko[1] |
Erscheinungsjahr | 2003 |
Aktuelle Version | 9.7.15[2] (2. November 2024) |
Betriebssystem | plattformunabhängig (Emacs) |
Programmiersprache | Emacs Lisp |
Kategorie | Gliederungseditor, Notizbuch, Tabellenkalkulation, Personal Information Manager |
Lizenz | GPL |
orgmode.org |
Geschichte
BearbeitenUrsprünglicher Autor von Org-mode war Carsten Dominik, der im Jahr 2003 mit der Entwicklung begann.[3] Das Projekt wurde von Januar 2011 bis Anfang 2013 von Bastien Guerry geleitet.[4] Mit Version 8.0 im April 2013 trat Bastien Guerry als Maintainer zurück und Carsten Dominik übernahm abermals die Leitung des Projekts,[5] bevor diese wiederum an Guerry überging. Im Dezember 2024 übergab er die Projektleitung an Ihor Radchenko.[6]
Org-mode wurde erstmals in Emacs 22 offiziell aufgenommen.[7]
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.[3]
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.[3] Außerdem sollte es möglich sein, die Gliederung der Notizen umzustrukturieren.[3]
Funktionen
BearbeitenGliederungseditor
BearbeitenOrg-mode macht Emacs zu einem Gliederungseditor (englisch: Outliner), der hierarchisch strukturierte Überschriften mit dem dazugehörigen Text einfalten und re-organisieren kann.[8] 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.
-
Durch Code-Faltung ist nur die erste Gliederungsebene zu sehen
-
Aufgeklappt: Der vollständige Text mit allen Unterpunkten wird angezeigt
Projektmanagement
BearbeitenJeder 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.[9]
Digitales Publizieren
BearbeitenOrg-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).[10][11] Auch der Konverter Pandoc unterstützt das Format Org-mode.
Literate Programming
BearbeitenDa man Gliederung, Fließtext und Programm-Quelltexte frei miteinander kombinieren kann, ist es auch möglich, Org-mode für Literate programming einzusetzen.[12][13][14][15] Das folgende einfache Beispiel zeigt dies für einen R-Code. Hier wird neben der Anweisung auch das Berechnungsergebnis innerhalb des Dokumentes angezeigt:
#+BEGIN_SRC R :results value
aepfel <- 6
birnen <- 4
obst <- aepfel + birnen
#+END_SRC
#+RESULTS:
: 10
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
BearbeitenMobileOrg dient als Anbindung an Smartphones und Tablets, die unter iOS und Android[16] laufen. Hierfür stehen freie Apps bereit, die einen Export aus Org-mode offline lesen und bearbeiten können.
Beispiel-Dokument
Bearbeiten#+TITLE: Die Vorzüge von Org-mode
#+AUTHOR: Otto Normalverbraucher
#+EMAIL: otto@normalverbraucher-wikipedia.org
#+DATE: <2018-05-02 Wed>
#+DESCRIPTION: ein Beispieldokument
#+KEYWORDS: orgmode, wikipedia
#+LANGUAGE: de
* Eine Überschrift erster Ebene
** Eine Überschrift zweiter Ebene
- Und hier folgen nun die Gliederungspunkte.
- Einer nach dem anderen.
- Gliederungen können auch
- geschachtelt
- werden.
- Bei Bedarf: Immer weiter einrücken.
** Eine weitere Überschrift zweiter Ebene
Auch Zitate können als solche ausgezeichnet werden:
#+BEGIN_QUOTE
Pageviews of Hawking’s article led the Top-10 across all language
Wikipedias and was the most popular of the month on the Spanish,
German, French, Portuguese, Arabic, Polish, and Farsi Wikipedias (and
probably more). ([[https://en.wikipedia.org/wiki/Wikipedia:Wikipedia Signpost/2018-04-26/News and notes#Death of Stephen Hawking][Wikipedia Signpost]], 26. April 2018)
#+END_QUOTE
* Nächster Abschnitt
Der Text kann auch als Fließtext ausformuliert werden. Auf diese Weise
kann man ganze Bücher schreiben, die später aus Org-mode in
Zielformate exportiert und gesetzt werden können.
Literatur
Bearbeiten- Abhijeet Chavan: Get Organized with Emacs Org-mode. In: Linux Journal. 1. Dezember 2007. Abgerufen am 4. Februar 2012.
- Carsten Dominik et al.: The Org Mode 8 Reference Manual – Organize your life with GNU Emacs. Samurai Media Limited, Hongkong 2014, ISBN 978-988-13277-0-3 (gedruckte Fassung des Handbuchs zu Org-mode 8.2).
- S. Khare, Y. Misra, V. Choppella: Using Org-mode and Subversion for Managing and Publishing Content in Computer Science Courses. In: 2012 IEEE Fourth International Conference on Technology for Education. 18. Juli 2012, S. 220–223, doi:10.1109/T4E.2012.58 (ieee.org [abgerufen am 5. Januar 2019]).
- Rainer König: Ordnung ins Chaos mit Org-Mode. In: freiesMagazin. 10/2009. S. 18–25.
- Orgpaper: Reproducible Research Papers using Org-mode and R: A Guide. In: GitHub. 10. Januar 2018, abgerufen am 2. Mai 2018 (englisch, Vikas Rawal beschreibt, wie das Buch Jomo Kwame Sundaram, Vikas Rawal, Michael T. Clark: Ending malnutrition: from commitment to action. Hrsg.: Food and Agriculture Organization of the United Nations,. Rome, Italy, ISBN 978-92-5108872-2 (fao.org [PDF]). in Org-mode geschrieben und hergestellt wurde; mit Quelltext).
- Eric Schulte, Dan Davison: Active Documents with Org-Mode (PDF; 879 kB). In: Computing in Science & Engineering. Mai/Juni 2011. S. 2–9.
- Eric Schulte, Dan Davison, Thomas Dye, Carsten Dominik: A Multi-Language Computing Environment for Literate Programming and Reproducible Research. In: Journal of Statistical Software. Band 46, Nr. 3, 25. Januar 2012, doi:10.18637/jss.v046.i03 (Veröffentlichung unter CC-by 3.0, einschließlich der Quelltexte in Org-mode).
- Emmanuele F. Somma: Simplifying LaTeX with Org-mode in Emacs. In: TUGboat. Band 44, Nr. 3, 2023, ISSN 0896-3207, S. 406–420, doi:10.47397/tb/44-3/tb138somma-orgmode (tug.org [abgerufen am 8. Mai 2024]).
Weblinks
Bearbeiten- Offizielle Webpräsenz (englisch)
- Handbuch (englisch)
- Kurzeinführung (englisch)
- Worg – Community-Seite mit Anleitungen (englisch)
- Org-Mode im EmacsWiki (englisch)
- Aufgabenverwaltung im Emacs Org-mode – deutschsprachige Anleitung zu Org-mode
- Org and GTD – Getting Things Done in Org-Mode umsetzen (englisch)
- The Future of Org – Vortrag von Ihor Radchenko bei der EmacsConf 2024 (englisch)
Einzelnachweise
Bearbeiten- ↑ lists.gnu.org.
- ↑ [GNU ELPA] Org version 9.7.15. 2. November 2024 (abgerufen am 3. November 2024).
- ↑ a b c d Carsten Dominik: Emacs Org-mode – a system for note-taking and project planning. GoogleTechTalk. 15. Juli 2008. Abgerufen am 4. Februar 2012.
- ↑ Maintainer-Wechsel von Carsten Dominik zu Bastien Guerry. In: Mailingliste, 15. November 2010. Abgerufen am 23. Juni 2013.
- ↑ Maintainer-Wechsel von Bastien Guerry zu Carsten Dominik. In: Mailingliste, 18. April 2013. Abgerufen am 23. Juni 2013.
- ↑ Bastien Guerry: Ihor is now Org's official maintainer. In: Mailingliste Emacs-devel. 7. Dezember 2024, abgerufen am 7. Dezember 2024 (englisch).
- ↑ corbet: Pre-testing Emacs 22. In: lwn.net. 31. Oktober 2006. Abgerufen am 4. Februar 2012.
- ↑ Die Beschreibung der Funktionen folgt dem Handbuch, das in Emacs über Info verfügbar ist. Onlinefassung: The Org Manual. Version 8.0.3. Abgerufen am 23. Juni 2013.
- ↑ Hendrik Sünkler: Aufgabenverwaltung im Emacs Org mode. In: suenkler.info. 1. Januar 2016, abgerufen am 28. September 2016.
- ↑ muse. In: GNU ELPA. 24. März 2018, abgerufen am 7. Mai 2024 (englisch).
- ↑ Emacs Muse. In: gnu.org. Abgerufen am 25. Oktober 2023 (englisch).
- ↑ Babel: active code in Org-mode. In: Orgmode.de. Worg. Abgerufen am 8. Februar 2012.
- ↑ How to Use Emacs Org-Babel Mode to Write Literate Programming Document in R Language. In: Orgmode.de. Worg. Abgerufen am 7. Februar 2012.
- ↑ Andreas Leha, Tim Beißbarth: The Emacs Org-mode: Reproducible Research and Beyond (PDF; 91 kB). Abstract. Universität Warwick. Ohne Datum. Abgerufen am 7. Februar 2012.
- ↑ Eric Schulte, Dan Davison, Thomas Dye, Carsten Dominik: A Multi-Language Computing Environment for Literate Programming and Reproducible Research. In: Journal of Statistical Software. Band 46, Nr. 3, Januar 2012. Abgerufen am 11. Februar 2012.
- ↑ Documentation. Abgerufen am 7. Februar 2012 (Dokumentation der MobileOrg-App für Android auf github.com).