dotfiles/home-manager/modules/vscode.nix

62 lines
2.3 KiB
Nix
Raw Normal View History

2024-10-06 15:25:05 -05:00
{
pkgs,
lib,
...
}: {
programs = {
vscode = {
enable = true;
package = pkgs.vscode;
2024-11-20 15:46:18 -06:00
keybindings = [
{
key = "ctrl+shift+s";
command = "editor.action.insertCursorAtEndOfEachLineSelected";
when = "textInputFocus";
}
{
key = "ctrl+shift+a";
command = "editor.action.quickFix";
when = "editorHasCodeActionsProvider && textInputFocus && !editorReadonly";
}
{
key = "ctrl+shift+f";
command = "editor.action.formatDocument";
when = "editorHasDocumentFormattingProvider && editorTextFocus && !editorReadonly && !inCompositeEditor";
}
];
extensions = builtins.attrValues {
inherit (pkgs.vscode-extensions.catppuccin) catppuccin-vsc;
inherit (pkgs.vscode-extensions.eamodio) gitlens;
2024-11-10 23:40:39 -06:00
inherit (pkgs.vscode-extensions.elmtooling) elm-ls-vscode;
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;
};
2024-10-06 15:25:05 -05:00
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;
2024-11-10 23:40:39 -06:00
"elmLS.disableElmLSDiagnostics" = true;
"elmLS.elmReviewDiagnostics" = "warning";
2024-10-06 15:25:05 -05:00
};
};
};
}