back to command reference | back to revised command reference | page by Perpetual PC's

ISO 6429 colors


       dir_colors - configuration file for dircolors(1)

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

	      eval `dircolors some_path/dir_colors`

       found  in a system default shell initialization file, like /etc/profile
       or /etc/csh.cshrc.  (See also dircolors(1).)  Usually,  the  file  used
       here  is /etc/DIR_COLORS and can be overridden by a .dir_colors file 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  global  section  of	 the file consists of any statement before the
       first TERM statement.  Any statement in the global section of the  file
       is  considered valid for all terminal types.  Following the global sec-
       tion is one or more terminal-specific sections, preceded by one or more
       TERM  statements which specify the terminal types (as given by the TERM
       environment variable) the  following  declarations  apply  to.	It  is
       always possible to override a global declaration by a subsequent termi-
       nal-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 TERM statements 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	termi-
	      nal (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 ls command line.  The options can be
	      any valid ls command line options, and should include the	 lead-
	      ing  minus sign.	Please note that dircolors does not verify the
	      validity of these options.

       NORMAL color-sequence
	      Specifies the color used for normal (non-filename) text.

       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.

       ORPHAN color-sequence
	      Specifies the color used for  an	orphaned  symbolic  link  (one
	      which points to a nonexistent file).  If this is unspecified, ls
	      will use the LINK color 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, ls will use the FILE color instead.

       FIFO color-sequence
	      Specifies the color used for a FIFO (named pipe).

       SOCK color-sequence
	      Specifies the color used for a socket.

       DOOR color-sequence
	      (Supported since file-utils 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.

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

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

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

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

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

       *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 emacs backup files.  This
	      form should be considered obsolete.


back to command reference
Most color-capable ASCII terminals today use ISO 6429 (ANSI) color sequences, and many common terminals without color capability, includ- ing xterm and the widely used and cloned DEC VT100, will recognize ISO 6429 color codes and harmlessly eliminate them from the output or emu- late them. ls uses 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 30 for black foreground 31 for red foreground 32 for green foreground 33 for yellow (or brown) foreground 34 for blue foreground 35 for purple foreground 36 for cyan foreground 37 for white (or gray) foreground 40 for black background 41 for red background 42 for green background 43 for yellow (or brown) background 44 for blue background 45 for purple background 46 for cyan background 47 for white (or gray) background Not all commands will work on all systems or display devices. ls uses the following defaaults: NORMAL 0 Normal (non-filename) text FILE 0 Regular file DIR 32 Directory LINK 36 Symbolic link ORPHAN undefined Orphanned symbolic link MISSING undefined Missing file FIFO 31 Named pipe (FIFO) SOCK 33 Socket BLK 44;37 Block device CHR 44;37 Character device EXEC 35 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 NORMAL and FILE codes 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, RIGHT- CODE, and ENDCODE definitions. When writing out a filename, ls generates the following output sequence: LEFTCODE typecode RIGHTCODE filename ENDCODE, where the type- code is the color sequence that depends on the type or name of file. If the ENDCODE is undefined, the sequence LEFTCODE NORMAL RIGHTCODE will 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 ENDCODE is defined in the global section of the setup file, it cannot be undefined in a terminal-specific section of the file. This means any NORMAL definition will have no effect. A differ- ent ENDCODE can, however, be specified, which would have the same effect. ESCAPE SEQUENCES To specify control- or blank characters in the color sequences or file- name extensions, either C-style \-escaped notation or stty-style ^-notation can be used. The C-style notation includes the following characters: \a Bell (ASCII 7) \b Backspace (ASCII 8) \e Escape (ASCII 27) \f Form feed (ASCII 12) \n Newline (ASCII 10) \r Carriage Return (ASCII 13) \t Tab (ASCII 9) \v Vertical Tab (ASCII 11) \? Delete (ASCII 127) \nnn Any character (octal notation) \xnnn Any character (hexadecimal notation) \_ Space \\ Backslash (\) \^ Caret (^) \# Hash mark (#) Please 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. NOTES The default LEFTCODE and RIGHTCODE definitions, which are used by ISO 6429 terminals are: LEFTCODE \e[ RIGHTCODE m The default ENDCODE is undefined. SEE ALSO dircolors(1), ls(1), stty(1), xterm(1) FILES /etc/DIR_COLORS System-wide configuration file. ~/.dir_colors Per-user configuration file. NOTES This page describes the dir_colors file format as used in the fileu- tils-4.1 package; other versions may differ slightly. Mail corrections and additions to Report bugs in the program to fileutils- GNU fileutils 4.1 2001-12-26 DIR_COLORS(5)

back to command reference | page by Perpetual PC's