{ pkgs, lib, ... }: let plugins = (import ./extensions.lock) { pkgs = pkgs; lib = lib; }; in { imports = [ ./javascript.nix ./markdown.nix ./nix.nix ]; programs.vscode = { enable = true; package = pkgs.vscodium; enableUpdateCheck = false; enableExtensionUpdateCheck = false; extensions = with plugins; [ # General extensions ## Code Completion github.copilot github.copilot-chat ## Development Environment ms-toolsai.jupyter ms-vscode-remote.remote-containers ## Error Checking usernamehw.errorlens ## Export and Visualisation ibm.output-colorizer nobuhito.printcode pnp.polacode ## Git lamartire.git-indicators mhutchie.git-graph ## Miscelaneous britesnow.vscode-toggle-quotes mrmlnc.vscode-duplicate qcz.text-power-tools # Language extensions ## CSV mechatroner.rainbow-csv ## Python ms-python.python ## Rust language extensions rust-lang.rust-analyzer serayuzgur.crates tamasfe.even-better-toml vadimcn.vscode-lldb ## SVG jock.svg ## Tex james-yu.latex-workshop ]; userSettings = { "editor.linkedEditing" = true; "window.menuBarVisibility" = "toggle"; "github.copilot.editor.enableAutoCompletions" = true; }; }; }