Skip to content

Instantly share code, notes, and snippets.

@storopoli
Last active June 6, 2025 10:24
Show Gist options
  • Save storopoli/e2b6610fb3430e47a4b374a9a81476e0 to your computer and use it in GitHub Desktop.
Save storopoli/e2b6610fb3430e47a4b374a9a81476e0 to your computer and use it in GitHub Desktop.
Zed Configs
// Zed keymap
//
// For information on binding keys, see the Zed
// documentation: https://zed.dev/docs/key-bindings
//
// To see the default key bindings run `zed: open default keymap`
// from the command palette.
[
{
"context": "Pane",
"use_key_equivalents": true,
"bindings": {
"alt-cmd-/": "search::ToggleRegex",
"cmd-1": ["pane::ActivateItem", 0],
"cmd-2": ["pane::ActivateItem", 1],
"cmd-3": ["pane::ActivateItem", 2],
"cmd-4": ["pane::ActivateItem", 3],
"cmd-5": ["pane::ActivateItem", 4],
"cmd-6": ["pane::ActivateItem", 5],
"cmd-7": ["pane::ActivateItem", 6],
"cmd-8": ["pane::ActivateItem", 7],
"cmd-9": "pane::ActivateLastItem"
}
},
// LazyGit integration
{
"context": "Editor && VimControl && !VimWaiting && !menu",
"bindings": {
"space g g": [
"task::Spawn",
{ "task_name": "lazygit", "target": "center" }
],
"space g f": [
"task::Spawn",
{ "task_name": "lazygit file log", "target": "center" }
]
}
},
{
"context": "EmptyPane || SharedScreen",
"bindings": {
"space g g": [
"task::Spawn",
{ "task_name": "lazygit", "target": "center" }
],
"space g f": [
"task::Spawn",
{ "task_name": "lazygit file log", "target": "center" }
]
}
},
{
"context": "vim_mode == visual",
"bindings": {
"shift-s": ["vim::PushAddSurrounds", {}]
}
},
{
"context": "Dock",
"bindings": {
"ctrl-w h": "workspace::ActivatePaneLeft",
"ctrl-w l": "workspace::ActivatePaneRight",
"ctrl-w k": "workspace::ActivatePaneUp",
"ctrl-w j": "workspace::ActivatePaneDown"
}
}
]
quitOnTopLevelReturn: true
os:
edit: "zed {{filename}}"
editAtLine: "zed {{filename}}:{{line}}"
git:
paging:
colorArg: always
#pager: delta --dark --paging=never
pager: delta --dark --paging=never --line-numbers --hyperlinks --hyperlinks-file-link-format="lazygit-edit://{path}:{line}"
// Zed settings
//
// For information on how to configure Zed, see the Zed
// documentation: https://zed.dev/docs/configuring-zed
//
// To see all of Zed's default settings without changing your
// custom settings, run `zed: open default settings` from the
// command palette (cmd-shift-p / ctrl-shift-p)
{
"ui_font_size": 16,
"buffer_font_size": 13,
"buffer_font_family": "Zed Plex Mono",
"buffer_font_features": {
// Disable ligatures:
"calt": false
},
"auto_signature_help": true,
"restore_on_startup": "none",
"telemetry": {
"metrics": false,
"diagnostics": false
},
"use_smartcase_search": true,
"vim_mode": true,
"relative_line_numbers": true,
"vertical_scroll_margin": 8,
"vim": {
"use_system_clipboard": "never",
"toggle_relative_line_numbers": true,
"highlight_on_yank_duration": 100
},
"inlay_hints": {
"enabled": true,
"show_type_hints": true,
"show_parameter_hints": true,
"show_other_hints": true
},
"theme": {
"mode": "system",
"light": "Gruvbox Light Hard",
"dark": "Gruvbox Dark Hard"
},
"features": {
"edit_prediction_provider": "zed"
},
"agent": {
"default_profile": "write",
"always_allow_tool_actions": true,
"default_model": {
"provider": "zed.dev",
"model": "claude-sonnet-4-thinking"
},
"version": "2"
},
"calls": {
"mute_on_join": true
},
"languages": {
"Nix": {
"enable_language_server": true,
"language_servers": ["nixd"]
}
},
"lsp": {
"nixd": {
"formatting": {
"command": ["nixfmt"]
}
}
},
"context_servers": {
"mcp-server-github": {
"settings": {
"github_personal_access_token": "<REDACTED>"
}
}
}
}
// Static tasks configuration.
[
{
"label": "lazygit",
"command": "lazygit",
"args": [],
"env": {},
"working_directory": "${ZED_WORKTREE_ROOT}",
"hide": "on_success",
"use_new_terminal": true,
"allow_concurrent_runs": false,
"shell": {
"program": "sh"
}
},
{
"label": "lazygit file log",
"command": "lazygit",
"args": ["-f", "\"$ZED_RELATIVE_FILE\""],
"env": {},
"working_directory": "${ZED_WORKTREE_ROOT}",
"hide": "on_success",
"use_new_terminal": true,
"allow_concurrent_runs": false,
"shell": {
"program": "sh"
}
}
]
// Project Settings on .zed/settings.json
{
"languages": {
"Zig": {
// Formatting with ZLS matches `zig fmt`.
// The Zig FAQ answers some questions about `zig fmt`:
// https://github.com/ziglang/zig/wiki/FAQ
"format_on_save": "language_server",
// Make sure that zls is the primary language server
"language_servers": ["zls"],
"code_actions_on_format": {
// Run code actions that currently supports adding and removing discards.
// "source.fixAll": true,
// Run code actions that sorts @import declarations.
"source.organizeImports": true
}
}
},
"lsp": {
"zls": {
"binary": {
// omit the following line if `zls` is in your PATH
// "path": "/path/to/zls_executable"
},
"initialization_options": {
// Whether to enable build-on-save diagnostics
//
// Further information about build-on save:
// https://zigtools.org/zls/guides/build-on-save/
// "enable_build_on_save": true,
// Change this to you Zig version:
"zig_lib_path": "/opt/homebrew/lib/zig"
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment