nixos-config/home/codium.nix

132 lines
4.1 KiB
Nix
Raw Normal View History

{ pkgs, ... }:
{
2025-01-11 18:53:55 -05:00
programs.vscode = {
enable = true;
package = pkgs.vscodium;
mutableExtensionsDir = false;
profiles.default = {
enableUpdateCheck = false;
enableExtensionUpdateCheck = false;
extensions =
# if unfree
# with pkgs.vscode-marketplace;
with pkgs.open-vsx; [
vscodevim.vim
jnoortheen.nix-ide
github.github-vscode-theme
rust-lang.rust-analyzer
shd101wyy.markdown-preview-enhanced
fwcd.kotlin
2025-02-27 12:46:39 -05:00
alefragnani.bookmarks
tomrijndorp.find-it-faster
streetsidesoftware.code-spell-checker
];
userSettings = {
"workbench.colorTheme" = "GitHub Dark Default";
2025-02-27 12:46:39 -05:00
"files.autoSave" = "onFocusChange";
"nix.enableLanguageServer" = true;
"nix.serverPath" = "nil";
"editor.fontFamily" = "IBM Plex Mono";
2025-02-27 12:46:39 -05:00
"editor.fontSize" = 15;
"window.zoomLevel" = 0.5;
# vim stuff
2025-02-27 12:46:39 -05:00
"vim.leader" = ",";
"vim.normalModeKeyBindings" = [
{
"before" = [ ";" ];
"after" = [ ":" ];
"silent" = true;
}
2025-02-27 12:46:39 -05:00
{
"before" = [ "<leader>" "m" ];
"commands" = [ "bookmarks.toggle" ];
}
{
"before" = [ "<leader>" "l" ];
"commands" = [ "bookmarks.toggleLabeled" ];
}
{
"before" = [ "<leader>" "b" ];
"commands" = [ "bookmarks.list" ];
}
{
"before" = [ "<leader>" "s" ];
"commands" = [ "workbench.action.toggleSidebarVisibility" ];
}
{
"before" = [ "<leader>" "f" "f" ];
"commands" = [ "find-it-faster.findFiles" ];
}
{
"before" = [ "<leader>" "f" "g"];
"commands" = [ "find-it-faster.findWithinFiles"];
}
{
"before" = [ "<leader>" "f" "t"];
"commands" = [ "find-it-faster.findWithinFilesWithType"];
}
# "gd" for definitions is by default
{
"before" = [ "g" "r" ];
"commands" = [ "editor.action.goToReferences" ];
}
# the default is weird when you need to go back within a file
{
"before" = [ "C-o" ];
"commands" = [ "workbench.action.navigateBack" ];
}
{
"before" = [ "C-i" ];
"commands" = [ "workbench.action.navigateForward" ];
}
];
2025-02-27 12:46:39 -05:00
"vim.insertModeKeyBindings" = [
{
"before" = [ "C-a" ];
"commands" = [ "cursorHome" ];
}
{
"before" = [ "C-e" ];
"commands" = [ "cursorEnd" ];
}
];
"vim.visualModeKeyBindings" = [
{
"before" = [ ">" ];
"commands" = [ "editor.action.indentLines" ];
}
{
"before" = [ "<" ];
"commands" = [ "editor.action.outdentLines" ];
}
];
"extensions.experimental.affinity" = {
"vscodevim.vim" = 1;
};
"workbench.startupEditor" = "none";
2025-02-27 12:46:39 -05:00
"git.openRepositoryInParentFolders" = "never";
# terminal stuff
"terminal.integrated.cursorBlinking" = true;
"terminal.integrated.cursorStyle" = "line";
"terminal.integrated.customGlyphs" = false;
"terminal.integrated.env.linux" = {
# https://github.com/tomrijndorp/vscode-finditfaster/issues/112#issuecomment-2475227546
FZF_DEFAULT_OPTS = "--bind ctrl-n:down,ctrl-p:up";
};
# don't let the workbench handle terminal keys like ctrl+n and friends
"terminal.integrated.sendKeybindingsToShell" = true;
"terminal.integrated.allowChords" = false;
"security.promptForLocalFileProtocolHandling" = false;
"security.promptForRemoteFileProtocolHandling" = false;
"markdown-preview-enhanced.previewTheme" = "github-dark.css";
"editor.minimap.enabled" = false;
"explorer.confirmDelete" = false;
"explorer.confirmDragAndDrop" = false;
};
};
2025-01-11 18:53:55 -05:00
};
}