Outlines make it possible to hide parts of the text in the buffer. Org uses just two commands, bound to <TAB> and S-<TAB> to change the visibility in the buffer.
,-> FOLDED -> CHILDREN -> SUBTREE --. '-----------------------------------'
The cursor must be on a headline for this to work1. When the cursor is at the beginning of the buffer and the first line is not a headline, then <TAB> actually runs global cycling (see below)2. Also when called with a prefix argument (C-u <TAB>), global cycling is invoked.
,-> OVERVIEW -> CONTENTS -> SHOW ALL --. '--------------------------------------'
When S-<TAB> is called with a numeric prefix argument N, the CONTENTS view up to headlines of level N will be shown. Note that inside tables, S-<TAB> jumps to the previous field.
When Emacs first visits an Org file, the global state is set to
OVERVIEW, i.e., only the top level headlines are visible. This can be
configured through the variable
org-startup-folded, or on a
per-file basis by adding one of the following lines anywhere in the
#+STARTUP: overview #+STARTUP: content #+STARTUP: showall #+STARTUP: showeverything
The startup visibility options are ignored when the file is open for the
first time during the agenda generation: if you want the agenda to honor
the startup visibility, set
org-agenda-inhibit-startup to nil.
Furthermore, any entries with a ‘VISIBILITY’ property (see Properties and Columns) will get their visibility adapted accordingly. Allowed values
for this property are
 see, however,
 see the
 The indirect buffer (see the Emacs manual for more information about indirect buffers) will contain the entire buffer, but will be narrowed to the current tree. Editing the indirect buffer will also change the original buffer, but without affecting visibility in that buffer.