nix-config/modules/home/vscode/default.nix
2024-10-01 16:10:54 -04:00

64 lines
1.6 KiB
Nix

{pkgs, ...}: {
programs.vscode = {
enable = true;
package =
if pkgs.hostPlatform.isDarwin
then pkgs.vscode
else 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
];
userSettings = {
"files.autoSave" = "afterDelay";
"editor.fontFamily" = "Maple Mono NF";
"editor.fontLigatures" = true;
"editor.fontSize" =
if pkgs.hostPlatform.isDarwin
then 14
else 16;
"editor.formatOnSave" = true;
"editor.minimap.enabled" = false;
"git.autofetch" = true;
"git.confirmSync" = false;
"git.enableSmartCommit" = true;
"vim.camelCaseMotion.enable" = true;
"vim.smartRelativeLine" = false;
"vim.sneak" = true;
"vim.useSystemClipboard" = true;
"vim.normalModeKeyBindingsNonRecursive" = [
{
before = ["K"];
commands = ["editor.action.showHover"];
silent = true;
}
];
"mesonbuild.downloadLanguageServer" = true;
"terminal.integrated.fontSize" =
if pkgs.hostPlatform.isDarwin
then 14
else 16;
"workbench.colorTheme" = "Catppuccin Mocha";
"workbench.iconTheme" = "catppuccin-mocha";
"window.menuBarVisibility" = "toggle";
"window.titleBarStyle" = "custom";
};
};
}