Skip to main content

The Org Manual

This manual is for Org version 9.4.

Copyright © 2004–2021 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with the Front-Cover Texts being “A GNU Manual," and with the Back-Cover Texts as in (a) below. A copy of the license is included in the section entitled “GNU Free Documentation License."

(a) The FSF’s Back-Cover Text is: “You have the freedom to copy and modify this GNU manual."

IntroductionGetting started.
Document StructureA tree works like your brain.
TablesPure magic for quick formatting.
HyperlinksNotes in context.
TODO ItemsEvery tree branch can be a TODO item.
TagsTagging headlines and matching sets of tags.
Properties and ColumnsStoring information about an entry.
Dates and TimesMaking items useful for planning.
Refiling and ArchivingMoving and copying information with ease.
Capture and AttachmentsDealing with external data.
Agenda ViewsCollecting information into views.
Markup for Rich ContentsCompose beautiful documents.
ExportingSharing and publishing notes.
PublishingCreate a web site of linked Org files.
Working with Source CodeExport, evaluate, and tangle code blocks.
MiscellaneousAll the rest which did not fit elsewhere.
HackingHow to hack your way around.
History and AcknowledgmentsHow Org came into being.
GNU Free Documentation LicenseThe license for this documentation.
Main IndexAn index of Org’s concepts and features.
Key IndexKey bindings and where they are described.
Command and Function IndexCommand names and some internal functions.
Variable IndexVariables mentioned in the manual.

Detailed Node Listing

Introduction
SummaryBrief summary of what Org does.
InstallationInstalling Org.
ActivationHow to activate Org for certain buffers.
FeedbackBug reports, ideas, patches, etc.
ConventionsTypesetting conventions used in this manual.
Document Structure
HeadlinesHow to typeset Org tree headlines.
Visibility CyclingShow and hide, much simplified.
MotionJumping to other headlines.
Structure EditingChanging sequence and level of headlines.
Sparse TreesMatches embedded in context.
Plain ListsAdditional structure within an entry.
DrawersTucking stuff away.
BlocksFolding blocks.
Visibility Cycling
Global and local cyclingCycling through various visibility states.
Initial visibilitySetting the initial visibility state.
Catching invisible editsPreventing mistakes when editing invisible parts.
Tables
Built-in Table EditorSimple tables.
Column Width and AlignmentOverrule the automatic settings.
Column GroupsGrouping to trigger vertical lines.
Orgtbl ModeThe table editor as minor mode.
The SpreadsheetThe table editor has spreadsheet capabilities.
Org PlotPlotting from Org tables.
The Spreadsheet
ReferencesHow to refer to another field or range.
Formula syntax for CalcUsing Calc to compute stuff.
Formula syntax for LispWriting formulas in Emacs Lisp.
Durations and time valuesHow to compute durations and time values.
Field and range formulasFormula for specific (ranges of) fields.
Column formulasFormulas valid for an entire column.
Lookup functionsLookup functions for searching tables.
Editing and debugging formulasFixing formulas.
Updating the tableRecomputing all dependent fields.
Advanced featuresField and column names, automatic recalculation...
Hyperlinks
Link FormatHow links in Org are formatted.
Internal LinksLinks to other places in the current file.
Radio TargetsMake targets trigger links in plain text.
External LinksURL-like links to the world.
Handling LinksCreating, inserting and following.
Using Links Outside OrgLinking from my C source code?
Link AbbreviationsShortcuts for writing complex links.
Search OptionsLinking to a specific location.
Custom SearchesWhen the default search is not enough.
TODO Items
TODO BasicsMarking and displaying TODO entries.
TODO ExtensionsWorkflow and assignments.
Progress LoggingDates and notes for progress.
PrioritiesSome things are more important than others.
Breaking Down TasksSplitting a task into manageable pieces.
CheckboxesTick-off lists.
TODO Extensions
Workflow statesFrom TODO to DONE in steps.
TODO typesI do this, Fred does the rest.
Multiple sets in one fileMixing it all, still finding your way.
Fast access to TODO statesSingle letter selection of state.
Per-file keywordsDifferent files, different requirements.
Faces for TODO keywordsHighlighting states.
TODO dependenciesWhen one task needs to wait for others.
Progress Logging
Closing itemsWhen was this entry marked as done?
Tracking TODO state changesWhen did the status change?
Tracking your habitsHow consistent have you been?
Tags
Tag InheritanceTags use the tree structure of an outline.
Setting TagsHow to assign tags to a headline.
Tag HierarchyCreate a hierarchy of tags.
Tag SearchesSearching for combinations of tags.
Properties and Columns
Property SyntaxHow properties are spelled out.
Special PropertiesAccess to other Org mode features.
Property SearchesMatching property values.
Property InheritancePassing values down a tree.
Column ViewTabular viewing and editing.
Column View
Defining columnsThe COLUMNS format property.
Using column viewHow to create and use column view.
Capturing column viewA dynamic block for column view.
Defining columns
Scope of column definitionsWhere defined, where valid?
Column attributesAppearance and content of a column.
Dates and Times
TimestampsAssigning a time to a tree entry.
Creating TimestampsCommands to insert timestamps.
Deadlines and SchedulingPlanning your work.
Clocking Work TimeTracking how long you spend on a task.
Effort EstimatesPlanning work effort in advance.
TimersNotes with a running timer.
Creating Timestamps
The date/time promptHow Org mode helps you enter dates and times.
Custom time formatMaking dates look different.
Deadlines and Scheduling
Inserting deadline/schedulePlanning items.
Repeated tasksItems that show up again and again.
Clocking Work Time
Clocking commandsStarting and stopping a clock.
The clock tableDetailed reports.
Resolving idle timeResolving time when you’ve been idle.
Refiling and Archiving
Refile and CopyMoving/copying a tree from one place to another.
ArchivingWhat to do with finished products.
Archiving
Moving subtreesMoving a tree to an archive file.
Internal archivingSwitch off a tree but keep it in the file.
Capture and Attachments
CaptureCapturing new stuff.
AttachmentsAttach files to outlines.
RSS FeedsGetting input from RSS feeds.
Capture
Setting up captureWhere notes will be stored.
Using captureCommands to invoke and terminate capture.
Capture templatesDefine the outline of different note types.
Capture templates
Template elementsWhat is needed for a complete template entry.
Template expansionFilling in information about time and context.
Templates in contextsOnly show a template in a specific context.
Attachments
Attachment defaults and dispatcherHow to access attachment commands
Attachment optionsConfiguring the attachment system
Attachment linksHyperlink access to attachments
Automatic version-control with GitEverything safely stored away
Attach from DiredUsing dired to select an attachment
Agenda Views
Agenda FilesFiles being searched for agenda information.
Agenda DispatcherKeyboard access to agenda views.
Built-in Agenda ViewsWhat is available out of the box?
Presentation and SortingHow agenda items are prepared for display.
Agenda CommandsRemote editing of Org trees.
Custom Agenda ViewsDefining special searches and views.
Exporting Agenda ViewsWriting a view to a file.
Agenda Column ViewUsing column view for collected entries.
Built-in Agenda Views
Weekly/daily agendaThe calendar page with current tasks.
Global TODO listAll unfinished action items.
Matching tags and propertiesStructured information with fine-tuned search.
Search viewFind entries by searching for text.
Stuck projectsFind projects you need to review.
Presentation and Sorting
CategoriesNot all tasks are equal.
Time-of-day specificationsHow the agenda knows the time.
Sorting of agenda itemsThe order of things.
Filtering/limiting agenda itemsDynamically narrow the agenda.
Custom Agenda Views
Storing searchesType once, use often.
Block agendaAll the stuff you need in a single buffer.
Setting optionsChanging the rules.
Markup for Rich Contents
ParagraphsThe basic unit of text.
Emphasis and MonospaceBold, italic, etc.
Subscripts and SuperscriptsSimple syntax for raising/lowering text.
Special SymbolsGreek letters and other symbols.
Embedded LaTeXLaTeX can be freely used inside Org documents.
Literal ExamplesSource code examples with special formatting.
ImagesDisplay an image.
CaptionsDescribe tables, images...
Horizontal RulesMake a line.
Creating FootnotesEdit and read footnotes.
Embedded LaTeX
LaTeX fragmentsComplex formulas made easy.
Previewing LaTeX fragmentsWhat will this snippet look like?
CDLaTeX modeSpeed up entering of formulas.
Exporting
The Export DispatcherThe main interface.
Export SettingsCommon export settings.
Table of ContentsThe if and where of the table of contents.
Include FilesInclude additional files into a document.
Macro ReplacementUse macros to create templates.
Comment LinesWhat will not be exported.
ASCII/Latin-1/UTF-8 exportExporting to flat files with encoding.
Beamer ExportProducing presentations and slides.
HTML ExportExporting to HTML.
LaTeX ExportExporting to LaTeX and processing to PDF.
Markdown ExportExporting to Markdown.
OpenDocument Text ExportExporting to OpenDocument Text.
Org ExportExporting to Org.
Texinfo ExportExporting to Texinfo.
iCalendar ExportExporting to iCalendar.
Other Built-in Back-endsExporting to a man page.
Advanced Export ConfigurationFine-tuning the export output.
Export in Foreign BuffersAuthor tables and lists in Org syntax.
Beamer Export
Beamer export commandsFor creating Beamer documents.
Beamer specific export settingsFor customizing Beamer export.
Frames and Blocks in BeamerFor composing Beamer slides.
Beamer specific syntaxFor using in Org documents.
Editing supportEditing support.
A Beamer exampleA complete presentation.
HTML Export
HTML export commandsInvoking HTML export.
HTML specific export settingsSettings for HTML export.
HTML doctypesExporting various (X)HTML flavors.
HTML preamble and postambleInserting preamble and postamble.
Quoting HTML tagsUsing direct HTML in Org files.
Headlines in HTML exportFormatting headlines.
Links in HTML exportInserting and formatting links.
Tables in HTML exportHow to modify the formatting of tables.
Images in HTML exportHow to insert figures into HTML output.
Math formatting in HTML exportBeautiful math also on the web.
Text areas in HTML exportAn alternate way to show an example.
CSS supportChanging the appearance of the output.
JavaScript supportInfo and folding in a web browser.
LaTeX Export
LaTeX/PDF export commandsFor producing LaTeX and PDF documents.
LaTeX specific export settingsUnique to this LaTeX back-end.
LaTeX header and sectioningSetting up the export file structure.
Quoting LaTeX codeIncorporating literal LaTeX code.
Tables in LaTeX exportOptions for exporting tables to LaTeX.
Images in LaTeX exportHow to insert figures into LaTeX output.
Plain lists in LaTeX exportAttributes specific to lists.
Source blocks in LaTeX exportAttributes specific to source code blocks.
Example blocks in LaTeX exportAttributes specific to example blocks.
Special blocks in LaTeX exportAttributes specific to special blocks.
Horizontal rules in LaTeX exportAttributes specific to horizontal rules.
OpenDocument Text Export
Pre-requisites for ODT exportRequired packages.
ODT export commandsInvoking export.
ODT specific export settingsConfiguration options.
Extending ODT exportProducing DOC, PDF files.
Applying custom stylesStyling the output.
Links in ODT exportHandling and formatting links.
Tables in ODT exportOrg tables conversions.
Images in ODT exportInserting images.
Math formatting in ODT exportFormatting LaTeX fragments.
Labels and captions in ODT exportRendering objects.
Literal examples in ODT exportFor source code and example blocks.
Advanced topics in ODT exportFor power users.
Math formatting in ODT export
LaTeX math snippetsEmbedding in LaTeX format.
MathML and OpenDocument formula filesEmbedding in native format.
Texinfo Export
Texinfo export commandsInvoking commands.
Texinfo specific export settingsSetting the environment.
Texinfo file headerGenerating the header.
Texinfo title and copyright pageCreating preamble pages.
Info directory fileInstalling a manual in Info file hierarchy.
Headings and sectioning structureBuilding document structure.
IndicesCreating indices.
Quoting Texinfo codeIncorporating literal Texinfo code.
Plain lists in Texinfo exportList attributes.
Tables in Texinfo exportTable attributes.
Images in Texinfo exportImage attributes.
Quotations in Texinfo exportQuote block attributes.
Special blocks in Texinfo exportSpecial block attributes.
A Texinfo exampleProcessing Org to Texinfo.
Export in Foreign Buffers
Bare HTMLExporting HTML without CSS, Javascript, etc.
Publishing
ConfigurationDefining projects.
Uploading FilesHow to get files up on the server.
Sample ConfigurationExample projects.
Triggering PublicationPublication commands.
Configuration
Project alistThe central configuration variable.
Sources and destinationsFrom here to there.
Selecting filesWhat files are part of the project?
Publishing actionSetting the function doing the publishing.
Publishing optionsTweaking HTML/LaTeX export.
Publishing linksWhich links keep working after publishing?
Site mapGenerating a list of all pages.
Generating an indexAn index that reaches across pages.
Sample Configuration
Simple exampleOne-component publishing.
Complex exampleA multi-component publishing example.
Working with Source Code
Features OverviewEnjoy the versatility of source blocks.
Structure of Code BlocksCode block syntax described.
Using Header ArgumentsDifferent ways to set header arguments.
Environment of a Code BlockArguments, sessions, working directory...
Evaluating Code BlocksPlace results of evaluation in the Org buffer.
Results of EvaluationChoosing a results type, post-processing...
Exporting Code BlocksExport contents and/or results.
Extracting Source CodeCreate pure source code files.
LanguagesList of supported code block languages.
Editing Source CodeLanguage major-mode editing.
Noweb Reference SyntaxLiterate programming in Org mode.
Library of BabelUse and contribute to a library of useful code blocks.
Key bindings and Useful FunctionsWork quickly with code blocks.
Batch ExecutionCall functions from the command line.
Miscellaneous
CompletionM-TAB guesses completions.
Structure TemplatesQuick insertion of structural elements.
Speed KeysElectric commands at the beginning of a headline.
Clean ViewGetting rid of leading stars in the outline.
Execute commands in the active regionExecute commands on multiple items in Org or agenda view.
Dynamic Headline NumberingDisplay and update outline numbering.
The Very Busy C-c C-c KeyWhen in doubt, press C-c C-c.
In-buffer SettingsOverview of keywords.
Org SyntaxFormal description of Org’s syntax.
Documentation AccessRead documentation about current syntax.
Escape CharacterPrevent Org from interpreting your writing.
Code Evaluation SecurityOrg files evaluate in-line code.
InteractionWith other Emacs packages.
TTY KeysUsing Org on a tty.
ProtocolsExternal access to Emacs and Org.
Org CryptEncrypting Org files.
Org MobileViewing and capture on a mobile device.
Clean View
Org Indent Mode
Hard indentation
Interaction
CooperationPackages Org cooperates with.
ConflictsPackages that lead to conflicts.
Protocols
The store-link protocolStore a link, push URL to kill-ring.
The capture protocolFill a buffer with external information.
The open-source protocolEdit published contents.
Org Mobile
Setting up the staging areaFor the mobile device.
Pushing to the mobile applicationUploading Org files and agendas.
Pulling from the mobile applicationIntegrating captured and flagged items.
Hacking
HooksHow to reach into Org’s internals.
Add-on PackagesAvailable extensions.
Adding Hyperlink TypesNew custom link types.
Adding Export Back-endsHow to write new export back-ends.
Tables in Arbitrary SyntaxOrgtbl for LaTeX and other programs.
Dynamic BlocksAutomatically filled blocks.
Special Agenda ViewsCustomized views.
Speeding Up Your AgendasTips on how to speed up your agendas.
Extracting Agenda InformationPost-processing agenda information.
Using the Property APIWriting programs that use entry properties.
Using the Mapping APIMapping over all or selected entries.
Tables in Arbitrary Syntax
Radio tablesSending and receiving radio tables.
A LaTeX exampleStep by step, almost a tutorial.
Translator functionsCopy and modify.