fix: zed keymaps with nvim

This commit is contained in:
Brian Pooe 2026-03-08 18:15:34 +02:00
parent 4de9fc08ec
commit 8c7e5b3f6e
4 changed files with 161 additions and 172 deletions

View file

@ -35,20 +35,14 @@
]
},
{
"description": "Remap Caps Lock to Ctrl when held, Esc when tapped",
"description": "Remap Caps Lock to Escape",
"manipulators": [
{
"from": {
"key_code": "caps_lock",
"modifiers": { "optional": ["any"] }
},
"to": [
{
"key_code": "left_control",
"lazy": true
}
],
"to_if_alone": [{ "key_code": "escape" }],
"to": [{ "key_code": "escape" }],
"type": "basic"
}
]

View file

@ -40,6 +40,8 @@
"alt-j": "editor::MoveLineDown",
"alt-k": "editor::MoveLineUp",
"space c a": "editor::ToggleCodeActions",
"space g h": "vim::StartOfLine",
"space g l": "vim::EndOfLine",
"space s t": "editor::SortLinesCaseSensitive",
"space ~": "editor::ToggleCase"
}
@ -48,7 +50,10 @@
"context": "Editor && !menu && vim_mode == normal",
"bindings": {
"space space": "tab_switcher::Toggle",
"space tab": "tab_switcher::Toggle",
"space /": "buffer_search::Deploy",
"space +": "vim::Increment",
"space -": "vim::Decrement",
"space b": "workspace::NewFile",
"space c a": "editor::ToggleCodeActions",
"space c f": "editor::Format",
@ -63,11 +68,17 @@
"space d t": "debugger::Stop",
"space d u": "debug_panel::ToggleFocus",
"space e": "project_panel::ToggleFocus",
"space g b": "git::Branch",
"space g c f": "git::FileHistory",
"space g h": "vim::StartOfLine",
"space g l": "vim::EndOfLine",
"space g s": "git::Diff",
"space h": "pane::SplitHorizontal",
"space l g": "git_panel::ToggleFocus",
"space l w": "editor::ToggleSoftWrap",
"space m p": "editor::Format",
"space q": "diagnostics::Deploy",
"space q t": "pane::CloseOtherItems",
"space r n": "editor::Rename",
"space r s": "editor::RestartLanguageServer",
"space s /": "workspace::NewSearch",
@ -89,6 +100,7 @@
"space w j": "workspace::ActivatePaneDown",
"space w k": "workspace::ActivatePaneUp",
"space w l": "workspace::ActivatePaneRight",
"space w p": "workspace::ActivatePreviousPane",
"space x": "pane::CloseActiveItem"
}
}

View file

@ -3,175 +3,158 @@
// For information on how to configure Zed, see the Zed
// documentation: https://zed.dev/docs/configuring-zed
//
// This translates the main Neovim behaviors from `.config/nvim` into
// This translates the main Neovim behaviors from `.config/n into
// the Zed features that have direct equivalents.
{
"telemetry": {
"diagnostics": false,
"metrics": false
},
"vim_mode": true,
"base_keymap": "JetBrains",
"auto_install_extensions": {
"html": true,
"angular": true,
"lua": true,
"sql": true,
"kanagawa-themes": true
},
"icon_theme": {
"mode": "dark",
"light": "Zed (Default)",
"dark": "Zed (Default)"
},
"theme": {
"mode": "system",
"light": "One Light",
"dark": "Kanagawa Dragon"
},
"ui_font_size": 16,
"buffer_font_size": 15,
"gutter": {
"line_numbers": true,
"breakpoints": true,
"folds": true,
"min_line_number_digits": 4
},
"relative_line_numbers": "enabled",
"soft_wrap": "none",
"show_wrap_guides": false,
"tab_size": 4,
"hard_tabs": false,
"vertical_scroll_margin": 4,
"horizontal_scroll_margin": 8,
"use_smartcase_search": true,
"show_whitespaces": "selection",
"hover_popover_delay": 300,
"auto_signature_help": true,
"remove_trailing_whitespace_on_save": true,
"format_on_save": "on",
"diagnostics_max_severity": null,
"diagnostics": {
"inline": {
"enabled": false
}
},
"inlay_hints": {
"enabled": true,
"show_type_hints": true,
"show_parameter_hints": true,
"show_other_hints": true,
"show_background": false
},
"git": {
"git_gutter": "tracked_files",
"inline_blame": {
"enabled": false
}
},
"tabs": {
"file_icons": true,
"git_status": true,
"show_close_button": "always",
"show_diagnostics": "all"
},
"project_panel": {
"default_width": 320,
"git_status": true,
"show_diagnostics": "all",
"hide_hidden": false,
"auto_reveal_entries": true,
"indent_guides": {
"show": "always"
}
},
"toolbar": {
"breadcrumbs": true,
"quick_actions": true,
"selections_menu": true,
"code_actions": true
},
"file_types": {
"Groovy": [
"**/*.pipeline",
"**/*.multibranch"
],
"Terraform": [
"**/*.tfvars"
]
},
"languages": {
"JavaScript": {
"language_servers": [
"typescript-language-server",
"!vtsls",
"..."
]
"telemetry": {
"diagnostics": false,
"metrics": false,
},
"TypeScript": {
"language_servers": [
"typescript-language-server",
"!vtsls",
"..."
]
"vim_mode": true,
"base_keymap": "None",
"auto_install_extensions": {
"html": true,
"angular": true,
"lua": true,
"sql": true,
"kanagawa-themes": true,
},
"TSX": {
"language_servers": [
"typescript-language-server",
"!vtsls",
"..."
]
"icon_theme": {
"mode": "dark",
"light": "Zed (Default)",
"dark": "Zed (Default)",
},
"Lua": {
"formatter": {
"external": {
"command": "stylua",
"arguments": [
"--respect-ignores",
"--stdin-filepath",
"{buffer_path}",
"-"
]
}
}
"theme": {
"mode": "dark",
"light": "Kanagawa Lotus",
"dark": "Kanagawa Dragon",
},
"Python": {
"formatter": {
"external": {
"command": "ruff",
"arguments": [
"format",
"--stdin-filename",
"{buffer_path}",
"-"
]
}
}
"ui_font_size": 16,
"buffer_font_size": 15,
"gutter": {
"line_numbers": true,
"breakpoints": true,
"folds": true,
"min_line_number_digits": 4,
},
"relative_line_numbers": "enabled",
"soft_wrap": "none",
"show_wrap_guides": false,
"tab_size": 4,
"hard_tabs": false,
"vertical_scroll_margin": 4,
"horizontal_scroll_margin": 8,
"use_smartcase_search": true,
"show_whitespaces": "selection",
"hover_popover_delay": 300,
"auto_signature_help": true,
"remove_trailing_whitespace_on_save": true,
"format_on_save": "on",
"diagnostics_max_severity": null,
"diagnostics": {
"inline": {
"enabled": false,
},
},
"inlay_hints": {
"enabled": true,
"show_type_hints": true,
"show_parameter_hints": true,
"show_other_hints": true,
"show_background": false,
},
"git": {
"git_gutter": "tracked_files",
"inline_blame": {
"enabled": false,
},
},
"tabs": {
"file_icons": true,
"git_status": true,
"show_close_button": "always",
"show_diagnostics": "all",
},
"project_panel": {
"default_width": 320,
"git_status": true,
"show_diagnostics": "all",
"hide_hidden": false,
"auto_reveal_entries": true,
"indent_guides": {
"show": "always",
},
},
"toolbar": {
"breadcrumbs": true,
"quick_actions": true,
"selections_menu": true,
"code_actions": true,
},
"file_types": {
"Groovy": ["**/*.pipeline", "**/*.multibranch"],
"Terraform": ["**/*.tfvars"],
},
"languages": {
"JavaScript": {
"language_servers": ["typescript-language-server", "!vtsls", "..."],
},
"TypeScript": {
"language_servers": ["typescript-language-server", "!vtsls", "..."],
},
"TSX": {
"language_servers": ["typescript-language-server", "!vtsls", "..."],
},
"Lua": {
"formatter": {
"external": {
"command": "stylua",
"arguments": [
"--respect-ignores",
"--stdin-filepath",
"{buffer_path}",
"-",
],
},
},
},
"Python": {
"formatter": {
"external": {
"command": "ruff",
"arguments": [
"format",
"--stdin-filename",
"{buffer_path}",
"-",
],
},
},
},
"Shell Script": {
"tab_size": 4,
"hard_tabs": false,
"formatter": {
"external": {
"command": "shfmt",
"arguments": [
"--filename",
"{buffer_path}",
"--indent",
"4",
],
},
},
},
},
"Shell Script": {
"tab_size": 4,
"hard_tabs": false,
"formatter": {
"external": {
"command": "shfmt",
"arguments": [
"--filename",
"{buffer_path}",
"--indent",
"4"
]
}
}
}
}
}