Skip to content

Commit e637ebc

Browse files
author
y-yamasaki
committed
Merge branch 'develop'
2 parents 13031c3 + 320d5f6 commit e637ebc

8 files changed

Lines changed: 1456 additions & 174 deletions

File tree

WebSite/assets/data/blogList.json

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,18 @@
11
[
2+
{
3+
"id": "blog_00023",
4+
"title": "Zed IDE setting.jsonのすすめ",
5+
"date": "2025-12-15T00:00:00.000Z",
6+
"category": "IDE",
7+
"description": "Zedのsetting.jsonの筆者の最低限のおすすめ設定を共有します",
8+
"tags": [
9+
"zed",
10+
"ai"
11+
],
12+
"thumbnail": "assets/img/zed_icon.png",
13+
"contentPath": "blog/blog_00023.html",
14+
"recommended": true
15+
},
216
{
317
"id": "blog_00020",
418
"title": "試行錯誤のGemini 3 Pro体験記",

WebSite/assets/data/blogList_en.json

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,18 @@
11
[
2+
{
3+
"id": "blog_00023",
4+
"title": "Recommended Zed setting.json",
5+
"date": "2025-12-15T00:00:00.000Z",
6+
"category": "IDE",
7+
"description": "I share my minimal recommended settings for Zed's setting.json",
8+
"tags": [
9+
"zed",
10+
"ai"
11+
],
12+
"thumbnail": "assets/img/zed_icon.png",
13+
"contentPath": "blog/en/blog_00023.html",
14+
"recommended": true
15+
},
216
{
317
"id": "blog_00020",
418
"title": "Trial and Error:My Experience with Gemini 3 Pro",
18.5 KB
Loading

WebSite/blog/blog_00023.html

Lines changed: 522 additions & 0 deletions
Large diffs are not rendered by default.

WebSite/blog/en/blog_00023.html

Lines changed: 525 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 186 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,186 @@
1+
---
2+
title: Recommended Zed setting.json
3+
date: 2025-12-15
4+
category: IDE
5+
description: I share my minimal recommended settings for Zed's setting.json
6+
tags: [zed, ai]
7+
recommended: true
8+
thumbnail: assets/img/zed_icon.png
9+
---
10+
11+
Hello! I'm Pan-kun.
12+
13+
This time I'll describe my recommended settings for `setting.json`, which affects all workflows in the Zed editor.
14+
15+
## Introduction
16+
17+
I'll briefly explain how to configure `settings.json`. If you've used VS Code before, most of this will be familiar, but I'll cover it just in case.
18+
19+
### What is `settings.json`?
20+
21+
It's a file that defines editor behavior. You can customize themes, fonts, IDE layout, UI, extensions, and many more settings.
22+
Note: there are other configuration files such as `keymaps.json` for key bindings.
23+
24+
### How to open the settings
25+
26+
Open the command palette with [Ctrl + Shift + P] and type `Zed: setting`. A popup like the one in the attached image will appear.
27+
28+
![image](../assets/img/blog_00023_0.png)
29+
30+
### Types of settings
31+
32+
Items that end with "settings" can be configured via the settings UI.
33+
Items that end with "settings file" are configurable inside the `settings.json` script. (Refer to the documentation for property details.)
34+
35+
### Scope of settings
36+
37+
Listed below in increasing order of priority. Settings defined later override earlier ones.
38+
39+
- Default — settings applied by Zed by default
40+
- account — settings likely tied to your Zed or GitHub account
41+
- project — settings applied per-project
42+
43+
### Basic syntax
44+
45+
In general, as long as you follow the JSON structure below and set valid property names and values, you're fine:
46+
47+
```json
48+
{
49+
"propertyName": value,
50+
"A": {
51+
"B": "val",
52+
"C": true
53+
},
54+
"Array": ["S","A","M","P","L","E"]
55+
}
56+
```
57+
58+
Refer to the list of properties you can set in `settings.json` here:
59+
https://zed.dev/docs/configuring-zed
60+
And see `keymap.json` docs here:
61+
https://zed.dev/docs/key-bindings
62+
63+
## Recommended settings
64+
65+
Of course these are recommendations — your ideal setup depends on your environment, projects, and personal preferences. Below is a short list of the settings I'd like to highlight first.
66+
67+
| Property | Value | Description |
68+
| :--- | :--- | :--- |
69+
| colorize_brackets | true | Colorizes matching bracket pairs |
70+
| agent.default_model.provider | copilot_chat | Default LLM provider |
71+
| agent.default_model.model | gpt-5-mini | Any model usable with copilot_chat |
72+
| agent.default_profile | ask | Disables automatic code rewrite permission |
73+
| inlay_hints | true | Renders inlay hint texts |
74+
| lsp.omnisharp.initialization_options.AnalyzeOpenDocumentsOnly | true | Analyze only open files |
75+
| lsp.omnisharp.initialization_options.EnableRoslynAnalyzers | true | Use Roslyn analyzers (set false for very large codebases) |
76+
| lsp.omnisharp.initialization_options.EnableImportCompletion | true | Auto-insert `using` statements |
77+
| languages.CSharp.language_servers | ["omnisharp"] | Language server for C# |
78+
| languages.CSharp.format_on_save | "on" | Format on save |
79+
| languages.CSharp.tab_size | 4 | Spaces per tab |
80+
| languages.CSharp.preferred_line_length | 120 | Preferred max line length |
81+
82+
Some settings are nested deeply; as you can see, this article focuses mainly on C# users. If you want settings for C++ instead, add `clangd` under `lsp` and mirror similar `languages` settings for C/C++. You can configure each language independently.
83+
84+
Below is the full `settings.json` I use (in fact about half of this remains close to the defaults):
85+
86+
````json
87+
{
88+
"colorize_brackets": true,
89+
"context_servers": {},
90+
"agent": {
91+
"inline_assistant_model": {
92+
"provider": "copilot_chat",
93+
"model": "gpt-5-mini"
94+
},
95+
"dock": "right",
96+
"always_allow_tool_actions": true,
97+
"default_profile": "write",
98+
"default_model": {
99+
"provider": "copilot_chat",
100+
"model": "gpt-5-mini"
101+
},
102+
"model_parameters": []
103+
},
104+
"edit_predictions": {
105+
"disabled_globs": [],
106+
"mode": "subtle"
107+
},
108+
"inlay_hints": {
109+
"enabled": true
110+
},
111+
"preferred_line_length": 60,
112+
"minimap": {
113+
"max_width_columns": 60
114+
},
115+
"lsp": {
116+
"omnisharp": {
117+
"initialization_options": {
118+
"AnalyzeOpenDocumentsOnly": true,
119+
"EnableRoslynAnalyzers": true,
120+
"EnableImportCompletion": true
121+
}
122+
},
123+
"clangd": {
124+
"binary": {
125+
"path": "file to path\\clang.exe",
126+
"arguments": []
127+
}
128+
}
129+
},
130+
"languages": {
131+
"CSharp": {
132+
"language_servers": ["omnisharp"],
133+
"format_on_save": "on",
134+
"tab_size": 4,
135+
"preferred_line_length": 120
136+
},
137+
"JSON": {
138+
"tab_size": 2
139+
},
140+
"YAML": {
141+
"tab_size": 2
142+
}
143+
},
144+
"hard_tabs": false,
145+
"debugger": {
146+
"dock": "right"
147+
},
148+
"cursor_shape": "bar",
149+
"scrollbar": {
150+
"cursors": true
151+
},
152+
"terminal": {
153+
"dock": "right",
154+
"cursor_shape": "bar",
155+
"shell": {
156+
"program": "C:\\Program Files\\Git\\bin\\bash.exe"
157+
}
158+
},
159+
"features": {
160+
"edit_prediction_provider": "zed"
161+
},
162+
"vim_mode": false,
163+
"base_keymap": "VSCode",
164+
"icon_theme": {
165+
"mode": "dark",
166+
"light": "Zed (Default)",
167+
"dark": "VSCode Icons for Zed (Dark Angular)"
168+
},
169+
"ui_font_size": 14,
170+
"buffer_font_size": 12.0,
171+
"theme": {
172+
"mode": "dark",
173+
"light": "Gruvbox Light",
174+
"dark": "Gruvbox Dark"
175+
}
176+
}
177+
````
178+
(Note: I used quadruple backticks here to avoid interfering with the outer container; in the actual `settings.json` file you would use standard triple-backtick fences.)
179+
180+
Aside from the language server settings, I haven't heavily customized the UI — I keep a layout fairly close to the defaults. Personally I feel Zed's UI/UX is already very polished.
181+
182+
## Conclusion
183+
184+
`setting.json` tends to be something you add to or edit over time and then promptly forget, so I wrote this as a personal memo that may help others as well. Next time I might write about keymap/shortcut settings.
185+
186+
Enjoy your Zed life!

0 commit comments

Comments
 (0)