diff --git a/apps/gui/zed.nix b/apps/gui/zed.nix index 6f52f48c43af68996748c0f9af98e75770860ff4..d6b5ba2a0836dedf78083f6eab2ef0e79d5456a3 100644 --- a/apps/gui/zed.nix +++ b/apps/gui/zed.nix @@ -1,115 +1,26 @@ { pkgs, ... }: -let - zed-fhs = pkgs.buildFHSUserEnv { - name = "zed"; - targetPkgs = pkgs: [ pkgs.zed-editor ]; - runScript = "zed"; - }; -in { - home.packages = [ zed-fhs ]; - xdg.configFile = { - "zed/settings.json".text = builtins.toJSON { - buffer_font_family = "Monaspace Neon"; - buffer_font_size = 16; - soft_wrap = "editor_width"; - telemetry = { - diagnostics = false; - metrics = false; + home.packages = [ pkgs.zed-editor ]; + xdg.configFile."zed/settings.json".text = builtins.toJSON { + buffer_font_family = "Monaspace Neon"; + buffer_font_size = 16; + soft_wrap = "editor_width"; + telemetry = { + diagnostics = false; + metrics = false; + }; + terminal = { + font_family = "Monaspace Neon"; + shell = { + program = "nu"; }; - terminal = { - font_family = "Monaspace Neon"; - shell = { - program = "nu"; - }; - }; - theme = "Catppuccin Mocha"; - ui_font_size = 16; - vim_mode = true; - relative_line_numbers = true; - vim = { - use_system_clipboard = "always"; - use_multiline_find = true; - }; - tab_bar.show = false; - toolbar = { - breadcrumbs = true; - quick_actions = false; - }; - assistant = { - version = "1"; - provider.name = "anthropic"; - }; + }; + theme = "Catppuccin Mocha"; + ui_font_size = 16; + vim_mode = false; + assistant = { + version = "1"; + provider.name = "anthropic"; }; - "zed/keymap.json".text = - let - leader = "space"; - in - builtins.toJSON [ - { - "context" = "Dock || Terminal || Editor"; - "bindings" = { - "ctrl-h" = [ - "workspace::ActivatePaneInDirection" - "Left" - ]; - "ctrl-l" = [ - "workspace::ActivatePaneInDirection" - "Right" - ]; - "ctrl-k" = [ - "workspace::ActivatePaneInDirection" - "Up" - ]; - "ctrl-j" = [ - "workspace::ActivatePaneInDirection" - "Down" - ]; - }; - } - { - "context" = "Editor && VimControl && !VimWaiting && !menu"; - "bindings" = { - "${leader} b" = "editor::ToggleGitBlame"; - "${leader} k" = "editor::Hover"; - "${leader} a" = "editor::ToggleCodeActions"; - "${leader} l f" = "editor::Format"; - "${leader} d" = "diagnostics::Deploy"; - "${leader} f" = "file_finder::Toggle"; - "${leader} o" = "tab_switcher::Toggle"; - "${leader} e" = "workspace::ToggleLeftDock"; - "${leader} /" = "workspace::NewSearch"; - "n" = "search::SelectNextMatch"; - "shift-n" = "search::SelectPrevMatch"; - "${leader} t" = "workspace::NewCenterTerminal"; - "${leader} c" = "editor::ToggleComments"; - "${leader} w" = "workspace::Save"; - }; - } - { - "context" = "Editor && vim_mode == visual && !VimWaiting && !VimObject"; - "bindings" = { - "shift-j" = "editor::MoveLineDown"; - "shift-k" = "editor::MoveLineUp"; - }; - } - { - "context" = "Workspace"; - "bindings" = { - "ctrl-z" = "workspace::ToggleZoom"; - "cmd-k" = [ - "projects::OpenRecent" - { "create_new_window" = false; } - ]; - "ctrl-x" = "tab_switcher::CloseSelectedItem"; - }; - } - { - "context" = "Terminal"; - "bindings" = { - "cmd-t" = "workspace::NewTerminal"; - }; - } - ]; }; }