+=head2 Custom
+
+You can specify a custom format using printf-like format sequences. These are the items that can be
+substituted:
+
+=for :list
+* C<%F> - Filename
+* C<%O> - Owner or owners
+* C<%P> - Project
+* C<%T> - Pattern
+* C<%n> - newline
+* C<%t> - tab
+* C<%%> - percent sign
+
+The syntax also allows padding and some filters. Examples:
+
+ git-codeowners show -f ' * %-50F %O' # default for "show"
+ git-codeowners show -f '%{quote}F,%{quote}O' # ad hoc CSV
+ git-codeowners patterns -f '--> %{color:0c0}T' # whatever...
+
+Available filters:
+
+=for :list
+* C<quote> - Quote the replacement string.
+* C<color:FFFFFF> - Colorize the replacement string (if color is ON).
+* C<nocolor> - Do not colorize replacement string.
+
+=head2 Table
+
+Table formatting can be done by one of several different modules, each with its own features and
+bugs. The default module is L<Text::Table::Tiny>, but this can be overridden using the
+C<PERL_TEXT_TABLE> environment variable if desired, like this:
+
+ PERL_TEXT_TABLE=Text::Table::HTML git-codeowners -f table
+
+The list of available modules is at L<Text::Table::Any/@BACKENDS>.
+
+=head1 CAVEATS
+
+=for :list
+* Some commands require F<git> (at least version 1.8.5).