Skip to content

Instantly share code, notes, and snippets.

@adrianlungu
Last active December 8, 2025 13:54
Show Gist options
  • Select an option

  • Save adrianlungu/138117d66da9534de3b310b280ae52a0 to your computer and use it in GitHub Desktop.

Select an option

Save adrianlungu/138117d66da9534de3b310b280ae52a0 to your computer and use it in GitHub Desktop.
Zed config

Various requirements beforehand:

JetBrains Mono

brew install --cask font-jetbrains-mono

Lazygit

Install

brew install lazygit

Side-by-side Diff

https://github.com/jesseduffield/lazygit/issues/155#issuecomment-2260986940
// Zed keymap updated with various IntelliJ-specific changes
//
// 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": "Workspace",
// "bindings": {
// // "shift shift": "file_finder::Toggle"
// }
// },
// {
// "context": "Editor && vim_mode == insert",
// "bindings": {
// // "j k": "vim::NormalBefore"
// }
// },
// {
// "bindings": {
// "alt-cmd-0": [
// "zed::ResetBufferFontSize",
// {
// "persist": false
// }
// ]
// }
// }
// ]
[
{
"context": "Workspace",
"bindings": {
// Search Everywhere (Double Shift)
// Note: Zed doesn't support "double tap" natively yet, so we map Shift-Shift
// to the file finder which is the closest equivalent.
"shift shift": "file_finder::Toggle",
// Find in Files (Cmd + Shift + F)
"cmd-shift-f": "pane::DeploySearch",
// Recent Files (Cmd + E)
// Zed uses the file finder for this, usually showing recent files first.
"cmd-e": "file_finder::Toggle",
// Project View / Sidebar (Cmd + 1)
"cmd-1": "project_panel::ToggleFocus",
// Terminal (Option + F12)
// Structure / Outline (Cmd + 7)
"cmd-7": "outline_panel::ToggleFocus",
// Git / Version Control (Cmd + 9)
"cmd-9": "git_panel::ToggleFocus",
// Run / Debug (Cmd + R - approximates "Run")
// Opens the task spawner which lets you run tests/scripts
}
},
{
"context": "Editor",
"bindings": {
// Rename Refactoring (Shift + F6)
"shift-f6": "editor::Rename",
// Go to Declaration (Cmd + B) - usually standard, but ensuring it.
"cmd-b": "editor::GoToDefinition",
// Go to Implementation (Cmd + Option + B)
"cmd-alt-b": "editor::GoToTypeDefinition",
// Find Usages (Option + F7)
"alt-f7": "editor::FindAllReferences",
// Navigate Back / Forward (Cmd + [ / ])
// Ensures this behaves like IntelliJ's caret history navigation
"cmd-[": "pane::GoBack",
"cmd-]": "pane::GoForward",
// Select Next Occurrence (Ctrl + G in IntelliJ usually, or Ctrl+Cmd+G)
// Zed defaults to Cmd+D. Mapping IntelliJ's specific "Select All Occurrences"
"cmd-ctrl-g": "editor::SelectAllMatches",
// Extend Selection (Option + Up) / Shrink Selection (Option + Down)
"alt-up": "editor::SelectLargerSyntaxNode",
"alt-down": "editor::SelectSmallerSyntaxNode",
// Duplicate Line (Cmd + D)
"cmd-d": "editor::DuplicateLineDown",
// Delete Line (Cmd + Backspace)
"cmd-backspace": "editor::DeleteLine"
}
},
{
"context": "ProjectPanel",
"bindings": {
// Rename file in the sidebar (Shift + F6)
"shift-f6": "project_panel::Rename",
// Create new file (Cmd + N)
"cmd-n": "project_panel::NewFile",
// Delete file (Delete)
"backspace": "project_panel::Delete",
"delete": "project_panel::Delete"
}
},
{
"context": "Terminal",
"bindings": {
// Clear Terminal (Cmd + K)
"cmd-k": "terminal::Clear"
}
},
{
"bindings": {
"cmd-shift-j": "git::Pull"
}
},
{
"bindings": {
"shift-h": "project_panel::ToggleHideHidden"
}
}
]
// 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)
{
"project_panel": {
"hide_hidden": false
},
"git_panel": {
"sort_by_path": false
},
"features": {
"edit_prediction_provider": "copilot"
},
"file_scan_exclusions": [
"**/.svn",
"**/.hg",
"**/.jj",
"**/CVS",
"**/.DS_Store",
"**/Thumbs.db",
"**/.classpath",
"**/.settings"
// Remove the "**/.git" entry from this list!
],
"agent": {
"default_profile": "write",
"default_model": {
"provider": "copilot_chat",
"model": "gpt-5-mini"
},
"model_parameters": []
},
"inlay_hints": {
"enabled": true
},
"lsp": {
// other lsp settings
"vtsls": {
"settings": {
// Your base JS & TS settings
// https://zed.dev/docs/languages/typescript#large-projects
// Your vtsls specific settings
"vtsls": {
"tsserver": {
"globalPlugins": [
{
"name": "@vue/typescript-plugin",
"location": "/opt/homebrew/lib/node_modules",
"enableForWorkspaceTypeScriptVersions": true
}
]
}
}
}
}
},
"preferred_line_length": 120,
"soft_wrap": "preferred_line_length",
"base_keymap": "JetBrains",
"icon_theme": {
"mode": "system",
"light": "Zed (Default)",
"dark": "JetBrains New UI Icons (Dark)"
},
"ui_font_size": 14.3,
"ui_font_family": "JetBrains Mono",
"buffer_font_size": 13,
"buffer_font_family": "JetBrains Mono",
"buffer_line_height": {
"custom": 1.45
},
"theme": {
"mode": "system",
"light": "Ayu Light",
"dark": "JetBrains New Dark"
},
"theme_overrides": {
"JetBrains New Dark": {
"editor.indent_guide": "#2a2d31ff",
"editor.indent_guide_active": "#404149ff",
"created": "#e7968bff",
"ignored": "#FFFFFF3F",
"text.muted": "#FFFFFFA0"
}
},
"auto_install_extensions": {
"astro": true,
"csv": true,
"docker-compose": true,
"dockerfile": true,
"env": true,
"fish": true,
"git-firefly": true,
"github-theme": true,
"go-snippets": true,
"golangci-lint": true,
"gosum": true,
"graphql": true,
"html": true,
"ini": true,
"intellij-newui-theme": true,
"jetbrains-new-ui-icons": true,
"json5": true,
"lua": true,
"make": true,
"nginx": true,
"proto": true,
"scss": true,
"sql": true,
"terraform": true,
"ultimate-dark-neo": true,
"vue": true,
"vue-snippets": true
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment