Org Mode Manual *************** This manual is for Org version 8.2.9. Copyright © 2004–2017 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.”
· Introduction Getting started · Document Structure A tree works like your brain · Tables Pure magic for quick formatting · Hyperlinks Notes in context · TODO Items Every tree branch can be a TODO item · Tags Tagging headlines and matching sets of tags · Properties and Columns Storing information about an entry · Dates and Times Making items useful for planning · Capture - Refile - Archive The ins and outs for projects · Agenda Views Collecting information into views · Markup Prepare text for rich export · Exporting Sharing and publishing notes · Publishing Create a web site of linked Org files · Working With Source Code Export, evaluate, and tangle code blocks · Miscellaneous All the rest which did not fit elsewhere · Hacking How to hack your way around · MobileOrg Viewing and capture on a mobile device · History and Acknowledgments How Org came into being · GNU Free Documentation License The license for this documentation. · Main Index An index of Org’s concepts and features · Key Index Key bindings and where they are described · Command and Function Index Command names and some internal functions · Variable Index Variables mentioned in the manual — The Detailed Node Listing — Introduction · Summary Brief summary of what Org does · Installation Installing Org · Activation How to activate Org for certain buffers · Feedback Bug reports, ideas, patches etc. · Conventions Typesetting conventions in the manual Document structure · Outlines Org is based on Outline mode · Headlines How to typeset Org tree headlines · Visibility cycling Show and hide, much simplified · Motion Jumping to other headlines · Structure editing Changing sequence and level of headlines · Sparse trees Matches embedded in context · Plain lists Additional structure within an entry · Drawers Tucking stuff away · Blocks Folding blocks · Footnotes How footnotes are defined in Org’s syntax · Orgstruct mode Structure editing outside Org · Org syntax Formal description of Org’s syntax Visibility cycling · Global and local cycling Cycling through various visibility states · Initial visibility Setting the initial visibility state · Catching invisible edits Preventing mistakes when editing invisible parts Global and local cycling · Initial visibility Setting the initial visibility state · Catching invisible edits Preventing mistakes when editing invisible parts Tables · Built-in table editor Simple tables · Column width and alignment Overrule the automatic settings · Column groups Grouping to trigger vertical lines · Orgtbl mode The table editor as minor mode · The spreadsheet The table editor has spreadsheet capabilities · Org-Plot Plotting from org tables The spreadsheet · References How to refer to another field or range · Formula syntax for Calc Using Calc to compute stuff · Formula syntax for Lisp Writing formulas in Emacs Lisp · Durations and time values How to compute durations and time values · Field and range formulas Formula for specific (ranges of) fields · Column formulas Formulas valid for an entire column · Lookup functions Lookup functions for searching tables · Editing and debugging formulas Fixing formulas · Updating the table Recomputing all dependent fields · Advanced features Field and column names, parameters and automatic recalc Hyperlinks · Link format How links in Org are formatted · Internal links Links to other places in the current file · External links URL-like links to the world · Handling links Creating, inserting and following · Using links outside Org Linking from my C source code? · Link abbreviations Shortcuts for writing complex links · Search options Linking to a specific location · Custom searches When the default search is not enough Internal links · Radio targets Make targets trigger links in plain text TODO items · TODO basics Marking and displaying TODO entries · TODO extensions Workflow and assignments · Progress logging Dates and notes for progress · Priorities Some things are more important than others · Breaking down tasks Splitting a task into manageable pieces · Checkboxes Tick-off lists Extended use of TODO keywords · Workflow states From TODO to DONE in steps · TODO types I do this, Fred does the rest · Multiple sets in one file Mixing it all, and still finding your way · Fast access to TODO states Single letter selection of a state · Per-file keywords Different files, different requirements · Faces for TODO keywords Highlighting states · TODO dependencies When one task needs to wait for others Progress logging · Closing items When was this entry marked DONE? · Tracking TODO state changes When did the status change? · Tracking your habits How consistent have you been? Tags · Tag inheritance Tags use the tree structure of the outline · Setting tags How to assign tags to a headline · Tag groups Use one tag to search for several tags · Tag searches Searching for combinations of tags Properties and columns · Property syntax How properties are spelled out · Special properties Access to other Org mode features · Property searches Matching property values · Property inheritance Passing values down the tree · Column view Tabular viewing and editing · Property API Properties for Lisp programmers Column view · Defining columns The COLUMNS format property · Using column view How to create and use column view · Capturing column view A dynamic block for column view Defining columns · Scope of column definitions Where defined, where valid? · Column attributes Appearance and content of a column Dates and times · Timestamps Assigning a time to a tree entry · Creating timestamps Commands which insert timestamps · Deadlines and scheduling Planning your work · Clocking work time Tracking how long you spend on a task · Effort estimates Planning work effort in advance · Relative timer Notes with a running timer · Countdown timer Starting a countdown timer for a task Creating timestamps · The date/time prompt How Org mode helps you entering date and time · Custom time format Making dates look different Deadlines and scheduling · Inserting deadline/schedule Planning items · Repeated tasks Items that show up again and again Clocking work time · Clocking commands Starting and stopping a clock · The clock table Detailed reports · Resolving idle time Resolving time when you’ve been idle Capture - Refile - Archive · Capture Capturing new stuff · Attachments Add files to tasks · RSS Feeds Getting input from RSS feeds · Protocols External (e.g., Browser) access to Emacs and Org · Refile and copy Moving/copying a tree from one place to another · Archiving What to do with finished projects Capture · Setting up capture Where notes will be stored · Using capture Commands to invoke and terminate capture · Capture templates Define the outline of different note types Capture templates · Template elements What is needed for a complete template entry · Template expansion Filling in information about time and context · Templates in contexts Only show a template in a specific context Archiving · Moving subtrees Moving a tree to an archive file · Internal archiving Switch off a tree but keep it in the file Agenda views · Agenda files Files being searched for agenda information · Agenda dispatcher Keyboard access to agenda views · Built-in agenda views What is available out of the box? · Presentation and sorting How agenda items are prepared for display · Agenda commands Remote editing of Org trees · Custom agenda views Defining special searches and views · Exporting Agenda Views Writing a view to a file · Agenda column view Using column view for collected entries The built-in agenda views · Weekly/daily agenda The calendar page with current tasks · Global TODO list All unfinished action items · Matching tags and properties Structured information with fine-tuned search · Timeline Time-sorted view for single file · Search view Find entries by searching for text · Stuck projects Find projects you need to review Presentation and sorting · Categories Not all tasks are equal · Time-of-day specifications How the agenda knows the time · Sorting agenda items The order of things · Filtering/limiting agenda items Dynamically narrow the agenda Custom agenda views · Storing searches Type once, use often · Block agenda All the stuff you need in a single buffer · Setting Options Changing the rules Markup for rich export · Structural markup elements The basic structure as seen by the exporter · Images and tables Images, tables and caption mechanism · Literal examples Source code examples with special formatting · Include files Include additional files into a document · Index entries Making an index · Macro replacement Use macros to create templates · Embedded LaTeX LaTeX can be freely used inside Org documents · Special blocks Containers targeted at export back-ends Structural markup elements · Document title Where the title is taken from · Headings and sections The document structure as seen by the exporter · Table of contents The if and where of the table of contents · Lists Lists · Paragraphs Paragraphs · Footnote markup Footnotes · Emphasis and monospace Bold, italic, etc. · Horizontal rules Make a line · Comment lines What will *not* be exported Embedded LaTeX · Special symbols Greek letters and other symbols · Subscripts and superscripts Simple syntax for raising/lowering text · LaTeX fragments Complex formulas made easy · Previewing LaTeX fragments What will this snippet look like? · CDLaTeX mode Speed up entering of formulas Exporting · The Export Dispatcher The main exporter interface · Export back-ends Built-in export formats · Export settings Generic export settings · ASCII/Latin-1/UTF-8 export Exporting to flat files with encoding · Beamer export Exporting as a Beamer presentation · HTML export Exporting to HTML · LaTeX and PDF export Exporting to LaTeX, and processing to PDF · Markdown export Exporting to Markdown · OpenDocument Text export Exporting to OpenDocument Text · Org export Exporting to Org · Texinfo export Exporting to Texinfo · iCalendar export Exporting to iCalendar · Other built-in back-ends Exporting to a man page · Export in foreign buffers Author tables and lists in Org syntax · Advanced configuration Fine-tuning the export output HTML export · HTML Export commands How to invoke HTML export · HTML doctypes Org can export to various (X)HTML flavors · HTML preamble and postamble How to insert a preamble and a postamble · Quoting HTML tags Using direct HTML in Org mode · Links in HTML export How links will be interpreted and formatted · Tables in HTML export How to modify the formatting of tables · Images in HTML export How to insert figures into HTML output · Math formatting in HTML export Beautiful math also on the web · Text areas in HTML export An alternative way to show an example · CSS support Changing the appearance of the output · JavaScript support Info and Folding in a web browser LaTeX and PDF export · LaTeX export commands How to export to LaTeX and PDF · Header and sectioning Setting up the export file structure · Quoting LaTeX code Incorporating literal LaTeX code · LaTeX specific attributes Controlling LaTeX output OpenDocument Text export · Pre-requisites for ODT export What packages ODT exporter relies on · ODT export commands How to invoke ODT export · Extending ODT export How to produce ‘doc’, ‘pdf’ files · Applying custom styles How to apply custom styles to the output · Links in ODT export How links will be interpreted and formatted · Tables in ODT export How Tables are exported · Images in ODT export How to insert images · Math formatting in ODT export How LaTeX fragments are formatted · Labels and captions in ODT export How captions are rendered · Literal examples in ODT export How source and example blocks are formatted · Advanced topics in ODT export Read this if you are a power user Math formatting in ODT export · Working with LaTeX math snippets How to embed LaTeX math fragments · Working with MathML or OpenDocument formula files How to embed equations in native format Advanced topics in ODT export · Configuring a document converter How to register a document converter · Working with OpenDocument style files Explore the internals · Creating one-off styles How to produce custom highlighting etc · Customizing tables in ODT export How to define and use Table templates · Validating OpenDocument XML How to debug corrupt OpenDocument files Texinfo export · Texinfo export commands How to invoke Texinfo export · Document preamble File header, title and copyright page · Headings and sectioning structure Building document structure · Indices Creating indices · Quoting Texinfo code Incorporating literal Texinfo code · Texinfo specific attributes Controlling Texinfo output · An example Publishing · Configuration Defining projects · Uploading files How to get files up on the server · Sample configuration Example projects · Triggering publication Publication commands Configuration · Project alist The central configuration variable · Sources and destinations From here to there · Selecting files What files are part of the project? · Publishing action Setting the function doing the publishing · Publishing options Tweaking HTML/LaTeX export · Publishing links Which links keep working after publishing? · Sitemap Generating a list of all pages · Generating an index An index that reaches across pages Sample configuration · Simple example One-component publishing · Complex example A multi-component publishing example Working with source code · Structure of code blocks Code block syntax described · Editing source code Language major-mode editing · Exporting code blocks Export contents and/or results · Extracting source code Create pure source code files · Evaluating code blocks Place results of evaluation in the Org mode buffer · Library of Babel Use and contribute to a library of useful code blocks · Languages List of supported code block languages · Header arguments Configure code block functionality · Results of evaluation How evaluation results are handled · Noweb reference syntax Literate programming in Org mode · Key bindings and useful functions Work quickly with code blocks · Batch execution Call functions from the command line Header arguments · Using header arguments Different ways to set header arguments · Specific header arguments List of header arguments Using header arguments · System-wide header arguments Set global default values · Language-specific header arguments Set default values by language · Header arguments in Org mode properties Set default values for a buffer or heading · Language-specific header arguments in Org mode properties Set language-specific default values for a buffer or heading · Code block specific header arguments The most common way to set values · Header arguments in function calls The most specific level Specific header arguments · var Pass arguments to code blocks · results Specify the type of results and how they will be collected and handled · file Specify a path for file output · file-desc Specify a description for file results · dir Specify the default (possibly remote) directory for code block execution · exports Export code and/or results · tangle Toggle tangling and specify file name · mkdirp Toggle creation of parent directories of target files during tangling · comments Toggle insertion of comments in tangled code files · padline Control insertion of padding lines in tangled code files · no-expand Turn off variable assignment and noweb expansion during tangling · session Preserve the state of code evaluation · noweb Toggle expansion of noweb references · noweb-ref Specify block’s noweb reference resolution target · noweb-sep String used to separate noweb references · cache Avoid re-evaluating unchanged code blocks · sep Delimiter for writing tabular results outside Org · hlines Handle horizontal lines in tables · colnames Handle column names in tables · rownames Handle row names in tables · shebang Make tangled files executable · tangle-mode Set permission of tangled files · eval Limit evaluation of specific code blocks · wrap Mark source block evaluation results · post Post processing of code block results · prologue Text to prepend to code block body · epilogue Text to append to code block body Miscellaneous · Completion M-TAB knows what you need · Easy Templates Quick insertion of structural elements · Speed keys Electric commands at the beginning of a headline · Code evaluation security Org mode files evaluate inline code · Customization Adapting Org to your taste · In-buffer settings Overview of the #+KEYWORDS · The very busy C-c C-c key When in doubt, press C-c C-c · Clean view Getting rid of leading stars in the outline · TTY keys Using Org on a tty · Interaction Other Emacs packages · org-crypt Encrypting Org files Interaction with other packages · Cooperation Packages Org cooperates with · Conflicts Packages that lead to conflicts Hacking · Hooks How to reach into Org’s internals · Add-on packages Available extensions · Adding hyperlink types New custom link types · Adding export back-ends How to write new export back-ends · Context-sensitive commands How to add functionality to such commands · Tables in arbitrary syntax Orgtbl for LaTeX and other programs · Dynamic blocks Automatically filled blocks · Special agenda views Customized views · Speeding up your agendas Tips on how to speed up your agendas · Extracting agenda information Post-processing of agenda information · Using the property API Writing programs that use entry properties · Using the mapping API Mapping over all or selected entries Tables and lists in arbitrary syntax · Radio tables Sending and receiving radio tables · A LaTeX example Step by step, almost a tutorial · Translator functions Copy and modify · Radio lists Sending and receiving lists MobileOrg · Setting up the staging area Where to interact with the mobile device · Pushing to MobileOrg Uploading Org files and agendas · Pulling from MobileOrg Integrating captured and flagged items