Skip to content

Instantly share code, notes, and snippets.

@madebylydia
Last active July 28, 2024 21:37
Show Gist options
  • Save madebylydia/277e43296d92b82afa1affff27430a4e to your computer and use it in GitHub Desktop.
Save madebylydia/277e43296d92b82afa1affff27430a4e to your computer and use it in GitHub Desktop.
My Visual Studio Code configuration. Made with great care and love.
[
{
"key": "ctrl+shift+[Quote]",
"command": "workbench.action.terminal.new"
}
]
// Lol, I have no idea why I did this.
{
// Disable auto updates, it should be the package manager's job.
// Edit this line if you don't use a package manage like apt/yum/dnf/brew/choco for VSC.
"update.mode": "none",
// Themes & Icons
/*
If your OS/desktop environment support it well, I'd suggest you to
use auto light/dark theme switching. Should follow OS setting, and
help with eye strain and help with reading in day light. You're
welcome.
*/
"workbench.colorTheme": "Atelier_HeathDark", // The theme to use.
"workbench.iconTheme": "quill-icons", // The icon pack to use.
"breadcrumbs.enabled": true, // The right-just-below opened editors, that indicate file's location & structure
"breadcrumbs.filePath": "on", // You should play with that for your taste
"symbols.hidesExplorerArrows": false,
// Auto-save
"files.autoSaveDelay": 1000,
"files.autoSave": "afterDelay",
"files.autoSaveWorkspaceFilesOnly": true,
// Workbench
// (Editor, tabs, etc.)
"editor.smoothScrolling": true,
"editor.cursorSmoothCaretAnimation": "on", // Smooth animation for the cursor
"workbench.list.smoothScrolling": true, // Same, but for the workbench
// Editor
"editor.semanticHighlighting.enabled": true, // Add a bit more of highlight for supported languages
"editor.stickyScroll.enabled": false, // Stick to the top of the editor elements of your code that represent upper-level snippets
"editor.suggest.matchOnWordStartOnly": true,
"editor.inlineSuggest.fontFamily": "JetBrains Mono", // Font used for inline suggestion. I'd suggest you to look for Github's Monaspace.
"editor.suggest.preview": true,
"editor.suggest.shareSuggestSelections": true,
// Minimap
"editor.minimap.enabled": true,
"editor.minimap.renderCharacters": false,
"editor.minimap.autohide": true,
// Diff editor
"diffEditor.ignoreTrimWhitespace": false,
// Outline (The tab that shows you the definitions in file)
"outline.collapseItems": "alwaysCollapse",
// Fonts
"editor.fontFamily": "'JetBrains Mono', monospace",
"editor.fontWeight": 350,
/*
This font ligature is for Monaspace only.
A few ligatures are not really accurate for certain languages. This should hopefully fix that.
*/
// "editor.fontLigatures": "'calt', 'liga', 'ss01', 'ss02', 'ss03', 'ss04', 'ss05', 'ss06', 'ss08'",
/*
Else, use this:
*/
"editor.fontLigatures": true,
"editor.inlayHints.enabled": "offUnlessPressed", // Usable by pressing Ctrl+Alt. Indicate the type of variables, methods, etc., even if not indicated in the code
"editor.fontSize": 16,
"editor.linkedEditing": true, // For HTML tags, updating both parts of a tag.
"editor.lineHeight": 1.75, // This is a comfortable setting IMO.
// Terminal
/*
⚠️ Those settings are very personal. I won't indicate all setting's purposes.
*/
"terminal.integrated.fontFamily": "'MesloLGS NF', 'DMMono Nerd Font', 'JetBrains Mono', monospace", // You should use your terminal's font setting
"terminal.integrated.profiles.linux": {
"bash": {
"path": "bash",
"icon": "terminal-bash"
},
"zsh": {
"path": "zsh",
"icon": "terminal",
},
},
// Permit intellicode-like suggestion in the terminal.
// I've only seen this take effect in PowerShell however.
"terminal.integrated.shellIntegration.enabled": true,
"terminal.integrated.suggest.enabled": true,
"terminal.integrated.defaultProfile.windows": "Windows PowerShell",
"terminal.integrated.defaultProfile.linux": "zsh",
// Cursor styling.
"terminal.integrated.cursorStyle": "line",
"terminal.integrated.cursorStyleInactive": "none",
"terminal.integrated.gpuAcceleration": "auto",
"terminal.integrated.customGlyphs": true,
"terminal.integrated.stickyScroll.enabled": true,
"terminal.integrated.smoothScrolling": true,
"terminal.integrated.inheritEnv": true,
// Explorer
"explorer.compactFolders": false,
"explorer.openEditors.visible": 11, // No idea.
"explorer.decorations.badges": true,
"explorer.incrementalNaming": "smart", // Basically just add a number at the end of the file instead of " Copy"
"explorer.confirmDragAndDrop": false, // VSC won't ask if you're sure for your drag & drop. Just do it. Lightning fast.
// Files
"files.associations": {
".env*": "dotenv", // I recommend the DotENV extension by mikestead.
"*.cshtml": "html" // Iirc, for CSharp.
},
// Formatter used for format
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[html]": {
"editor.defaultFormatter": "vscode.html-language-features"
},
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
// ========================== Extensions ==========================
// Git / GitLens
"scm.experimental.showHistoryGraph": true,
"git.autofetch": true,
"git.enableSmartCommit": true,
"git.confirmSync": false,
"gitlens.rebaseEditor.ordering": "desc",
"gitlens.codeLens.enabled": false,
"gitlens.currentLine.enabled": false,
// Remote SSH
"remote.SSH.remotePlatform": {
// If you do any remote coding, this will be filled with your SSH hosts.
},
// Copilot
"github.copilot.enable": {
"plaintext": false,
"markdown": false,
"html": true
},
// Spell checker
"cSpell.language": "en",
"cSpell.ignorePaths": [
"package-lock.json",
"node_modules",
"vscode-extension",
".git/objects",
".vscode",
".vscode-insiders",
],
// Settings sync
"settingsSync.ignoredExtensions": [
// Add extensions you'd like to ignore to sync here.
// Useful for device-specific setting.
],
"settingsSync.keybindingsPerPlatform": true,
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment