You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

360 lines
7.1 KiB
JSON

{
"workbench.startupEditor": "none",
"workbench.reduceMotion": "on",
"workbench.commandPalette.preserveInput": true,
"files.autoSave": "afterDelay",
"catppuccin.italicComments": false,
"catppuccin.italicKeywords": false,
"catppuccin.accentColor": "pink",
"window.titleBarStyle": "custom",
// Editor
"editor.fontSize": 14,
"editor.fontFamily": "Iosevka Term, Symbols Nerd Font, monospace",
"editor.fontWeight": "bold",
"editor.tabSize": 2,
"editor.lineNumbers": "relative",
"editor.smoothScrolling": true,
"editor.cursorSmoothCaretAnimation": "on",
"editor.mouseWheelZoom": true,
"editor.minimap.autohide": true,
"editor.inlayHints.padding": true,
"editor.acceptSuggestionOnEnter": "smart",
"editor.formatOnSave": false,
"editor.suggest.preview": true,
// Latex
"latex-workshop.latex.autoBuild.run": "onSave",
// Terminal
"terminal.integrated.defaultProfile.linux": "fish",
"terminal.integrated.fontSize": 14,
"terminal.integrated.fontWeight": "bold",
// Nix
"nix.enableLanguageServer": true, // Enable LSP.
"nix.serverPath": "/home/hammy/.nix-profile/bin/nil", // The path to the LSP server executable.
"[nix]": {
"editor.defaultFormatter": "kamadorueda.alejandra",
"editor.formatOnPaste": true,
"editor.formatOnSave": true,
"editor.formatOnType": false
},
"alejandra.program": "/home/hammy/.nix-profile/bin/alejandra",
// Vim
"vim.leader": "<space>",
"vim.easymotion": true,
"vim.easymotionDimBackground": false,
"vim.useSystemClipboard": false,
"vim.hlsearch": true,
"vim.incsearch": true,
"vim.handleKeys": {
"<C-a>": false, // select all
"<C-c>": false, // copy
"<C-x>": false, // cut
"<C-v>": false, // paste
"<C-f>": false // find
},
"vim.useCtrlKeys": true,
"vim.visualModeKeyBindings": [
{
"before": [
">"
],
"commands": [
"editor.action.indentLines"
]
},
{
"before": [
"<"
],
"commands": [
"editor.action.outdentLines"
]
}
],
"vim.normalModeKeyBindingsNonRecursive": [
// Make sure to use VsCode's undo stack -> https://github.com/VSCodeVim/Vim/issues/1490
{
"before": [
"u"
],
"commands": [
"undo"
]
},
{
"before": [
"<C-r>"
],
"commands": [
"redo"
]
},
// Helpful Stuff
{
"before": [
"/"
],
"commands": [
"actions.find"
]
},
{
"before": [
"<CR>"
],
"after": [
"o",
"<ESC>"
]
},
{
"before": [
"0"
],
"after": [
"^"
]
},
{
"before": [
"<C-u>"
],
"after": [
"<C-u>",
"z",
"z"
]
},
{
"before": [
"<C-d>"
],
"after": [
"<C-d>",
"z",
"z"
]
},
{
"before": [
"<leader>",
"q"
],
"commands": [
"workbench.action.closeActiveEditor"
]
},
{
"before": [
"<leader>",
"w"
],
"commands": [
"workbench.action.files.save"
]
},
{
"before": [
"<leader>",
"f",
"f"
],
"commands": [
"workbench.action.quickOpen"
]
},
{
"before": [
"[",
"c"
],
"commands": [
"workbench.action.editor.previousChange"
]
},
{
"before": [
"]",
"c"
],
"commands": [
"workbench.action.editor.nextChange"
]
},
{
"before": [
"[",
"d"
],
"commands": [
"editor.action.marker.prev"
]
},
{
"before": [
"]",
"d"
],
"commands": [
"editor.action.marker.next"
]
},
{
"before": [
"<leader>",
"a"
],
"commands": [
"workbench.action.showCommands"
]
},
// EasyMotion
{
"before": [
"s"
],
"after": [
"<leader>",
"<leader>"
]
},
// Git
{
"before": [
"<leader>",
"g",
"g"
],
"commands": [
"workbench.view.scm"
]
},
{
"before": [
"<leader>",
"g",
"h"
],
"commands": [
"toggle.diff.renderSideBySide"
]
},
{
"before": [
"<leader>",
"g",
"p"
],
"commands": [
"git.openChange"
]
},
// LSP
{
"before": [
"<leader>",
"l",
"f"
],
"commands": [
"editor.action.formatDocument"
]
},
{
"before": [
"<leader>",
"l",
"r"
],
"commands": [
"editor.action.rename"
]
},
{
"before": [
"<leader>",
"l",
"a"
],
"commands": [
"editor.action.quickFix"
]
},
// Tabs
{
"before": [
"<leader>",
"o"
],
"commands": [
"workbench.action.closeOtherEditors"
]
}
],
"[python]": {
"editor.formatOnType": false,
"editor.defaultFormatter": "ms-python.black-formatter"
},
"[typescript]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"[markdown]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"git.autofetch": true,
"redhat.telemetry.enabled": false,
"[yaml]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
"explorer.confirmDragAndDrop": false,
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"git.confirmSync": false,
"diffEditor.ignoreTrimWhitespace": false,
"[scss]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"editor.inlineSuggest.enabled": true,
"github.copilot.enable": {
"*": true,
"plaintext": false,
"markdown": true,
"scminput": false
},
"rust-analyzer.check.command": "clippy",
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescriptreact]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"typescript.updateImportsOnFileMove.enabled": "always",
"terminal.integrated.persistentSessionScrollback": 10000,
"terminal.integrated.scrollback": 10000,
"terminal.external.linuxExec": "WezTerm",
"editor.wordWrap": "on",
"window.zoomLevel": 1,
"files.autoSaveDelay": 100,
"terminal.integrated.smoothScrolling": true,
"explorer.confirmDelete": false,
"workbench.iconTheme": "catppuccin-latte",
"workbench.colorTheme": "Catppuccin Latte",
"[mdx]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[astro]": {
"editor.defaultFormatter": "astro-build.astro-vscode"
},
"diffEditor.renderSideBySide": false,
"github.copilot.editor.enableAutoCompletions": true
}