{
//
// Languages
//
"[html]": {
"editor.defaultFormatter": "vscode.html-language-features"
},
"[javascript]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"[json]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
"[jsonc]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
"[templ]": {
"editor.defaultFormatter": "a-h.templ"
},
"[typescript]": {
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"[typescriptreact]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"emmet.includeLanguages": {
"templ": "html"
},
"go.buildTags": "unit",
"go.toolsManagement.autoUpdate": true,
"gopls": {
// Supported by Catppuccin
"ui.semanticTokens": true,
"build.buildFlags": [
"-tags=unit"
]
},
"javascript.updateImportsOnFileMove.enabled": "always",
"tailwindCSS.includeLanguages": {
"templ": "html"
},
"typescript.updateImportsOnFileMove.enabled": "always",
//
// Remote Settings
//
"dev.containers.dockerPath": "docker",
"dev.containers.executeInWSL": true,
"dotfiles.installCommand": "install.sh",
"dotfiles.repository": "https://github.com/tgrosinger/dotfiles.git",
"dotfiles.targetPath": "~/.dotfiles",
//
// Fonts and Appearance
//
"editor.fontFamily": "JetBrainsMono Nerd Font, JetBrains Mono, 'Courier New', monospace",
"editor.fontLigatures": true,
//
// Theme
//
"editor.semanticHighlighting.enabled": true,
// prevent VSCode from modifying the terminal colors
"terminal.integrated.minimumContrastRatio": 1,
// make the window's titlebar use the workbench colors
"window.titleBarStyle": "custom",
//
// Editor Behavior
//
"diffEditor.experimental.showMoves": true,
"editor.accessibilitySupport": "off",
"editor.formatOnSave": true,
"editor.guides.bracketPairs": "active",
"editor.lineNumbers": "relative",
"editor.linkedEditing": true,
"editor.minimap.enabled": false,
"editor.renderWhitespace": "trailing",
"editor.stickyScroll.enabled": true,
"editor.wordWrap": "off",
"files.associations": {
"*.gohtml": "html"
},
"git.ignoreMissingGitWarning": true,
"githubPullRequests.pullBranch": "never",
"githubPullRequests.terminalLinksHandler": "github",
//
// GitLens
//
"gitlens.advanced.telemetry.enabled": false,
"gitlens.hovers.currentLine.over": "line",
"gitlens.telemetry.enabled": false,
"remote.autoForwardPortsSource": "hybrid",
"remote.containers.dotfiles.installCommand": "install.sh",
"remote.containers.dotfiles.repository": "https://github.com/tgrosinger/dotfiles.git",
"remote.containers.dotfiles.targetPath": "~/.dotfiles",
"scm.workingSets.enabled": true,
"settingsSync.ignoredExtensions": [
"bradlc.vscode-tailwindcss"
],
//
// Telemetry
//
"telemetry.telemetryLevel": "off",
"workbench.enableExperiments": false,
"workbench.settings.enableNaturalLanguageSearch": false,
"extensions.ignoreRecommendations": true,
//
// Vim
//
"vim.leader": " ",
"vim.handleKeys": {
// ctrl-o functionality in the plugin is not very reliable or predictable.
"": false
},
"vim.normalModeKeyBindings": [
{
"before": [
"leader",
"n"
],
"commands": [
"editor.action.rename"
]
},
{
"before": [
"leader",
"s",
"f"
],
"commands": [
"workbench.action.quickOpen"
]
},
{
"before": [
"leader",
"s",
"g"
],
"commands": [
"workbench.action.findInFiles"
]
},
{
"before": [
"leader",
"g",
"r"
],
"commands": [
"editor.action.goToReferences"
]
},
{
"before": [
"leader",
"r",
"n"
],
"commands": [
"editor.action.rename"
]
},
{
"before": [
"leader",
"q"
],
"commands": [
"workbench.actions.view.problems"
]
},
{
"before": [
"leader",
"c",
"a"
],
"commands": [
"editor.action.quickFix"
]
}
],
//
// Window
//
"window.newWindowDimensions": "inherit",
"workbench.colorTheme": "Catppuccin Latte",
"workbench.editor.empty.hint": "hidden",
"workbench.sideBar.location": "right",
"workbench.iconTheme": "catppuccin-latte",
"lazygit-vscode.autoMaximizeWindow": true
}