All possible config values for `toggle_on_modifiers_press` are:
```json
"inlay_hints": {
"toggle_on_modifiers_press": {
"control": true,
"shift": true,
"alt": true,
"platform": true,
"function": true
}
}
```
Unspecified values have a `false` value, hints won't be toggled if all the modifiers are `false` or not all the modifiers are pressed.
## Journal
- Description: Configuration for the journal.
- Setting: `journal`
- Default:
```json
"journal": {
"path": "~",
"hour_format": "hour12"
}
```
### Path
- Description: The path of the directory where journal entries are stored.
- Setting: `path`
- Default: `~`
**Options**
`string` values
### Hour Format
- Description: The format to use for displaying hours in the journal.
- Setting: `hour_format`
- Default: `hour12`
**Options**
1. 12-hour format:
```json
{
"hour_format": "hour12"
}
```
2. 24-hour format:
```json
{
"hour_format": "hour24"
}
```
## Languages
- Description: Configuration for specific languages.
- Setting: `languages`
- Default: `null`
**Options**
To override settings for a language, add an entry for that languages name to the `languages` value. Example:
```json
"languages": {
"C": {
"format_on_save": "off",
"preferred_line_length": 64,
"soft_wrap": "preferred_line_length"
},
"JSON": {
"tab_size": 4
}
}
```
The following settings can be overridden for each specific language:
- [`enable_language_server`](#enable-language-server)
- [`ensure_final_newline_on_save`](#ensure-final-newline-on-save)
- [`format_on_save`](#format-on-save)
- [`formatter`](#formatter)
- [`hard_tabs`](#hard-tabs)
- [`preferred_line_length`](#preferred-line-length)
- [`remove_trailing_whitespace_on_save`](#remove-trailing-whitespace-on-save)
- [`show_edit_predictions`](#show-edit-predictions)
- [`show_whitespaces`](#show-whitespaces)
- [`soft_wrap`](#soft-wrap)
- [`tab_size`](#tab-size)
- [`use_autoclose`](#use-autoclose)
- [`always_treat_brackets_as_autoclosed`](#always-treat-brackets-as-autoclosed)
These values take in the same options as the root-level settings with the same name.
## Network Proxy
- Description: Configure a network proxy for Zed.
- Setting: `proxy`
- Default: `null`
**Options**
The proxy setting must contain a URL to the proxy.
The following URI schemes are supported:
- `http`
- `https`
- `socks4` - SOCKS4 proxy with local DNS
- `socks4a` - SOCKS4 proxy with remote DNS
- `socks5` - SOCKS5 proxy with local DNS
- `socks5h` - SOCKS5 proxy with remote DNS
`http` will be used when no scheme is specified.
By default no proxy will be used, or Zed will attempt to retrieve proxy settings from environment variables, such as `http_proxy`, `HTTP_PROXY`, `https_proxy`, `HTTPS_PROXY`, `all_proxy`, `ALL_PROXY`.
For example, to set an `http` proxy, add the following to your settings:
```json
{
"proxy": "http://127.0.0.1:10809"
}
```
Or to set a `socks5` proxy:
```json
{
"proxy": "socks5h://localhost:10808"
}
```
## Preview tabs
- Description:
Preview tabs allow you to open files in preview mode, where they close automatically when you switch to another file unless you explicitly pin them. This is useful for quickly viewing files without cluttering your workspace. Preview tabs display their file names in italics. \
There are several ways to convert a preview tab into a regular tab:
- Double-clicking on the file
- Double-clicking on the tab header
- Using the `project_panel::OpenPermanent` action
- Editing the file
- Dragging the file to a different pane
- Setting: `preview_tabs`
- Default:
```json
"preview_tabs": {
"enabled": true,
"enable_preview_from_file_finder": false,
"enable_preview_from_code_navigation": false,
}
```
### Enable preview from file finder
- Description: Determines whether to open files in preview mode when selected from the file finder.
- Setting: `enable_preview_from_file_finder`
- Default: `false`
**Options**
`boolean` values
### Enable preview from code navigation