Expose REPL Settings (#37927)

Closes #37829

This PR introduces and exposes `REPLSettings` to control the number of
lines and columns in the REPL. These settings are integrated into the
existing configuration system, allowing for customization and management
through the standard settings interface.

#### Changes
- Added `REPLSettings` struct with `max_number_of_lines` and
`max_number_of_columns` fields.
- Integrated `REPLSettings` with the settings system by implementing the
`Settings` trait.
- Ensured compatibility with the workspace and existing settings
infrastructure.

Release Notes:

- Add configuration "repl" to settings to configure max lines and
columns for repl.

---------

Co-authored-by: Marshall Bowers <git@maxdeviant.com>
Co-authored-by: Kirill Bulatov <kirill@zed.dev>
This commit is contained in:
Casper van Elteren
2025-09-13 23:17:44 +00:00
committed by GitHub
co-authored by Marshall Bowers Kirill Bulatov
parent 13113ab311
commit c50b561e1c
7 changed files with 89 additions and 5 deletions
+17
View File
@@ -4026,6 +4026,23 @@ Example command to set the title: `echo -e "\e]2;New Title\007";`
}
```
## REPL
- Description: Repl settings.
- Setting: `repl`
- Default:
```json
"repl": {
// Maximum number of columns to keep in REPL's scrollback buffer.
// Clamped with [20, 512] range.
"max_columns": 128,
// Maximum number of lines to keep in REPL's scrollback buffer.
// Clamped with [4, 256] range.
"max_lines": 32
},
```
## Theme
- Description: The theme setting can be specified in two forms - either as the name of a theme or as an object containing the `mode`, `dark`, and `light` themes for the Zed UI.