Manpage of DIR_COLORS

DIR_COLORS

Section: Linux User Manual (5)
Updated: 2013-08-09
Index
 

NAME

dir_colors - configuration file for dircolors(1)  

DESCRIPTION

The program ls(1) uses the environment variable LS_COLORSto determine the colors in which the filenames are to be displayed. This environment variable is usually set by a command like

eval `dircolors some_path/dir_colors`

found in a system default shell initialization file, like /etc/profileor /etc/csh.cshrc. (See also dircolors(1).) Usually, the file used here is /etc/DIR_COLORSand can be overridden by a .dir_colorsfile in one's home directory.

This configuration file consists of several statements, one per line. Anything right of a hash mark (#) is treated as a comment, if the hash mark is at the beginning of a line or is preceded by at least one whitespace. Blank lines are ignored.

The globalsection of the file consists of any statement before the first TERMstatement. Any statement in the global section of the file is considered valid for all terminal types. Following the global section is one or more terminal-specificsections, preceded by one or more TERMstatements which specify the terminal types (as given by the TERMenvironment variable) the following declarations apply to. It is always possible to override a global declaration by a subsequent terminal-specific one.

The following statements are recognized; case is insignificant:

TERM terminal-type
Starts a terminal-specific section and specifies which terminal it applies to. Multiple TERMstatements can be used to create a section which applies for several terminal types.
COLOR yes|all|no|none|tty
(Slackware only; ignored by GNU dircolors(1).) Specifies that colorization should always be enabled (yes or all), never enabled (no or none), or enabled only if the output is a terminal (tty). The default is no.
EIGHTBIT yes|no
(Slackware only; ignored by GNU dircolors(1).) Specifies that eight-bit ISO 8859 characters should be enabled by default. For compatibility reasons, this can also be specified as 1 for yes or 0 for no. The default is no.
OPTIONS options
(Slackware only; ignored by GNU dircolors(1).) Adds command-line options to the default lscommand line. The options can be any valid lscommand-line options, and should include the leading minus sign. Note that dircolorsdoes not verify the validity of these options.
NORMAL color-sequence
Specifies the color used for normal (nonfilename) text.

Synonym: NORM.

FILE color-sequence
Specifies the color used for a regular file.
DIR color-sequence
Specifies the color used for directories.
LINK color-sequence
Specifies the color used for a symbolic link.

Synonyms: LNK, SYMLINK.

ORPHAN color-sequence
Specifies the color used for an orphaned symbolic link (one which points to a nonexistent file). If this is unspecified, lswill use the LINKcolor instead.
MISSING color-sequence
Specifies the color used for a missing file (a nonexistent file which nevertheless has a symbolic link pointing to it). If this is unspecified, lswill use the FILEcolor instead.
FIFO color-sequence
Specifies the color used for a FIFO (named pipe).

Synonym: PIPE.

SOCK color-sequence
Specifies the color used for a socket.
DOOR color-sequence
(Supported since fileutils 4.1) Specifies the color used for a door (Solaris 2.5 and later).
BLK color-sequence
Specifies the color used for a block device special file.

Synonym: BLOCK.

CHR color-sequence
Specifies the color used for a character device special file.

Synonym: CHAR.

EXEC color-sequence
Specifies the color used for a file with the executable attribute set.
SUID color-sequence
Specifies the color used for a file with the set-user-ID attribute set.

Synonym: SETUID.

SGID color-sequence
Specifies the color used for a file with the set-group-ID attribute set.

Synonym: SETGID.

STICKY color-sequence
Specifies the color used for a directory with the sticky attribute set.
STICKY_OTHER_WRITABLE color-sequence
Specifies the color used for a other-writable directory with the executable attribute set.

Synonym: OWT.

OTHER_WRITABLE color-sequence
Specifies the color used for a other-writable directory without the executable attribute set.

Synonym: OWR.

LEFTCODE color-sequence
Specifies the left codefor non-ISO 6429 terminals (see below).

Synonym: LEFT.

RIGHTCODE color-sequence
Specifies the right codefor non-ISO 6429 terminals (see below).

Synonym: RIGHT.

ENDCODE color-sequence
Specifies the end codefor non-ISO 6429 terminals (see below).

Synonym: END.

*extension color-sequence
Specifies the color used for any file that ends in extension.
.extension color-sequence
Same as *.extension. Specifies the color used for any file that ends in .extension. Note that the period is included in the extension, which makes it impossible to specify an extension not starting with a period, such as ~for emacsbackup files. This form should be considered obsolete.
 

ISO 6429 (ANSI) color sequences

Most color-capable ASCII terminals today use ISO 6429 (ANSI) color sequences, and many common terminals without color capability, including xtermand the widely used and cloned DEC VT100, will recognize ISO 6429 color codes and harmlessly eliminate them from the output or emulate them. lsuses ISO 6429 codes by default, assuming colorization is enabled.

ISO 6429 color sequences are composed of sequences of numbers separated by semicolons. The most common codes are:


 0
to restore default color

 1
for brighter colors

 4
for underlined text

 5
for flashing text
30for black foreground
31for red foreground
32for green foreground
33for yellow (or brown) foreground
34for blue foreground
35for purple foreground
36for cyan foreground
37for white (or gray) foreground
40for black background
41for red background
42for green background
43for yellow (or brown) background
44for blue background
45for purple background
46for cyan background
47for white (or gray) background

Not all commands will work on all systems or display devices.

lsuses the following defaults:

NORMAL0 Normal (nonfilename) text
FILE0 Regular file
DIR32 Directory
LINK36 Symbolic link
ORPHANundefinedOrphaned symbolic link
MISSINGundefinedMissing file
FIFO31 Named pipe (FIFO)
SOCK33 Socket
BLK44;37 Block device
CHR44;37 Character device
EXEC35 Executable file

A few terminal programs do not recognize the default properly. If all text gets colorized after you do a directory listing, change the NORMALand FILEcodes to the numerical codes for your normal foreground and background colors.  

Other terminal types (advanced configuration)

If you have a color-capable (or otherwise highlighting) terminal (or printer!) which uses a different set of codes, you can still generate a suitable setup. To do so, you will have to use the LEFTCODE, RIGHTCODE, and ENDCODEdefinitions.

When writing out a filename, lsgenerates the following output sequence: LEFTCODEtypecodeRIGHTCODEfilenameENDCODE, where the typecodeis the color sequence that depends on the type or name of file. If the ENDCODEis undefined, the sequence LEFTCODE NORMAL RIGHTCODEwill be used instead. The purpose of the left- and rightcodes is merely to reduce the amount of typing necessary (and to hide ugly escape codes away from the user). If they are not appropriate for your terminal, you can eliminate them by specifying the respective keyword on a line by itself.

NOTE:If the ENDCODEis defined in the global section of the setup file, it cannotbe undefined in a terminal-specific section of the file. This means any NORMALdefinition will have no effect. A different ENDCODEcan, however, be specified, which would have the same effect.  

Escape sequences

To specify control- or blank characters in the color sequences or filename extensions, either C-style \-escaped notation or stty-style ^-notation can be used. The C-style notation includes the following characters:
\aBell (ASCII 7)
\bBackspace (ASCII 8)
\eEscape (ASCII 27)
\fForm feed (ASCII 12)
\nNewline (ASCII 10)
\rCarriage Return (ASCII 13)
\tTab (ASCII 9)
\vVertical Tab (ASCII 11)
\?Delete (ASCII 127)
\nnnAny character (octal notation)
\xnnnAny character (hexadecimal notation)
\_Space
\\Backslash (\)
\^Caret (^)
\#Hash mark (#)

Note that escapes are necessary to enter a space, backslash, caret, or any control character anywhere in the string, as well as a hash mark as the first character.  

FILES

/etc/DIR_COLORS
System-wide configuration file.
~/.dir_colors
Per-user configuration file.

This page describes the dir_colorsfile format as used in the fileutils-4.1 package; other versions may differ slightly.  

NOTES

The default LEFTCODEand RIGHTCODEdefinitions, which are used by ISO 6429 terminals are:
LEFTCODE\e[
RIGHTCODEm

The default ENDCODEis undefined.  

SEE ALSO

dircolors(1), ls(1), stty(1), xterm(1)


 

Index

NAME
DESCRIPTION
ISO 6429 (ANSI) color sequences
Other terminal types (advanced configuration)
Escape sequences
FILES
NOTES
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 22:28:02 GMT, June 20, 2016