RIO(5)

NAME

Rio - TOML configuration file format.

SYNTAX

Rio's configuration file uses the TOML format. The format's specification can be found at https://toml.io/en/v1.0.0.

LOCATION

Rio doesn't create the config file for you, but it looks for one in the following locations on UNIX systems:

1.  $RIO_CONFIG_HOME/config.toml
2.  $XDG_CONFIG_HOME/rio/config.toml
3.  $HOME/.config/rio/config.toml

On Windows, the config file will be looked for in:

1.  %USERPROFILE%\AppData\Local\rio\config.toml

GENERAL

theme = "<string>"

    Theme name to use. When set, colors defined in the configuration file will be ignored.

    Default: None

confirm-before-quit = true | false

    Require confirmation before quitting.

    Default: true

draw-bold-text-with-light-colors = true | false

    When true, bold text is drawn using the bright color variants.

    Default: false

env-vars = ["<string>",]

    Environment variables to set for spawned processes.

    Example:
        env-vars = ["TERM=xterm-256color", "COLORTERM=truecolor"]

WINDOW

This section documents the [window] table of the configuration file.

width = <integer>

    Window width in pixels.

    Default: 600

height = <integer>

    Window height in pixels.

    Default: 400

mode = "Windowed" | "Maximized" | "Fullscreen"

    Window startup mode.

    Default: "Windowed"

opacity = <float>

    Background opacity as a floating point number from 0.0 to 1.0.

    Default: 1.0

blur = true | false

    Request compositor to blur content behind transparent windows.

    Default: false

decorations = "Enabled" | "Disabled" | "Transparent" | "Buttonless"

    Window decorations.

    Enabled
        Normal window decorations.
    Disabled
        No window decorations.
    Transparent (macOS only)
        Transparent title bar.
    Buttonless (macOS only)
        Title bar without buttons.

    Default: "Enabled"

background-image = { path = "<string>", opacity = <float> }

    Window background image. The image is uploaded once into a dedicated GPU texture and stretched to cover the full window.

    path
        Path to the background image file.
    opacity
        Image opacity from 0.0 to 1.0. Default 1.0.

FONTS

This section documents the [fonts] table of the configuration file.

size = <float>

    Font size in points.

    Default: 18.0

family = "<string>"

    Font family name. When set, overrides all font variant families.

    Default: "cascadiacode"

features = ["<string>",]

    OpenType font features to enable.

    Example:
        features = ["ss02", "ss03", "liga"]

use-drawable-chars = true | false

    Use built-in drawable characters for box drawing.

    Default: true

disable-warnings-not-found = true | false

    Disable warnings when fonts are not found.

    Default: false

additional-dirs = ["<string>",]

    Additional directories to search for fonts.

regular = { family = "<string>", style = "<string>", width = "<string>", weight = <integer> }

    Regular font configuration.

    Default: { family = "cascadiacode", style = "Normal", width = "Normal", weight = 400 }

bold = { family = "<string>", style = "<string>", width = "<string>", weight = <integer> }

    Bold font configuration.

    Default: { family = "cascadiacode", style = "Normal", width = "Normal", weight = 800 }

italic = { family = "<string>", style = "<string>", width = "<string>", weight = <integer> }

    Italic font configuration.

    Default: { family = "cascadiacode", style = "Italic", width = "Normal", weight = 400 }

bold-italic = { family = "<string>", style = "<string>", width = "<string>", weight = <integer> }

    Bold italic font configuration.

    Default: { family = "cascadiacode", style = "Italic", width = "Normal", weight = 800 }

extras = [{ family = "<string>" },]

    Additional fonts to load.

emoji = { family = "<string>" }

    Emoji font configuration.

    Default: Built-in Twemoji font

hinting = true | false

    Enable font hinting.

    Default: true

symbol-map = [{ chars = "<string>", family = "<string>" },]

    Map specific character ranges to fonts.

COLORS

This section documents the [colors] table of the configuration file.

Colors are specified using their hexadecimal values with a # prefix: #RRGGBB or #RRGGBBAA.

background = "<string>"

    Default background color.

foreground = "<string>"

    Default foreground color.

cursor = "<string>"

    Cursor color.

vi-cursor = "<string>"

    Vi mode cursor color.

black, red, green, yellow, blue, magenta, cyan, white = "<string>"

    Standard ANSI colors.

light-black, light-red, light-green, light-yellow, light-blue, light-magenta, light-cyan, light-white = "<string>"

    Bright ANSI colors.

dim-black, dim-red, dim-green, dim-yellow, dim-blue, dim-magenta, dim-cyan, dim-white = "<string>"

    Dim ANSI colors.

tabs = "<string>"

    Tab bar background color.

tabs-foreground = "<string>"

    Tab bar text color.

tabs-active = "<string>"

    Active tab background color.

tabs-active-foreground = "<string>"

    Active tab text color.

tabs-active-highlight = "<string>"

    Active tab highlight color.

bar = "<string>"

    Navigation bar background color.

split = "<string>"

    Split separator color.

search-match-background = "<string>"

    Search match background color.

search-match-foreground = "<string>"

    Search match text color.

search-focused-match-background = "<string>"

    Focused search match background color.

search-focused-match-foreground = "<string>"

    Focused search match text color.

selection-background = "<string>"

    Selection background color.

selection-foreground = "<string>"

    Selection text color.

CURSOR

This section documents the [cursor] table of the configuration file.

shape = "block" | "underline" | "beam"

    Cursor shape.

    Default: "block"

blinking = true | false

    Enable cursor blinking.

    Default: false

blinking-interval = <integer>

    Cursor blinking interval in milliseconds. Range: 350-1200.

    Default: 800

SCROLL

This section documents the [scroll] table of the configuration file.

multiplier = <float>

    Scroll speed multiplier.

    Default: 3.0

divider = <float>

    Scroll divider for fine-tuning.

    Default: 1.0

NAVIGATION

This section documents the [navigation] table of the configuration file.

mode = "NativeTab" | "Tab" | "Plain"

Navigation display mode.

Default: "Tab"

clickable = true | false

    Enable clickable navigation elements.

    Default: false

use-current-path = true | false

    Show current working directory in navigation.

    Default: false

color-automation = [{ program = "<string>", path = "<string>", color = "<string>" },]

    Automatic color assignment based on program or path.

SHELL

This section documents the [shell] table of the configuration file.

program = "<string>"

    Shell program to execute.

    Default: System default shell

args = ["<string>",]

    Arguments to pass to the shell.

EDITOR

This section documents the [editor] table of the configuration file.

program = "<string>"

    Editor program for opening configuration files.

    Default: "vi"

args = ["<string>",]

    Arguments to pass to the editor.

BINDINGS

This section documents the [bindings] table of the configuration file.

keys = [{ key = "<string>", with = "<string>", action = "<string>" },]

    Key bindings configuration.

    key
        Key name (e.g., "q", "Enter", "F1").

    with
        Modifier keys: "super", "alt", "ctrl", "shift". Multiple modifiers can be combined with |.

    action
        Action to perform. Available actions include: "Quit", "CreateWindow", "CloseWindow", "Copy", "Paste", "ScrollUp", "ScrollDown", "ToggleViMode", "OpenConfigEditor", and many others.

RENDERER

This section documents the [renderer] table of the configuration file.

performance = "High" | "Low"

    Rendering performance mode.

    Default: "High"

backend = "Automatic" | "GL" | "Vulkan" | "DX12" | "Metal"

    Graphics backend to use.

    Default: "Automatic"

disable-renderer-when-unfocused = true | false

    Disable rendering when window is unfocused to save power.

    Default: false

level = <integer>

    Rendering level (0-3).

    Default: 3

DEVELOPER

This section documents the [developer] table of the configuration file.

log-level = "OFF" | "ERROR" | "WARN" | "INFO" | "DEBUG" | "TRACE"

    Log level for debugging.

    Default: "OFF"

enable-log-file = true | false

    Write logs to file.

    Default: false

enable-fps-counter = true | false

    Display FPS counter.

    Default: false

SEE ALSO

rio(1)

BUGS

Found a bug? Please report it at https://github.com/raphamorim/rio/issues.

MAINTAINERS

•   Raphael Amorim <rapha850@gmail.com>