[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1 Invoking indent

As of version 1.3, the format of the indent command is:

 
indent [options] [input-files]

indent [options] [single-input-file] [-o output-file]

This format is different from earlier versions and other versions of indent.

In the first form, one or more input files are specified. indent makes a backup copy of each file, and the original file is replaced with its indented version. See section Backup Files, for an explanation of how backups are made.

In the second form, only one input file is specified. In this case, or when the standard input is used, you may specify an output file after the ‘-o’ option.

To cause indent to write to standard output, use the ‘-st’ option. This is only allowed when there is only one input file, or when the standard input is used.

If no input files are named, the standard input is read for input. Also, if a filename named ‘-’ is specified, then the standard input is read.

As an example, each of the following commands will input the program ‘slithy_toves.c’ and write its indented text to ‘slithy_toves.out’:

 
indent slithy_toves.c -o slithy_toves.out

indent -st slithy_toves.c > slithy_toves.out

cat slithy_toves.c | indent -o slithy_toves.out

Most other options to indent control how programs are formatted. As of version 1.2, indent also recognizes a long name for each option name. Long options are prefixed by either ‘--’ or ‘+’. (1) In most of this document, the traditional, short names are used for the sake of brevity. See section Option Summary, for a list of options, including both long and short names.

Here is another example:

 
indent -br test/metabolism.c -l85

This will indent the program ‘test/metabolism.c’ using the ‘-br’ and ‘-l85’ options, write the output back to ‘test/metabolism.c’, and write the original contents of ‘test/metabolism.c’ to a backup file in the directory ‘test’.

Equivalent invocations using long option names for this example would be:

 
indent --braces-on-if-line --line-length185 test/metabolism.c

indent +braces-on-if-line +line-length185 test/metabolism.c

If you find that you often use indent with the same options, you may put those options into a file named ‘.indent.pro’. indent will look for a profile file in three places. First it will check the environment variable INDENT_PROFILE. If that exists its value is expected to name the file that is to be used. If the environment variable does not exist, indent looks for ‘.indent.pro’ in the current directory and use that if found. Finally indent will search your home directory for ‘.indent.pro’ and use that file if it is found. This behaviour is different from that of other versions of indent, which load both files if they both exist.

The format of ‘.indent.pro’ is simply a list of options, just as they would appear on the command line, separated by white space (tabs, spaces, and newlines). Options in ‘.indent.pro’ may be surrounded by C or C++ comments, in which case they are ignored.

Command line switches are handled after processing ‘.indent.pro’. Options specified later override arguments specified earlier, with one exception: Explicitly specified options always override background options (see section Common styles). You can prevent indent from reading an ‘.indent.pro’ file by specifying the ‘-npro’ option.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]

This document was generated by david on December, 15 2008 using texi2html 1.78.