{ pkgs, lib, ... }: { programs = { vscode = { enable = true; package = pkgs.vscode; # keybindings = [ # { # key = "ctrl+c"; # command = "editor.action.clipboardCopyAction"; # when = "textInputFocus"; # } # ]; extensions = builtins.attrValues { inherit (pkgs.vscode-extensions.catppuccin) catppuccin-vsc; inherit (pkgs.vscode-extensions.eamodio) gitlens; inherit (pkgs.vscode-extensions.esbenp) prettier-vscode; inherit (pkgs.vscode-extensions.haskell) haskell; inherit (pkgs.vscode-extensions.james-yu) latex-workshop; inherit (pkgs.vscode-extensions.jnoortheen) nix-ide; inherit (pkgs.vscode-extensions.kamadorueda) alejandra; inherit (pkgs.vscode-extensions.mattn) lisp; inherit (pkgs.vscode-extensions.mkhl) direnv; inherit (pkgs.vscode-extensions.pkief) material-icon-theme; inherit (pkgs.vscode-extensions.streetsidesoftware) code-spell-checker; inherit (pkgs.vscode-extensions.tamasfe) even-better-toml; }; userSettings = { "git.confirmSync" = false; "editor.insertSpaces" = false; "files.autoSave" = "afterDelay"; "git.enableSmartCommit" = true; "nix.enableLanguageServer" = true; "nix.serverPath" = lib.getExe pkgs.nil; "nix.formatterPath" = lib.getExe pkgs.alejandra; "window.menuBarVisibility" = "toggle"; "workbench.iconTheme" = "material-icon-theme"; "workbench.startupEditor" = "none"; "workbench.colorTheme" = "Catppuccin Mocha"; "workbench.statusBar.visible" = false; "editor.multiCursorLimit" = 700000; }; }; }; }