aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorEllie Huxtable <ellie@atuin.sh>2026-01-22 15:33:12 -0800
committerGitHub <noreply@github.com>2026-01-22 15:33:12 -0800
commit8990f61820c5b1d688f2e01f9d06b3736556889e (patch)
tree26d087b212b013cf7f8816de6860b68cd502f07e /docs
parentUpdate regex for AWS Access Key ID pattern (#3088) (diff)
downloadatuin-8990f61820c5b1d688f2e01f9d06b3736556889e.zip
feat: add custom column support (#3089)
Configure the interactive search UI appearance. Resolves #998 ```toml [ui] columns = ["duration", "time", "command"] ``` ### `columns` Default: `["duration", "time", "command"]` Columns to display in the interactive search, from left to right. The selection indicator (`" > "`) is always shown first implicitly. Each column can be specified as: - A simple string (uses default width): `"duration"` - An object with type and optional width/expand: `{ type = "directory", width = 30 }` #### Available column types | Column | Default Width | Description | | --------- | ------------- | ----------------------------------------------- | | duration | 5 | Command execution duration (e.g., "123ms") | | time | 8 | Relative time since execution (e.g., "59m ago") | | datetime | 16 | Absolute timestamp (e.g., "2025-01-22 14:35") | | directory | 20 | Working directory (truncated if too long) | | host | 15 | Hostname | | user | 10 | Username | | exit | 3 | Exit code (colored by success/failure) | | command | * | The command itself (expands by default) | #### Column options - **type**: The column type (required when using object format) - **width**: Custom width in characters (optional, uses default if not specified) - **expand**: If `true`, the column fills remaining space. Default is `true` for `command`, `false` for others. Only one column should have `expand = true`. #### Examples ```toml # Minimal - more space for commands columns = ["duration", "command"] # With custom directory width columns = ["duration", { type = "directory", width = 30 }, "command"] # Show host for multi-machine sync users columns = ["duration", "time", "host", "command"] # Show exit codes prominently columns = ["exit", "duration", "command"] # Make directory expand instead of command columns = ["duration", "time", { type = "directory", expand = true }, { type = "command", expand = false }] ```
Diffstat (limited to 'docs')
-rw-r--r--docs/docs/configuration/config.md60
1 files changed, 60 insertions, 0 deletions
diff --git a/docs/docs/configuration/config.md b/docs/docs/configuration/config.md
index 18fc86ee..f62c6160 100644
--- a/docs/docs/configuration/config.md
+++ b/docs/docs/configuration/config.md
@@ -758,3 +758,63 @@ need to be added in or changed in normal usage.
```toml
max_depth = 10
```
+
+## ui
+
+Atuin version: >= 18.5
+
+Configure the interactive search UI appearance.
+
+```toml
+[ui]
+columns = ["duration", "time", "command"]
+```
+
+### `columns`
+
+Default: `["duration", "time", "command"]`
+
+Columns to display in the interactive search, from left to right. The selection
+indicator (`" > "`) is always shown first implicitly.
+
+Each column can be specified as:
+- A simple string (uses default width): `"duration"`
+- An object with type and optional width/expand: `{ type = "directory", width = 30 }`
+
+#### Available column types
+
+| Column | Default Width | Description |
+| --------- | ------------- | ----------------------------------------------- |
+| duration | 5 | Command execution duration (e.g., "123ms") |
+| time | 8 | Relative time since execution (e.g., "59m ago") |
+| datetime | 16 | Absolute timestamp (e.g., "2025-01-22 14:35") |
+| directory | 20 | Working directory (truncated if too long) |
+| host | 15 | Hostname where command was run |
+| user | 10 | Username |
+| exit | 3 | Exit code (colored by success/failure) |
+| command | * | The command itself (expands by default) |
+
+#### Column options
+
+- **type**: The column type (required when using object format)
+- **width**: Custom width in characters (optional, uses default if not specified)
+- **expand**: If `true`, the column fills remaining space. Default is `true` for `command`, `false` for others. Only one column should have `expand = true`.
+
+#### Examples
+
+```toml
+# Minimal - more space for commands
+columns = ["duration", "command"]
+
+# With custom directory width
+columns = ["duration", { type = "directory", width = 30 }, "command"]
+
+# Show host for multi-machine sync users
+columns = ["duration", "time", "host", "command"]
+
+# Show exit codes prominently
+columns = ["exit", "duration", "command"]
+
+# Make directory expand instead of command
+columns = ["duration", "time", { type = "directory", expand = true }, { type = "command", expand = false }]
+```