{pkgs, ...}: { programs.vscode = { enable = true; package = pkgs.vscode.fhsWithPackages (ps: with ps; [rustup zlib openssl.dev pkg-config]); extensions = with pkgs.vscode-extensions; [ bbenoist.nix catppuccin.catppuccin-vsc catppuccin.catppuccin-vsc-icons llvm-vs-code-extensions.vscode-clangd kamadorueda.alejandra mkhl.direnv usernamehw.errorlens vadimcn.vscode-lldb vscodevim.vim ]; keybindings = [ { key = "shift+k"; command = "editor.action.showHover"; when = "editorTextFocus"; } { key = "ctrl+k ctrl+i"; command = "-editor.action.showHover"; when = "editorTextFocus"; } ]; userSettings = { "files.autoSave" = "afterDelay"; "editor.fontFamily" = "Maple Mono NF"; "editor.fontLigatures" = true; "editor.fontSize" = 16; "editor.formatOnSave" = true; "editor.minimap.enabled" = false; "vim.camelCaseMotion.enable" = true; "vim.smartRelativeLine" = false; "vim.sneak" = true; "vim.useSystemClipboard" = true; "workbench.colorTheme" = "Catppuccin Mocha"; "workbench.iconTheme" = "catppuccin-mocha"; "window.menuBarVisibility" = "toggle"; "window.titleBarStyle" = "custom"; }; }; }