RIO(5) File Formats Manual 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 = "" 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 = ["",] 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 = Window width in pixels. Default: 600 height = Window height in pixels. Default: 400 mode = "Windowed" | "Maximized" | "Fullscreen" Window startup mode. Default: "Windowed" opacity = 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 = "", opacity = } 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 = Font size in points. Default: 18.0 family = "" Font family name. When set, overrides all font variant families. Default: "cascadiacode" features = ["",] 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 = ["",] Additional directories to search for fonts. regular = { family = "", style = "", width = "", weight = } Regular font configuration. Default: { family = "cascadiacode", style = "Normal", width = "Normal", weight = 400 } bold = { family = "", style = "", width = "", weight = } Bold font configuration. Default: { family = "cascadiacode", style = "Normal", width = "Normal", weight = 800 } italic = { family = "", style = "", width = "", weight = } Italic font configuration. Default: { family = "cascadiacode", style = "Italic", width = "Normal", weight = 400 } bold-italic = { family = "", style = "", width = "", weight = } Bold italic font configuration. Default: { family = "cascadiacode", style = "Italic", width = "Normal", weight = 800 } extras = [{ family = "" },] Additional fonts to load. emoji = { family = "" } Emoji font configuration. Default: Built-in Twemoji font hinting = true | false Enable font hinting. Default: true symbol-map = [{ chars = "", family = "" },] 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 = "" Default background color. foreground = "" Default foreground color. cursor = "" Cursor color. vi-cursor = "" Vi mode cursor color. black, red, green, yellow, blue, magenta, cyan, white = "" Standard ANSI colors. light-black, light-red, light-green, light-yellow, light-blue, light- magenta, light-cyan, light-white = "" Bright ANSI colors. dim-black, dim-red, dim-green, dim-yellow, dim-blue, dim-magenta, dim- cyan, dim-white = "" Dim ANSI colors. tabs = "" Tab bar background color. tabs-foreground = "" Tab bar text color. tabs-active = "" Active tab background color. tabs-active-foreground = "" Active tab text color. tabs-active-highlight = "" Active tab highlight color. bar = "" Navigation bar background color. split = "" Split separator color. search-match-background = "" Search match background color. search-match-foreground = "" Search match text color. search-focused-match-background = "" Focused search match background color. search-focused-match-foreground = "" Focused search match text color. selection-background = "" Selection background color. selection-foreground = "" 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 = Cursor blinking interval in milliseconds. Range: 350-1200. Default: 800 SCROLL This section documents the [scroll] table of the configuration file. multiplier = Scroll speed multiplier. Default: 3.0 divider = 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 = "", path = "", color = "" },] Automatic color assignment based on program or path. SHELL This section documents the [shell] table of the configuration file. program = "" Shell program to execute. Default: System default shell args = ["",] Arguments to pass to the shell. EDITOR This section documents the [editor] table of the configuration file. program = "" Editor program for opening configuration files. Default: "vi" args = ["",] Arguments to pass to the editor. BINDINGS This section documents the [bindings] table of the configuration file. keys = [{ key = "", with = "", action = "" },] 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 = 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 o Raphael Amorim 2026-05-13 RIO(5)