DEV Community

loading...

My ultimate VSCode configuration

vaidhyanathan
Coder, solution and framework designer.
・2 min read

I used to love vim a lot but now a days I switched to VSCode because of the delicate balance between the UX and plugins.

The following is my settings.json file. You can probably use the same too.

Please do add your configuration too

Disabled Minimap - since we are writing modular code there is no need for this.

"editor.minimap.enabled": false

Autosave Enabled - AutoSave enabled so that there is no need for cmd+s always

    "files.autoSave": "afterDelay",
    "files.autoSaveDelay": 5000,

Exclusion - These are the large files and folders which will make VSCode cry . Please do add the same to your configuration also.

    "files.watcherExclude": {
        "**/.git/objects/**": true,
        "**/.git/subtree-cache/**": true,
        "**/node_modules/**": true,
        "**/tmp/**": true,
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/CVS": true,
        "**/.DS_Store": true,
        "**/node_modules": true,
        "**/bower_components": true,
        "**/dist/**": true,
        "**/log/**": true,
        "**/logs/**": true,
        "**/.fdk/**": true
    },
    "files.exclude": {
        "**/.git/objects/**": true,
        "**/.git/subtree-cache/**": true,
        "**/node_modules/**": true,
        "**/tmp/**": true,
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/CVS": true,
        "**/.DS_Store": true,
        "**/node_modules": true,
        "**/bower_components": true,
        "**/dist/**": true,
        "**/log/**": true,
        "**/.fdk/**": true
    },
    "search.exclude": {
        "**/.git/objects/**": true,
        "**/.git/subtree-cache/**": true,
        "**/node_modules/**": true,
        "**/tmp/**": true,
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/CVS": true,
        "**/.DS_Store": true,
        "**/node_modules": true,
        "**/bower_components": true,
        "**/dist/**": true,
        "**/log/**": true
    },

Tab Size - We can still be friends with 2 spaces for tab.Change this based on your source code.

"editor.tabSize": 2,

Final Json for VSCode


{
    "ruby.intellisense": "rubyLocate",
    "gitlens.advanced.messages": {
        "suppressShowKeyBindingsNotice": true
    },
    "workbench.statusBar.feedback.visible": false,
    "search.location": "sidebar",
    "window.zoomLevel": 0,
    "workbench.iconTheme": "vscode-icons",
    "files.watcherExclude": {
        "**/.git/objects/**": true,
        "**/.git/subtree-cache/**": true,
        "**/node_modules/**": true,
        "**/tmp/**": true,
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/CVS": true,
        "**/.DS_Store": true,
        "**/node_modules": true,
        "**/bower_components": true,
        "**/dist/**": true,
        "**/log/**": true,
        "**/logs/**": true,
        "**/.fdk/**": true
    },
    "files.exclude": {
        "**/.git/objects/**": true,
        "**/.git/subtree-cache/**": true,
        "**/node_modules/**": true,
        "**/tmp/**": true,
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/CVS": true,
        "**/.DS_Store": true,
        "**/node_modules": true,
        "**/bower_components": true,
        "**/dist/**": true,
        "**/log/**": true,
        "**/.fdk/**": true
    },
    "search.exclude": {
        "**/.git/objects/**": true,
        "**/.git/subtree-cache/**": true,
        "**/node_modules/**": true,
        "**/tmp/**": true,
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/CVS": true,
        "**/.DS_Store": true,
        "**/node_modules": true,
        "**/bower_components": true,
        "**/dist/**": true,
        "**/log/**": true
    },
    "editor.fontSize": 16,
    "editor.tabSize": 2,
    "emmet.includeLanguages": {
        "html": "html",
        "javascript": "javascriptreact"
    },
    "files.autoSave": "afterDelay",
    "files.autoSaveDelay": 5000,
    "terminal.external.osxExec": "iTerm.app",
    "terminal.integrated.shell.osx": "zsh",
    "editor.wordWrap": "on",
    "editor.formatOnSave": true,
    "editor.formatOnPaste": true,
    "editor.minimap.enabled": false,
    "editor.fontLigatures": true,
    "workbench.editor.highlightModifiedTabs": true,
    "explorer.sortOrder": "modified",
    "files.trimFinalNewlines": true
}

Discussion (6)

Collapse
moopet profile image
Ben Sinclair

I used to love vim a lot but now a days I switched to VSCode because of its minimal implementation and plugins.

I'm not sure I follow you on this. How is VSCode more "minimal" than Vim?

since we are writing modular code

We are? We're lucky :P

I don't think I'd want autosave enabled in my VSCode because VSCode doesn't seem to be very good at having a persistent undo like Vim. I'd worry that I'd lose work.

Collapse
vaidhyanathan93 profile image
vaidhyanathan Author

I wanted to put this way
VSCode is having delicate balance between UX, Plugins and customisation.

Corrected :)

Collapse
puritanic profile image
Darkø Tasevski • Edited

You are missing "Highly opinionated" in Ulitmate VSCode Configuration title :) Also, you have a typo in it.

Collapse
vaidhyanathan93 profile image
vaidhyanathan Author

Corrected :) Thanks

Collapse
vladimir_dev profile image
vladimir.dev

Nice. I wouldn't use all of them probably, but it's good to know they're there.

Collapse
rediffusion profile image
rediffusion

Too simple.