mirror of
https://github.com/l0ng-ai/tty7.git
synced 2026-11-06 00:15:06 +00:00
Rewrites the settings page to the Settings design: a sidebar with search, per-page modified counts and a "Modified only" switch; quiet grouped rows with an inline Reset; and the design's own controls (switch, segmented, stepper, slider, text field, dropdown and popover menus) in a new `settings/kit.rs`. - Appearance: Light / Dark / System cards and a theme menu per slot with a live preview, search, keyboard navigation and swatches. Font menus are searchable and draw each family in itself. - Keyboard shortcuts: back link, search, "Restore N changed", Default/tmux. A recorded chord another action already has now asks Replace / Cancel instead of taking it over silently. - SSH: one column of recent hosts, "Show all" by source, search; details and a six-field editor open in place. Auth, jump/proxy, forwarding and advanced sections are no longer shown; saved values are kept. - Integrations: machine menu, agent search, install summary, agent icons, and a per-row menu (Reinstall, Reveal hook file, Uninstall). - General gains startup and restore; updates and the server move to About. - Search results group live rows by page; a Modified view lists changes. The page code moves out of settings.rs into src/ui/settings/.
110 lines
4.1 KiB
Plaintext
110 lines
4.1 KiB
Plaintext
---
|
|
title: "Settings"
|
|
description: "What lives in each section, and how the settings file works."
|
|
---
|
|
|
|
<kbd>⌘ ,</kbd> opens Settings. There is a search box at the top that matches
|
|
setting names *and* keywords, which is usually faster than remembering which
|
|
section something is in.
|
|
|
|
<Frame caption="Settings opens in its own window, sections down the left">
|
|
<img src="/images/settings.webp" alt="tty7 Settings" />
|
|
</Frame>
|
|
|
|
## The eight sections
|
|
|
|
<CardGroup cols={2}>
|
|
<Card title="General" icon="sliders">
|
|
Interface language, default terminal, startup window, size and layout
|
|
restore, tray icon, and command completion notifications.
|
|
</Card>
|
|
<Card title="Appearance" icon="palette" href="/customization/themes">
|
|
Theme and colors, interface and terminal fonts, cursor, background image,
|
|
transparency, and inactive panes.
|
|
</Card>
|
|
<Card title="Terminal" icon="terminal">
|
|
Shell and starting directory, prompt editor, completion and command history,
|
|
scrollback, scrolling, bell, and opening links and files.
|
|
</Card>
|
|
<Card title="Keyboard & Mouse" icon="keyboard" href="/customization/keybindings">
|
|
Keyboard shortcuts, Option as Meta, mouse behavior, selection, and clipboard.
|
|
</Card>
|
|
<Card title="Window & Tabs" icon="window-maximize">
|
|
Tab position and placement, sidebar grouping, and diff previews.
|
|
</Card>
|
|
<Card title="SSH" icon="server" href="/remote/ssh">
|
|
Recent and saved hosts, each opened and edited in place, and host key
|
|
security.
|
|
</Card>
|
|
<Card title="Integrations" icon="robot" href="/agents/status">
|
|
AI agent hooks per machine and the tty7 command on PATH.
|
|
</Card>
|
|
<Card title="About" icon="circle-info" href="/reference/updates">
|
|
Version and update checks, update preferences and proxy, the settings
|
|
file, and the tty7 server.
|
|
</Card>
|
|
</CardGroup>
|
|
|
|
## Search and edit
|
|
|
|
Search matches setting names, descriptions, English aliases, and configuration
|
|
keys such as `mouse_zoom_modifier`. Results are grouped by section and are
|
|
editable directly; click a section name to open it. Press ⌘F (Ctrl+F) to jump
|
|
to the search box.
|
|
|
|
Use **Modified only** to find settings that differ from their defaults. A
|
|
modified setting offers **Reset** beside its name; installation and maintenance actions
|
|
do not have a generic reset.
|
|
|
|
Ordinary controls save automatically. Text fields commit valid values on Enter
|
|
or when focus leaves the field. Custom theme edits are previewed until you save;
|
|
cancel restores the original theme. SSH hosts also use explicit saving.
|
|
|
|
Recording a keyboard shortcut that another action already uses asks before
|
|
taking it over: **Replace** moves the shortcut, **Cancel** leaves both as they
|
|
were.
|
|
Leaving an edited form offers save, discard, or continue editing.
|
|
|
|
## The settings file
|
|
|
|
Everything the Settings window writes goes to one file:
|
|
|
|
| | |
|
|
|---|---|
|
|
| macOS / Linux | `~/.config/tty7/config.json` |
|
|
| Windows | `%APPDATA%\tty7\config.json` |
|
|
|
|
Set `TTY7_CONFIG_DIR` to point the whole directory — config, themes, state —
|
|
somewhere else.
|
|
|
|
You can edit the file by hand; a handful of options exist only there. See the
|
|
[configuration reference](/reference/configuration) for every key, its type, and
|
|
its default.
|
|
|
|
### How it handles mistakes
|
|
|
|
The file is written atomically, and read forgivingly:
|
|
|
|
- **A missing key** means the default — you only have to write what you change.
|
|
- **An out-of-range number** is clamped into its band, not rejected.
|
|
- **An unrecognised enum value** falls back to the default with a log line,
|
|
rather than failing the whole file.
|
|
- **An unparseable file** is not overwritten. tty7 starts on defaults, keeps a
|
|
copy at `config.json.corrupt`, and says so in the log.
|
|
|
|
<Note>
|
|
A UTF-8 BOM at the start of the file is tolerated, which matters if you edited
|
|
it in a Windows editor.
|
|
</Note>
|
|
|
|
## Language
|
|
|
|
**Settings → General → Language** switches the interface between English,
|
|
简体中文, and 日本語. The choice is explicit — the system language is never
|
|
inferred — and CLI output stays English regardless, so agent and script
|
|
integrations keep a stable surface.
|
|
|
|
```json
|
|
{ "gui_language": "zh-CN" }
|
|
```
|