---
name: "eza_colors-explanation"
section: "5"
platform: "linux"
package: "eza"
version: "0.23.5-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/eza_colors-explanation"
---

# eza\_colors-explanation(5)

more details on customizing eza colors

## Name

eza\_colors-explanation — more details on customizing eza colors

## Eza Color Explanation

eza provides its own built-in set of file extension mappings that cover a large range of common file extensions, including documents, archives, media, and temporary files. Any mappings in the environment variables will override this default set: running eza with `LS_COLORS="*.zip=32"` will turn zip files green but leave the colours of other compressed files alone.

You can also disable this built-in set entirely by including a `reset` entry at the beginning of `EZA_COLORS`. So setting `EZA_COLORS="reset:*.txt=31"` will highlight only text files; setting `EZA_COLORS="reset"` will highlight nothing.

### Examples

- •

  Disable the “current user” highlighting: `EZA_COLORS="uu=0:gu=0"`

- •

  Turn the date column green: `EZA_COLORS="da=32"`

- •

  Highlight Vagrantfiles: `EZA_COLORS="Vagrantfile=1;4;33"`

- •

  Override the existing zip colour: `EZA_COLORS="*.zip=38;5;125"`

- •

  Markdown files a shade of green, log files a shade of grey: `EZA_COLORS="*.md=38;5;121:*.log=38;5;248"`

### BUILT-IN EXTENSIONS

- •

  eza now supports bright colours! As supported by most modern 256-colour terminals, you can now choose from `bright` colour codes when selecting your custom colours in your `#EZA_COLORS` environment variable.

- •

  Build (Makefile, Cargo.toml, package.json) are yellow and underlined.

- •

  Images (png, jpeg, gif) are purple.

- •

  Videos (mp4, ogv, m2ts) are a slightly purpler purple.

- •

  Music (mp3, m4a, ogg) is a faint blue.

- •

  Lossless music (flac, alac, wav) is a less faint blue.

- •

  Cryptographic files (asc, enc, p12) are bright green.

- •

  Documents (pdf, doc, dvi) are a fainter green.

- •

  Compressed files (zip, tgz, Z) are red.

- •

  Temporary files (tmp, swp, ~) are dimmed default foreground color.

- •

  Compiled files (class, o, pyc) are yellow. A file is also counted as compiled if it uses a common extension and is in the same directory as one of its source files: styles.css will count as compiled when next to styles.less or styles.sass, and scripts.js when next to scripts.ts or scripts.coffee.

- •

  Source files (cpp, js, java) are bright yellow.

### Theme Configuration file

Now you can specify these options and more in a `theme.yml` file with convenient syntax for defining your styles.

Set `EZA_CONFIG_DIR` to specify which directory you would like eza to look for your `theme.yml` file, otherwise eza will look for `$XDG_CONFIG_HOME/eza/theme.yml`.

These are the available options:

## LIST OF THEME OPTIONS

-

  ```
  filekinds:
    normal
    directory
    symlink
    pipe
    block_device
    char_device
    socket
    special
    executable
    mount_point
  perms:
    user_read
    user_write
    user_execute_file
    user_execute_other
    group_read
    group_write
    group_execute
    other_read
    other_write
    other_execute
    special_user_file
    special_other
    attribute
  size:
    major
    minor
    number_byte
    number_kilo
    number_mega
    number_giga
    number_huge
    unit_byte
    unit_kilo
    unit_mega
    unit_giga
    unit_huge
  users:
    user_you
    user_root
    user_other
    group_yours
    group_other
    group_root
  links:
    normal
    multi_link_file
  git:
    new
    modified
    deleted
    renamed
    ignored
    conflicted
  git_repo:
    branch_main
    branch_other
    git_clean
    git_dirty
  security_context:
    none:
    selinux:
      colon
      user
      role
      typ
      range
  file_type:
    image
    video
    music
    crypto
    document
    compressed
    temp
    compiled
    build
    source
  punctuation:
  date:
  inode:
  blocks:
  header:
  octal:
  flags:
  control_char:
  broken_symlink:
  broken_path_overlay:
  ```

Each of those fields/sub fields can have the following styling properties defined beneath it

-

  ```
      foreground: Blue
      background: null
      is_bold: false
      is_dimmed: false
      is_italic: false
      is_underline: false
      is_blink: false
      is_reverse: false
      is_hidden: false
      is_strikethrough: true
      prefix_with_reset: false
  ```

Example:

-

  ```
  file_type:
    image:
      foreground: Blue
      is_italic: true
  date:
    foreground: White
  security_context:
    selinux:
      role:
        is_hidden: true
  ```

Icons can now be customized as well in the `filenames` and `extensions` fields

-

  ```
  filenames:
    # Just change the icon glyph
    Cargo.toml: {icon: {glyph: 🦀}}
    Cargo.lock: {icon: {glyph: 🦀}}
  extensions:
    rs: {  filename: {foreground: Red}, icon: {glyph: 🦀}}
  ```

**NOTES:**

Not all glyphs support changing colors.

If your theme is not working properly, double check the syntax in the config file, as a syntax issue can cause multiple properties to not be applied.

You must name the file `theme.yml`, no matter the directory you specify.

### See also

- •

  [**eza**(1)](/eza/1.md)

- •

  [**eza\_colors**(5)](/eza_colors/5.md)
