69 lines
3 KiB
Nix
69 lines
3 KiB
Nix
{ pkgs, ... }: {
|
||
programs.vscode = {
|
||
enable = true;
|
||
mutableExtensionsDir = false;
|
||
extensions = [
|
||
(pkgs.callPackage ../../../packages/rust-analyzer.nix { })
|
||
] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace (import ./extensions.nix).extensions;
|
||
userSettings = {
|
||
"diffEditor.codeLens" = true;
|
||
"editor.bracketPairColorization.enabled" = true;
|
||
"editor.cursorSmoothCaretAnimation" = true;
|
||
"editor.cursorSurroundingLines" = 3;
|
||
"editor.foldingImportsByDefault" = true;
|
||
"editor.fontFamily" = "'FiraCode Nerd Font Mono', 'Noto Sans Mono CJK', monospace";
|
||
"editor.fontLigatures" = true;
|
||
"editor.formatOnPaste" = true;
|
||
"editor.formatOnSave" = true;
|
||
"editor.formatOnType" = true;
|
||
"editor.guides.bracketPairs" = true;
|
||
"editor.inlineSuggest.enabled" = true;
|
||
"editor.renderWhitespace" = "all";
|
||
"editor.smoothScrolling" = true;
|
||
"editor.suggest.localityBonus" = true;
|
||
"editor.suggest.preview" = true;
|
||
"editor.suggest.shareSuggestSelections" = true;
|
||
"editor.tabCompletion" = "on";
|
||
"editor.tabSize" = 2;
|
||
"editor.multiCursorModifier" = "ctrlCmd"; # Multi-Cursor won’t work otherwise
|
||
"explorer.experimental.fileNesting.enabled" = true;
|
||
"files.insertFinalNewline" = true;
|
||
"files.trimFinalNewlines" = true;
|
||
"files.trimTrailingWhitespace" = true;
|
||
"git.autoStash" = true;
|
||
"git.autofetch" = true;
|
||
"git.enableCommitSigning" = true;
|
||
"git.enableSmartCommit" = true;
|
||
"git.fetchOnPull" = true;
|
||
"git.rebaseWhenSync" = true;
|
||
"nix.enableLanguageServer" = true;
|
||
"nix.serverPath" = "${pkgs.rnix-lsp}/bin/rnix-lsp";
|
||
"search.smartCase" = true;
|
||
"telemetry.telemetryLevel" = "off";
|
||
"update.mode" = "none";
|
||
"workbench.colorTheme" = "Monokai";
|
||
"workbench.commandPalette.preserveInput" = true;
|
||
"workbench.iconTheme" = "material-icon-theme";
|
||
"workbench.list.smoothScrolling" = true;
|
||
"C_Cpp.intelliSenseEngine" = "Disabled";
|
||
"C_Cpp.autocomplete" = "Disabled";
|
||
"C_Cpp.errorSquiggles" = "Disabled";
|
||
"clang-tidy.executable" = "${pkgs.llvmPackages_latest.clang-unwrapped}/bin/clang-tidy";
|
||
"cmake.cmakePath" = "${pkgs.cmake}/bin/cmake";
|
||
"github.copilot.enable" = { "*" = true; };
|
||
"crates.listPreReleases" = true;
|
||
"css.format.spaceAroundSelectorSeparator" = true;
|
||
"less.format.spaceAroundSelectorSeparator" = true;
|
||
"scss.format.spaceAroundSelectorSeparator" = true;
|
||
"vscode-dhall-lsp-server.executable" = "${pkgs.dhall-lsp-server}/bin/dhall-lsp-server";
|
||
"doxdocgen.generic.useGitUserEmail" = true;
|
||
"doxdocgen.generic.useGitUserName" = true;
|
||
"git.confirmSync" = false;
|
||
"clangd.path" = "${pkgs.llvmPackages_latest.clang-unwrapped}/bin/clangd";
|
||
"verilog.ctags.path" = "${pkgs.ctags}/bin/ctags";
|
||
"verilog.languageServer" = "${pkgs.svls}/bin/svls";
|
||
"verilog.linting.linter" = "${pkgs.verilator}/bin/verilator";
|
||
"redhat.telemetry.enabled" = false; # FUCK OFF
|
||
};
|
||
};
|
||
}
|