.\" Generated by gen_docs from crates/datui-cli. Do not edit.
.TH DATUI\-CONFIG 5 2026-10-06 "datui 0.4.1" "File Formats"
.nr HY 0
.ds AD l
.SH NAME
datui\-config \- the datui configuration file
.SH SYNOPSIS
.nf
\fICONFIG\fR/config.toml
\fBdatui\fR \fB\-c\fR \fIKEY=VALUE\fR
.fi
.SH DESCRIPTION
datui's settings are TOML: a table per section, \fB[display]\fR, and a key per setting. A key is written \fBsection.name\fR here and with \fB\-c\fR.
.PP
Values are taken, lowest first, from the defaults, the files listed in \fBimport\fR (in order), the config file, \fB\-c KEY=VALUE\fR (repeatable), and a key's own flag. \fBdatui config init\fR writes the file with every key commented out at its default, \fBdatui config path\fR prints the files read, and \fBdatui config keys\fR lists every key with its value in effect and what set it. A key datui does not know, or a value a key does not take, is an error that names it.
.SS Types
.TP
\fIsize\fR
A number and a unit: \fB512MiB\fR, \fB2GiB\fR, \fB100KiB\fR (\fBMB\fR, \fBGB\fR are powers of 1000). \fB0\fR needs none
.TP
\fIduration\fR
A number and a unit: \fB250ms\fR, \fB1.5s\fR, \fB2m\fR
.TP
\fIlist\fR
In a file, a TOML array; with \fB\-c\fR, \fBa,b\fR or the array
.TP
\fIcolor\fR
A name (\fBred\fR, \fBbright_blue\fR, \fBdefault\fR), \fB#rrggbb\fR or \fBindexed(0\-255)\fR
.TP
\fIbool\fR
\fBtrue\fR or \fBfalse\fR.
.TP
\fIpath\fR
A path; \fB~\fR and \fB$VAR\fR expand.
.SH SETTINGS
.SS "Top level"
.TP
\fBimport\fR (\fIlist\fR)
Config files merged in before this one, in order; this file's own values win. Paths may be relative to this file, or use ~ and $VAR. Default: \fB[]\fR.
.TP
\fBcatalogs\fR (\fIlist of path | { path, id, label }\fR)
Catalog files elsewhere, listed on the home screen after catalog.toml and the config directory's catalogs/*.toml, each a section; see Catalogs. Each is a path, or { path, id, label } to give it another id or label. Paths may be relative to this file. Adds up across imports. Default: \fB[]\fR.
.SS "[read]"
How files are read. A file's own layout (delimiter, header, rows to skip) is a flag for that file, not a setting.
.TP
\fBread.infer_types\fR (\fIbool | list of columns\fR)
Read string columns as dates, times, durations or numbers where every value parses, after trimming: true for all, false for none, or a list of columns. CSV, and dates in JSON. A column with a leading zero (02134) stays text; a later value that does not parse is null, and the Notes tab counts them. Default: \fBtrue\fR. Flag: \fB\-\-infer\-types\fR.
.TP
\fBread.parquet_schema\fR (\fIunion | first\fR)
A partitioned Parquet dataset's schema: union is every column any file has, from their footers; first lets Polars take one file's. Default: \fB"union"\fR.
.TP
\fBread.decompress_in_memory\fR (\fIbool\fR)
Decompress a compressed CSV, TSV or PSV into memory instead of to a temp file. Default: \fBfalse\fR.
.TP
\fBread.temp_dir\fR (\fIpath\fR)
Directory for decompression temp files. Unset: the system's. Unset by default. Flag: \fB\-\-temp\-dir\fR.
.TP
\fBread.follow_interval\fR (\fIduration\fR)
With \-\-follow, how often the file is checked for new rows, or on Linux the least time between two reads, 10ms to 1m. Appends within one interval are one refresh. Default: \fB"250ms"\fR.
.TP
\fBread.exact_count_files\fR (\fIinteger\fR)
A dataset of more files than this shows a row count estimated from a sample of its footers until c in the Info panel counts it; 0 always counts. Default: \fB50000\fR.
.TP
\fBread.memory_warning\fR (\fIsize\fR)
Ask before reading more than this of a file whole into memory (JSON, Avro, ORC, Excel and the other formats read in memory); 0 never asks. Default: \fB"1GiB"\fR.
.TP
\fBread.audio_float\fR (\fIbool\fR)
Show integer audio samples as float in [\-1, 1]. Default: \fBfalse\fR.
.SS "[csv]"
CSV, TSV and PSV. A delimited format spec takes these keys too.
.TP
\fBcsv.comment\fR (\fIstring\fR)
Lines starting with this are comments, before the header and among the data. Unset by default. Flag: \fB\-\-comment\fR.
.TP
\fBcsv.header_join\fR (\fIstring\fR)
Joins a column's names when \-\-header-rows names several lines. Default: \fB" "\fR.
.TP
\fBcsv.skip_initial_space\fR (\fIbool\fR)
Ignore the spaces after a delimiter, so padded numbers are numbers and a cell of spaces is null. Default: \fBfalse\fR. Flag: \fB\-\-skip\-initial\-space\fR.
.TP
\fBcsv.null_values\fR (\fIlist\fR)
Values read as null: VAL in every column, COL=VAL in column COL only. \-\-null is repeatable and replaces this list. Default: \fB[]\fR. Flag: \fB\-\-null\fR.
.TP
\fBcsv.infer_rows\fR (\fIinteger\fR)
Rows read to infer column types. Default: \fB1000\fR. Flag: \fB\-\-infer\-rows\fR.
.TP
\fBcsv.ignore_errors\fR (\fIbool\fR)
Skip rows that do not parse instead of failing. Default: \fBfalse\fR. Flag: \fB\-\-ignore\-errors\fR.
.SS "[display]"
.TP
\fBdisplay.unicode\fR (\fIauto | always | never\fR)
Box-drawing and arrow glyphs, or plain ASCII. auto uses them when the locale is UTF-8, or on Windows when no locale is set. Default: \fB"auto"\fR.
.TP
\fBdisplay.row_numbers\fR (\fI"auto" | bool\fR)
Number rows on the left by their place in the source, kept through a sort or filter (# toggles). auto: for text and logs; true or false: for all of them. Default: \fB"auto"\fR. Flag: \fB\-\-row\-numbers\fR.
.TP
\fBdisplay.row_numbers_start\fR (\fIinteger\fR)
The number of the source's first row. Default: \fB1\fR.
.TP
\fBdisplay.cell_padding\fR (\fI"comfortable" | "compact" | integer\fR)
Space between columns: comfortable (2 cells), compact (1) or a number of cells. Default: \fB"comfortable"\fR.
.TP
\fBdisplay.column_colors\fR (\fIbool\fR)
Color cells by column type. Default: \fBtrue\fR.
.TP
\fBdisplay.type_row\fR (\fIbool\fR)
A second header row naming each column's type (D toggles). Default: \fBtrue\fR.
.TP
\fBdisplay.notes_accent\fR (\fIbool\fR)
Accent the i key when datui has noticed something about the data. Default: \fBtrue\fR.
.TP
\fBdisplay.mouse\fR (\fIbool\fR)
Take the mouse: the wheel scrolls, a click selects. false leaves it to the terminal. Default: \fBtrue\fR. Flag: \fB\-\-mouse\fR.
.TP
\fBdisplay.sidebar_width\fR (\fIinteger\fR)
Width of every sidebar, in cells. Unset: each sidebar's own. Unset by default.
.TP
\fBdisplay.right_align_numbers\fR (\fIbool\fR)
Right-align numeric columns and their headers. Default: \fBtrue\fR.
.TP
\fBdisplay.number_format\fR (\fIpreset | table\fR)
Digit grouping: none, thousands, european, si, swiss, indian, underscore or system, or a [display.number_format] table (, toggles). Default: \fB"none"\fR. Flag: \fB\-\-number\-format\fR.
.SS "[performance]"
The rows the table buffers between reads, and the engine.
.TP
\fBperformance.pages_ahead\fR (\fIinteger\fR)
Pages of rows buffered ahead of the screen. Default: \fB3\fR.
.TP
\fBperformance.pages_behind\fR (\fIinteger\fR)
Pages of rows buffered behind the screen. Default: \fB3\fR.
.TP
\fBperformance.max_buffered_rows\fR (\fIinteger\fR)
Most rows the table buffers between reads; 0 for no limit. Default: \fB100000\fR.
.TP
\fBperformance.max_buffered\fR (\fIsize\fR)
Most memory the buffered rows may take, estimated from the schema; 0 for no limit. Rounded up to whole MiB. Default: \fB"512MiB"\fR.
.TP
\fBperformance.streaming\fR (\fIbool\fR)
Use the Polars streaming engine where it applies. Default: \fBtrue\fR.
.SS "[analysis]"
Analysis, Data Quality and charts.
.TP
\fBanalysis.sample_rows\fR (\fIinteger\fR)
Rows an analysis samples from a larger table, spread across all of it; 0 reads every row. Default: \fB100000\fR. Flag: \fB\-\-sample\-rows\fR.
.TP
\fBanalysis.chart_rows\fR (\fIinteger\fR)
Rows a chart reads; a larger table is sampled across all of it. Default: \fB10000\fR.
.TP
\fBanalysis.chart_grid\fR (\fIbool\fR)
Start charts with a grid at the major ticks (g toggles). Default: \fBfalse\fR.
.TP
\fBanalysis.quality_local_copy\fR (\fIsize\fR)
Most a Data Quality full scan of a remote dataset copies into the cache to read once; 0 never copies. Default: \fB"2GiB"\fR.
.TP
\fBanalysis.sample_memory_limit\fR (\fIsize\fR)
Most memory a view's sample may take. Unset: the memory available now decides; 0 never warns or stops. Unset by default.
.SS "[chart]"
Charts exported to a file (\fBe\fR in the chart view).
.TP
\fBchart.export_recipe\fR (\fIbool\fR)
Embed how an exported chart was made (source path, query, chart, sample) in its PNG, SVG or PDF. The export dialog's Recipe row starts from it. Default: \fBtrue\fR.
.SS "[home]"
The home screen.
.TP
\fBhome.desktop_recents\fR (\fIbool\fR)
Also list directories from the desktop's recently-used files; never the file names. Default: \fBtrue\fR.
.TP
\fBhome.show_unreadable\fR (\fIbool\fR)
List files datui cannot read, dimmed (Ctrl+A toggles). Default: \fBfalse\fR.
.TP
\fBhome.hide\fR (\fIlist\fR)
Catalogs not shown, by id: mine (catalog.toml), examples, or a listed file's name; one entry as catalog/id, such as examples/nyc-taxis. Adds up across imports. Default: \fB[]\fR.
.TP
\fBhome.preview_max\fR (\fIsize\fR)
Largest local file whose first rows the home screen previews; 0 turns the preview off. Default: \fB"64MiB"\fR.
.SS "[home.search]"
Searching below the working directory as you type on the home screen.
.TP
\fBhome.search.enabled\fR (\fIbool\fR)
Search below the working directory as you type. Default: \fBtrue\fR.
.TP
\fBhome.search.max_depth\fR (\fIinteger\fR)
How many directories deep the search goes. Default: \fB8\fR.
.TP
\fBhome.search.max_results\fR (\fIinteger\fR)
Matches listed; the rest are counted. Default: \fB1000\fR.
.TP
\fBhome.search.time_budget\fR (\fIduration\fR)
How long the search walks before keeping what it found. Default: \fB"1500ms"\fR.
.TP
\fBhome.search.cross_filesystems\fR (\fIbool\fR)
Descend into other filesystems, network mounts included. Default: \fBfalse\fR.
.TP
\fBhome.search.follow_gitignore\fR (\fIbool\fR)
Skip what .gitignore ignores. Default: \fBfalse\fR.
.TP
\fBhome.search.skip\fR (\fIlist\fR)
Directory names never searched. Replaces the defaults; skip_extra adds to them. Default: \fB["node_modules", "target", "build", "dist", "vendor", "site\-packages", "__pycache__", "venv", "env"]\fR.
.TP
\fBhome.search.skip_extra\fR (\fIlist\fR)
Directory names never searched, besides skip. Default: \fB[]\fR.
.TP
\fBhome.search.extensions\fR (\fIlist\fR)
Extensions searched for; empty means those of the formats datui reads. Default: \fB[]\fR.
.SS "[cloud]"
See Cloud sources for \fB[[cloud.connections]]\fR.
.TP
\fBcloud.connections\fR (\fItables\fR)
Cloud stores to list on the home screen; see Cloud sources. Unset by default.
.TP
\fBcloud.hide\fR (\fIlist\fR)
Cloud source IDs not shown on the home screen. Adds up across imports. Default: \fB[]\fR.
.TP
\fBcloud.use_azure_account_keys\fR (\fIbool\fR)
Read an Azure account with its access keys when a sign-in has no data role, as the Portal does. Default: \fBtrue\fR.
.TP
\fBcloud.env_files\fR (\fIlist\fR)
Files to read cloud variables from, relative to the working directory, such as .env. Adds up across imports. Default: \fB[]\fR.
.TP
\fBcloud.instance_identity\fR (\fIbool\fR)
Use the identity of the cloud VM datui runs on (EC2, GCE, Azure). Default: \fBfalse\fR.
.TP
\fBcloud.discover\fR (\fIbool | "all" | "none" | list\fR)
Logins found on this machine that become home-screen sources: all (unset), none, or kinds from s3, gcs, azure. Unset by default.
.TP
\fBcloud.list_on_start\fR (\fIbool\fR)
List every source's buckets when the home screen opens, not when one is entered. Default: \fBfalse\fR.
.SS "[http]"
Every request datui makes: HTTP(S) files, cloud stores and their sign-ins.
.TP
\fBhttp.user_agent\fR (\fIstring\fR)
The User-Agent header on every request. Empty sends datui/VERSION (+https:/\:/\:github.\:com/\:derekwisong/\:datui), which names datui and its version and nothing about you. Default: \fB""\fR.
.SS "[query]"
.TP
\fBquery.history_limit\fR (\fIinteger\fR)
Queries remembered. Default: \fB1000\fR.
.TP
\fBquery.history\fR (\fIbool\fR)
Remember queries. Default: \fBtrue\fR.
.TP
\fBquery.default_mode\fR (\fIsql | q\fR)
The language : starts in, until Ctrl+T picks another. Default: \fB"sql"\fR.
.SS "[views]"
.TP
\fBviews.auto_apply\fR (\fIbool\fR)
Apply the best-matching view when a file opens. Default: \fBfalse\fR.
.SS "[clipboard]"
How the copy dialog (\fBy\fR) reaches the system clipboard.
.TP
\fBclipboard.backend\fR (\fIauto | native | osc52\fR)
auto: the display server where one answers, osc52 elsewhere (SSH). osc52 is an escape sequence the terminal applies. Default: \fB"auto"\fR.
.TP
\fBclipboard.osc52_limit\fR (\fIsize\fR)
Longest osc52 copy to attempt, as base64. Terminals cap what they accept. Default: \fB"100KiB"\fR.
.SS "[formats]"
Where format specs and dictionaries are found.
.TP
\fBformats.path\fR (\fIlist\fR)
Directories of format specs and dictionaries, searched after ~/.config/datui/formats and $DATUI_FORMATS_PATH. Adds up across imports. Default: \fB[]\fR.
.SS "[log]"
.TP
\fBlog.file\fR (\fIpath\fR)
Where the log goes. Unset: datui.log in the cache directory. Unset by default. Flag: \fB\-\-log\-file\fR.
.TP
\fBlog.level\fR (\fIerror | warn | info | debug | trace | off\fR)
How much the log says (default warn). DATUI_LOG beats a config file's; \-c and \-\-log-level beat DATUI_LOG. Unset by default. Flag: \fB\-\-log\-level\fR.
.SS "[theme]"
.TP
\fBtheme.mode\fR (\fIauto | dark | light\fR)
Which mode's theme to use: theme.dark or theme.light. auto follows the terminal's answer about its background, else its last answer, then COLORFGBG, then dark; it asks again when the terminal regains focus. Unset by default.
.TP
\fBtheme.dark\fR (\fIstring\fR)
The theme used when the terminal is dark: night-market, day-market, or a file's name in the config directory's themes/. A name that cannot be used falls back to night-market, with a warning when dark is in use. Default: \fB"night\-market"\fR.
.TP
\fBtheme.light\fR (\fIstring\fR)
The theme used when the terminal is light: night-market, day-market, or a file's name in the config directory's themes/. A name that cannot be used falls back to day-market, with a warning when light is in use. Default: \fB"day\-market"\fR.
.SS "[theme.colors]"
Each slot takes a name (\fBred\fR, \fBbright_blue\fR, \fBdefault\fR), \fB#rrggbb\fR or \fBindexed(0\-255)\fR. They lie over the theme in use, \fBtheme.dark\fR or \fBtheme.light\fR, in either mode; a whole theme of your own goes in a file in \fBthemes/\fR.
.TP
\fBtheme.colors.chip_key\fR (\fIcolor\fR)
Keys named in the footer, dialogs, the breadcrumb and the correlation matrix. Default: \fB#7dcfff\fR dark, \fB#2e7de9\fR light.
.TP
\fBtheme.colors.chip_label\fR (\fIcolor\fR)
Labels beside keys in the footer, and the footer's status. Default: \fB#a9b1d6\fR dark, \fB#3760bf\fR light.
.TP
\fBtheme.colors.throbber\fR (\fIcolor\fR)
The busy spinner. Default: \fB#7dcfff\fR dark, \fB#2e7de9\fR light.
.TP
\fBtheme.colors.success\fR (\fIcolor\fR)
Success. Default: \fB#9ece6a\fR dark, \fB#587539\fR light.
.TP
\fBtheme.colors.error\fR (\fIcolor\fR)
Errors. Default: \fB#f7768e\fR dark, \fB#f52a65\fR light.
.TP
\fBtheme.colors.warning\fR (\fIcolor\fR)
Warnings. Default: \fB#e0af68\fR dark, \fB#8c6c3e\fR light.
.TP
\fBtheme.colors.dimmed\fR (\fIcolor\fR)
Dimmed text, nulls and axes. Default: \fB#565f89\fR dark, \fB#848cb5\fR light.
.TP
\fBtheme.colors.background\fR (\fIcolor\fR)
Main background. Default: \fBdefault\fR dark, \fBdefault\fR light.
.TP
\fBtheme.colors.surface\fR (\fIcolor\fR)
Dialog background. Default: \fBdefault\fR dark, \fBdefault\fR light.
.TP
\fBtheme.colors.controls_bg\fR (\fIcolor\fR)
Count chips and dialogs' key chips. Default: \fB#262a3f\fR dark, \fB#d0d5e3\fR light.
.TP
\fBtheme.colors.text_primary\fR (\fIcolor\fR)
Text. Default: \fBdefault\fR dark, \fBdefault\fR light.
.TP
\fBtheme.colors.text_secondary\fR (\fIcolor\fR)
Secondary text. Default: \fB#737aa2\fR dark, \fB#6172b0\fR light.
.TP
\fBtheme.colors.text_inverse\fR (\fIcolor\fR)
Text on a key chip. Default: \fB#1a1b26\fR dark, \fB#e1e2e7\fR light.
.TP
\fBtheme.colors.table_header\fR (\fIcolor\fR)
Header text. Default: \fB#c0caf5\fR dark, \fB#3760bf\fR light.
.TP
\fBtheme.colors.table_header_bg\fR (\fIcolor\fR)
Header fill. Default: \fB#2b3047\fR dark, \fB#c4c8da\fR light.
.TP
\fBtheme.colors.table_row_numbers\fR (\fIcolor\fR)
The row-number column. Default: \fB#565f89\fR dark, \fB#848cb5\fR light.
.TP
\fBtheme.colors.table_column_separator\fR (\fIcolor\fR)
The rule after frozen columns and beside section titles. Default: \fB#3b4261\fR dark, \fB#a8aecb\fR light.
.TP
\fBtheme.colors.table_selected\fR (\fIcolor\fR)
Tint under the current row; reversed swaps text and background instead. Default: \fB#283457\fR dark, \fB#b6bfe2\fR light.
.TP
\fBtheme.colors.table_column_cursor\fR (\fIcolor\fR)
Tint under the column cursor's cells. Default: \fB#292e42\fR dark, \fB#cbd3f2\fR light.
.TP
\fBtheme.colors.table_cell_cursor\fR (\fIcolor\fR)
The column cursor's header and the current cell. Default: \fB#3b4261\fR dark, \fB#a0aef0\fR light.
.TP
\fBtheme.colors.sidebar_border\fR (\fIcolor\fR)
Sidebar and dialog borders. Default: \fB#565f89\fR dark, \fB#6172b0\fR light.
.TP
\fBtheme.colors.modal_border_active\fR (\fIcolor\fR)
The focused dialog's border. Default: \fB#7dcfff\fR dark, \fB#2e7de9\fR light.
.TP
\fBtheme.colors.modal_border_error\fR (\fIcolor\fR)
An error dialog's border. Default: \fB#f7768e\fR dark, \fB#f52a65\fR light.
.TP
\fBtheme.colors.distribution_normal\fR (\fIcolor\fR)
Analysis: a normal distribution. Default: \fB#9ece6a\fR dark, \fB#587539\fR light.
.TP
\fBtheme.colors.distribution_skewed\fR (\fIcolor\fR)
Analysis: a skewed distribution. Default: \fB#e0af68\fR dark, \fB#8c6c3e\fR light.
.TP
\fBtheme.colors.distribution_other\fR (\fIcolor\fR)
Analysis: other distributions. Default: \fB#c0caf5\fR dark, \fB#3760bf\fR light.
.TP
\fBtheme.colors.outlier_marker\fR (\fIcolor\fR)
Analysis: outliers. Default: \fB#f7768e\fR dark, \fB#f52a65\fR light.
.TP
\fBtheme.colors.input_cursor\fR (\fIcolor\fR)
The text caret; default reverses the text under it. Default: \fBdefault\fR dark, \fBdefault\fR light.
.TP
\fBtheme.colors.input_cursor_text\fR (\fIcolor\fR)
Text under the caret block; default picks black or white by contrast. Default: \fBdefault\fR dark, \fBdefault\fR light.
.TP
\fBtheme.colors.table_alternate_row\fR (\fIcolor\fR)
Every other row; default turns the stripe off. Default: \fB#1e2030\fR dark, \fB#dcdfea\fR light.
.TP
\fBtheme.colors.type_str\fR (\fIcolor\fR)
String columns. Default: \fB#9ece6a\fR dark, \fB#587539\fR light.
.TP
\fBtheme.colors.type_int\fR (\fIcolor\fR)
Integer columns. Default: \fB#7aa2f7\fR dark, \fB#2e7de9\fR light.
.TP
\fBtheme.colors.type_float\fR (\fIcolor\fR)
Float columns. Default: \fB#2ac3de\fR dark, \fB#007197\fR light.
.TP
\fBtheme.colors.type_bool\fR (\fIcolor\fR)
Boolean columns. Default: \fB#e0af68\fR dark, \fB#8c6c3e\fR light.
.TP
\fBtheme.colors.type_temporal\fR (\fIcolor\fR)
Date, time and datetime columns. Default: \fB#bb9af7\fR dark, \fB#9854f1\fR light.
.TP
\fBtheme.colors.type_binary\fR (\fIcolor\fR)
Binary columns' placeholder. Default: \fB#565f89\fR dark, \fB#848cb5\fR light.
.TP
\fBtheme.colors.chart_1\fR (\fIcolor\fR)
Chart series 1; also histogram bars, bar charts and Q-Q points. Default: \fB#7dcfff\fR dark, \fB#2e7de9\fR light.
.TP
\fBtheme.colors.chart_2\fR (\fIcolor\fR)
Chart series 2. Default: \fB#bb9af7\fR dark, \fB#9854f1\fR light.
.TP
\fBtheme.colors.chart_3\fR (\fIcolor\fR)
Chart series 3. Default: \fB#9ece6a\fR dark, \fB#587539\fR light.
.TP
\fBtheme.colors.chart_4\fR (\fIcolor\fR)
Chart series 4. Default: \fB#e0af68\fR dark, \fB#8c6c3e\fR light.
.TP
\fBtheme.colors.chart_5\fR (\fIcolor\fR)
Chart series 5. Default: \fB#7aa2f7\fR dark, \fB#007197\fR light.
.TP
\fBtheme.colors.chart_6\fR (\fIcolor\fR)
Chart series 6. Default: \fB#f7768e\fR dark, \fB#f52a65\fR light.
.TP
\fBtheme.colors.chart_7\fR (\fIcolor\fR)
Chart series 7. Default: \fB#ff9e64\fR dark, \fB#b15c00\fR light.
.TP
\fBtheme.colors.chart_8\fR (\fIcolor\fR)
Chart series 8. Default: \fB#1abc9c\fR dark, \fB#118c74\fR light.
.TP
\fBtheme.colors.chart_9\fR (\fIcolor\fR)
Chart series 9. Default: \fB#ff5fd2\fR dark, \fB#d1188c\fR light.
.TP
\fBtheme.colors.chart_10\fR (\fIcolor\fR)
Chart series 10. Default: \fB#f4ef8a\fR dark, \fB#24357a\fR light.
.TP
\fBtheme.colors.chart_grid\fR (\fIcolor\fR)
The chart grid, a shade dimmer than dimmed. Default: \fB#3d4785\fR dark, \fB#70aabf\fR light.
.TP
\fBtheme.colors.accent\fR (\fIcolor\fR)
Key chips, focused titles and the selection rail. Default: \fB#7dcfff\fR dark, \fB#2e7de9\fR light.
.TP
\fBtheme.colors.accent_bright\fR (\fIcolor\fR)
The section the cursor is in. Default: \fB#a4daff\fR dark, \fB#1a6cd0\fR light.
.TP
\fBtheme.colors.gradient_start\fR (\fIcolor\fR)
The wordmark's first stop. Default: \fB#7aa2f7\fR dark, \fB#2e7de9\fR light.
.TP
\fBtheme.colors.gradient_end\fR (\fIcolor\fR)
The wordmark's last stop. Default: \fB#bb9af7\fR dark, \fB#9854f1\fR light.
.TP
\fBtheme.colors.find_match\fR (\fIcolor\fR)
Behind the cell a find landed on. Default: \fB#e0af68\fR dark, \fB#f0c35a\fR light.
.TP
\fBtheme.colors.hex_null\fR (\fIcolor\fR)
Hex view: the byte 0x00. Default: \fB#565f89\fR dark, \fB#848cb5\fR light.
.TP
\fBtheme.colors.hex_printable\fR (\fIcolor\fR)
Hex view: printable ASCII. Default: \fB#7dcfff\fR dark, \fB#007197\fR light.
.TP
\fBtheme.colors.hex_whitespace\fR (\fIcolor\fR)
Hex view: whitespace bytes. Default: \fB#9ece6a\fR dark, \fB#587539\fR light.
.TP
\fBtheme.colors.hex_control\fR (\fIcolor\fR)
Hex view: other control bytes. Default: \fB#bb9af7\fR dark, \fB#9854f1\fR light.
.TP
\fBtheme.colors.hex_high\fR (\fIcolor\fR)
Hex view: 0x80 to 0xFE. Default: \fB#e0af68\fR dark, \fB#8c6c3e\fR light.
.TP
\fBtheme.colors.hex_ff\fR (\fIcolor\fR)
Hex view: the byte 0xFF. Default: \fB#f7768e\fR dark, \fB#f52a65\fR light.
.SS "[glyphs]"
.TP
\fBglyphs.*\fR (\fIstring | list\fR)
A glyph slot from glyphs.rs, replaced when the Unicode set is active. Keeps the width of the glyph it replaces. Unset by default.
.SH ENVIRONMENT
.TP
\fBDATUI_CONFIG_DIR\fR
The config directory, in place of the platform's (\fB~/.config/datui\fR on Linux). Saved views and format specs live there too.
.TP
\fBDATUI_LOG\fR
The log level: \fBerror\fR, \fBwarn\fR, \fBinfo\fR, \fBdebug\fR, \fBtrace\fR or \fBoff\fR. Beats \fBlog.level\fR in a file; \fB\-c\fR and \fB\-\-log\-level\fR beat it.
.SH FILES
\fICONFIG\fR is \fB$DATUI_CONFIG_DIR\fR when it is set, else \fB$XDG_CONFIG_HOME/datui\fR (\fB~/.config/datui\fR) on Linux, \fB~/Library/Application Support/datui\fR on macOS and \fB%APPDATA%\edatui\fR on Windows.
.TP
\fICONFIG\fR/config.toml
The config file: see datui-config(5). \fBdatui config path\fR prints the files read.
.TP
\fICONFIG\fR/catalog.toml
Your catalog, which Ctrl+D on the home screen adds to: see datui-catalog(1).
.TP
\fICONFIG\fR/catalogs/
More catalogs, one *.toml each, named by its file; examples.toml replaces the bundled one.
.TP
\fICONFIG\fR/views/
Saved views: see datui-views(1).
.TP
\fICONFIG\fR/formats/
Format specs and dictionaries, searched first: see datui-formats(7).
.SH EXAMPLES
Write the config file, every key commented out at its default.
.PP
.RS 4
.EX
datui config init
.EE
.RE
.PP
The config files read, lowest precedence first.
.PP
.RS 4
.EX
datui config path
.EE
.RE
.PP
The values a config file in the current directory sets.
.PP
\fBconfig.toml\fR
.PP
.RS 4
.EX
[display]
row_numbers = true
.EE
.RE
.PP
.RS 4
.EX
DATUI_CONFIG_DIR=. datui config keys
.EE
.RE
.SH "SEE ALSO"
\fBdatui\fR(1), \fBdatui\-config\fR(1)
.PP
The datui documentation: <https:/\:/\:derekwisong.\:github.\:io/\:datui/\:>
.SH BUGS
Report bugs at <https:/\:/\:github.\:com/\:derekwisong/\:datui/\:issues>.
.SH AUTHORS
Derek Wisong and the datui contributors.
.SH COPYRIGHT
Copyright \(co 2026 Derek Wisong
.PP
datui is free software under the MIT License.