add zed stuff
This commit is contained in:
parent
581995fd68
commit
1c6d2f5848
|
@ -0,0 +1,119 @@
|
|||
// 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": "Workspace",
|
||||
"bindings": {
|
||||
"f5": "workspace::ToggleLeftDock",
|
||||
"alt-v": "terminal_panel::ToggleFocus",
|
||||
}
|
||||
},
|
||||
{
|
||||
"context": "Picker",
|
||||
"bindings": {
|
||||
"shift-tab": "menu::SelectPrev",
|
||||
"tab": "menu::SelectNext"
|
||||
}
|
||||
},
|
||||
{
|
||||
"context": "BufferSearchBar && !in_replace > Editor",
|
||||
"bindings": {
|
||||
"shift-tab": "menu::SelectPrev",
|
||||
"tab": "menu::SelectNext"
|
||||
}
|
||||
},
|
||||
{
|
||||
"context": "Terminal",
|
||||
"bindings": {
|
||||
"alt-v": "workspace::ToggleBottomDock",
|
||||
"ctrl-w": "terminal::ToggleViMode"
|
||||
}
|
||||
},
|
||||
{
|
||||
"context": "Terminal && VimControl",
|
||||
"bindings": {
|
||||
"tab": "pane::ActivateNextItem",
|
||||
"shift-tab": "pane::ActivatePrevItem",
|
||||
}
|
||||
},
|
||||
{
|
||||
"context": "Editor",
|
||||
"bindings": {
|
||||
"; f s": "outline::Toggle",
|
||||
"; f w": "workspace::NewSearch",
|
||||
"; f t": "theme_selector::Toggle",
|
||||
}
|
||||
},
|
||||
{
|
||||
"context": "VimControl && !menu",
|
||||
"bindings": {
|
||||
"ctrl-h": [
|
||||
"workspace::ActivatePaneInDirection",
|
||||
"Left"
|
||||
],
|
||||
"ctrl-l": [
|
||||
"workspace::ActivatePaneInDirection",
|
||||
"Right"
|
||||
],
|
||||
"ctrl-k": [
|
||||
"workspace::ActivatePaneInDirection",
|
||||
"Up"
|
||||
],
|
||||
"ctrl-j": [
|
||||
"workspace::ActivatePaneInDirection",
|
||||
"Down"
|
||||
],
|
||||
"L": "vim::EndOfLine",
|
||||
"H": "vim::StartOfLine",
|
||||
"left": "editor::TabPrev",
|
||||
"right": "editor::Indent",
|
||||
"space v": "editor::ToggleComments",
|
||||
"alt-c": "pane::CloseActiveItem",
|
||||
"alt-j": "vim::ScrollDown",
|
||||
"alt-k": "vim::ScrollUp",
|
||||
"up": "editor::MoveLineUp",
|
||||
"down": "editor::MoveLineDown",
|
||||
"space c a": "editor::ToggleCodeActions",
|
||||
"space y": "editor::Copy",
|
||||
"space p": "editor::Paste",
|
||||
"tab": "pane::ActivateNextItem",
|
||||
"shift-tab": "pane::ActivatePrevItem",
|
||||
"space \"": "pane::SplitVertical",
|
||||
"space %": "pane::SplitHorizontal",
|
||||
"space c r": "editor::Rename",
|
||||
}
|
||||
},
|
||||
{
|
||||
"context": "vim_mode == normal",
|
||||
"bindings": {
|
||||
"space g g": [
|
||||
"task::Spawn",
|
||||
{
|
||||
"task_name": "lazygit",
|
||||
"reveal_target": "center"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"context": "vim_mode == insert",
|
||||
"bindings": {
|
||||
"ctrl-l": "vim::Right",
|
||||
"ctrl-h": "vim::Left",
|
||||
"ctrl-j": "vim::Down",
|
||||
"ctrl-k": "vim::Up",
|
||||
}
|
||||
},
|
||||
{
|
||||
"context": "Editor && (showing_code_actions || showing_completions)",
|
||||
"bindings": {
|
||||
"shift-tab": "editor::ContextMenuPrev",
|
||||
"tab": "editor::ContextMenuNext",
|
||||
}
|
||||
},
|
||||
]
|
|
@ -0,0 +1,60 @@
|
|||
// 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)
|
||||
{
|
||||
"features": {
|
||||
"inline_completion_provider": "none"
|
||||
},
|
||||
"assistant": {
|
||||
"dock": "right",
|
||||
"version": "2"
|
||||
},
|
||||
"format_on_save": "language_server",
|
||||
"formatter": "language_server",
|
||||
"buffer_font_family": "FiraCode Nerd Font",
|
||||
"tab_size": 4,
|
||||
"vim_mode": true,
|
||||
"ui_font_size": 16,
|
||||
"buffer_font_size": 16,
|
||||
"theme": {
|
||||
"mode": "system",
|
||||
"light": "One Light",
|
||||
"dark": "Tokyo Night"
|
||||
},
|
||||
"lsp": {
|
||||
"rust-analyzer": {
|
||||
"initialization_options": {
|
||||
"check": {
|
||||
"command": "clippy" // rust-analyzer.checkOnSave.command
|
||||
},
|
||||
"checkOnSave": {
|
||||
"command": "clippy" // rust-analyzer.checkOnSave.command
|
||||
},
|
||||
"inlayHints": {
|
||||
"maxLength": null,
|
||||
"lifetimeElisionHints": {
|
||||
"enable": "skip_trivial",
|
||||
"useParameterNames": true
|
||||
},
|
||||
"closureReturnTypeHints": {
|
||||
"enable": "always"
|
||||
}
|
||||
},
|
||||
"diagnostics": {
|
||||
"experimental": {
|
||||
"enable": true
|
||||
}
|
||||
},
|
||||
"cargo": {
|
||||
"features": "all",
|
||||
"allTargets": true
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,66 @@
|
|||
// Static tasks configuration.
|
||||
//
|
||||
// Example:
|
||||
[
|
||||
{
|
||||
"label": "lazygit",
|
||||
"command": "lazygit -p $ZED_WORKTREE_ROOT",
|
||||
"use_new_terminal": true,
|
||||
"reveal": "always",
|
||||
"reveal_target": "center",
|
||||
"hide": "always",
|
||||
},
|
||||
{
|
||||
"label": "btop",
|
||||
"command": "btop",
|
||||
"use_new_terminal": true,
|
||||
"reveal": "always",
|
||||
"reveal_target": "center",
|
||||
"hide": "always",
|
||||
},
|
||||
{
|
||||
"label": "Example task",
|
||||
"command": "for i in {1..5}; do echo \"Hello $i/5\"; sleep 1; done",
|
||||
//"args": [],
|
||||
// Env overrides for the command, will be appended to the terminal's environment from the settings.
|
||||
"env": {
|
||||
"foo": "bar"
|
||||
},
|
||||
// Current working directory to spawn the command into, defaults to current project root.
|
||||
//"cwd": "/path/to/working/directory",
|
||||
// Whether to use a new terminal tab or reuse the existing one to spawn the process, defaults to `false`.
|
||||
"use_new_terminal": false,
|
||||
// Whether to allow multiple instances of the same task to be run, or rather wait for the existing ones to finish, defaults to `false`.
|
||||
"allow_concurrent_runs": false,
|
||||
// What to do with the terminal pane and tab, after the command was started:
|
||||
// * `always` — always show the task's pane, and focus the corresponding tab in it (default)
|
||||
// * `no_focus` — always show the task's pane, add the task's tab in it, but don't focus it
|
||||
// * `never` — do not alter focus, but still add/reuse the task's tab in its pane
|
||||
"reveal": "always",
|
||||
// Where to place the task's terminal item after starting the task:
|
||||
// * `dock` — in the terminal dock, "regular" terminal items' place (default)
|
||||
// * `center` — in the central pane group, "main" editor area
|
||||
"reveal_target": "dock",
|
||||
// What to do with the terminal pane and tab, after the command had finished:
|
||||
// * `never` — Do nothing when the command finishes (default)
|
||||
// * `always` — always hide the terminal tab, hide the pane also if it was the last tab in it
|
||||
// * `on_success` — hide the terminal tab on task success only, otherwise behaves similar to `always`
|
||||
"hide": "never",
|
||||
// Which shell to use when running a task inside the terminal.
|
||||
// May take 3 values:
|
||||
// 1. (default) Use the system's default terminal configuration in /etc/passwd
|
||||
// "shell": "system"
|
||||
// 2. A program:
|
||||
// "shell": {
|
||||
// "program": "sh"
|
||||
// }
|
||||
// 3. A program with arguments:
|
||||
// "shell": {
|
||||
// "with_arguments": {
|
||||
// "program": "/bin/bash",
|
||||
// "args": ["--login"]
|
||||
// }
|
||||
// }
|
||||
"shell": "system"
|
||||
}
|
||||
]
|
Loading…
Reference in New Issue