Skip to content

Instantly share code, notes, and snippets.

@lipex360x
Last active March 29, 2024 22:45
Show Gist options
  • Save lipex360x/0b0a4f0ca1e7af057dd24fe9a9251e22 to your computer and use it in GitHub Desktop.
Save lipex360x/0b0a4f0ca1e7af057dd24fe9a9251e22 to your computer and use it in GitHub Desktop.
VSCode Config and Extensions

⚡ Extensions

# DEFAULT
code --install-extension dbaeumer.vscode-eslint
code --install-extension donjayamanne.githistory
code --install-extension eamodio.gitlens
code --install-extension Gruntfuggly.todo-tree
code --install-extension miguelsolorio.fluent-icons
code --install-extension miguelsolorio.min-theme
code --install-extension mikestead.dotenv
code --install-extension naumovs.color-highlight
code --install-extension PKief.material-icon-theme
code --install-extension Prisma.prisma
code --install-extension shd101wyy.markdown-preview-enhanced
code --install-extension styled-components.vscode-styled-components

# PHP
code --install-extension christian-kohler.path-intellisense;
code --install-extension bmewburn.vscode-intelephense-client;
code --install-extension neilbrayfield.php-docblocker;
code --install-extension phproberto.vscode-php-getters-setters;

# MISC
code --install-extension octref.vetur;
code --install-extension sdras.vue-vscode-snippets;
code --install-extension ritwickdey.liveserver;
code --install-extension alexcvzz.vscode-sqlite;

⚡ Export Extensions

  • Unix

code --list-extensions | xargs -L 1 echo code --install-extension > extensions.list

  • Windows

code --list-extensions | % { "code --install-extension $_" }


⚡ VSCode Completely Uninstall

rm -rf $HOME/Library/Application\ Support/Code

rm -rf $HOME/Library/Application\ Support/Code\ -\ Insiders/

rm -rf $HOME/.vscode

rm -rf $HOME/.vscode-insiders/

  • remove vscode from application folder

  • Reinstall

brew install --cask visual-studio-code


⚡ User Settings

{
    "explorer.compactFolders": false,

    "editor.fontFamily": "Fira Code",
    "editor.fontLigatures": true,
    "editor.fontSize": 14,
    "editor.rulers": [100, 160],
    "editor.renderLineHighlight": "gutter",
    "editor.tabSize": 2,
    "editor.minimap.enabled": false,
    "editor.parameterHints.enabled": false,
    "editor.formatOnSave": false,
    "editor.codeActionsOnSave": {
      "source.fixAll.eslint": true
    },

    "workbench.editor.labelFormat": "short",
    "breadcrumbs.enabled": true,

    "material-icon-theme.folders.associations": {
      "infra": "app",
      "entity": "class",
      "entities": "class",
      "schemas": "class",
      "index": "other",
      "show": "review",
      "typeorm": "database",
      "repositories": "mappings",
      "http": "container",
      "migrations": "tools",
      "modules": "components",
      "bosons": "components",
      "quarks": "components",
      "atoms": "components",
      "molecules": "components",
      "organisms": "components",
      "templates": "components",
      "implementations": "core",
      "dtos": "typescript",
      "fakes": "mock",
      "providers":"include",
      "interfaces": "mjml",
      "seeds": "azure-pipelines",
      "coverage": "coverage",
      "factories": "packages",
      "store": "database",
      "logger":"log",
      "useCases":"controller",
      "List": "batch",
      "Create": "utils",
      "Delete": "private",
      "Update": "update"
    },

    "material-icon-theme.files.associations": {
      "ormconfig.json": "database",
      "tsconfig.json": "tune"
    },
    "material-icon-theme.activeIconPack": "nest",
    "workbench.startupEditor": "newUntitledFile",
    "workbench.iconTheme": "material-icon-theme",

    "javascript.suggest.autoImports": true,
    "typescript.suggest.autoImports": true,

    "git.autofetch": true,
    "git.confirmSync": false,
    "git.enableSmartCommit": true,

    "gitlens.codeLens.recentChange.enabled": false,
    "gitlens.codeLens.authors.enabled": false,
    "gitlens.codeLens.enabled": false,
    "gitlens.defaultDateFormat": "DD/MM/YYYY - hh:mm",
    "gitlens.defaultDateStyle": "absolute",
    "gitlens.defaultDateShortFormat": "D MMM YYYY",

    "typescript.updateImportsOnFileMove.enabled": "always",
    "javascript.updateImportsOnFileMove.enabled": "always",

    "workbench.colorTheme": "Min Dark",
    "terminal.integrated.fontSize": 14,
    "extensions.ignoreRecommendations": true,

    "emmet.includeLanguages": {
      "javascript":"javascriptreact"
    },
    "emmet.syntaxProfiles": {
      "javascript":"jsx",
    },

    "liveServer.settings.donotVerifyTags": true,
    "liveServer.settings.donotShowInfoMsg": true,

    "[vue]": {
      "editor.defaultFormatter": "esbenp.prettier-vscode"
    },
    "[json]": {
      "editor.defaultFormatter": "vscode.json-language-features"
    },
    "[javascript]": {
      "editor.defaultFormatter": "esbenp.prettier-vscode"
    },
    "[jsonc]": {
      "editor.defaultFormatter": "esbenp.prettier-vscode"
    },
    "[typescript]": {
      "editor.defaultFormatter": "vscode.typescript-language-features"
    },
    "[typescriptreact]": {
      "editor.defaultFormatter": "vscode.typescript-language-features"
    },
    "[html]": {
      "editor.defaultFormatter": "vscode.html-language-features"
    },
    "editor.cursorBlinking": "expand",
    "workbench.productIconTheme": "fluent-icons",
    "editor.wordWrap": "on",
    "security.workspace.trust.banner": "always",
    "security.workspace.trust.untrustedFiles": "open",
    "editor.bracketPairColorization.enabled": true,
    "files.autoGuessEncoding": true,
    //"git.postCommitCommand": "push",

    "[prisma]": {
      "editor.formatOnSave": true
    },
}

VSCode Snippets for DDD TypeScript Backend

⚡ Snippets Path

%appdata%\Roaming\Code\User\snippets


⚡ Create Snippet

  • VSCode Menu

File > Preferences > User Snippets

{
  "Template Snippets": {
    "prefix": "snippetTemplate",
    "body": [
      "\"${1:SNIPPET_TITLE}\": {",
      "  \"prefix\": \"${2:PREFIX}\",",
      "  \"body\": [",
      "    \"${3:BODY}\"",
      "  ]",
      "},",
      "",
    ]
  },  
}
{
"explorer.compactFolders": false,
"editor.fontFamily": "Fira Code",
"editor.fontLigatures": true,
"editor.fontSize": 14,
"editor.rulers": [120],
"workbench.colorCustomizations": {
"editorRuler.foreground": "#0F3554"
},
"editor.renderLineHighlight": "gutter",
"editor.tabSize": 2,
"editor.minimap.enabled": false,
"editor.parameterHints.enabled": false,
"editor.formatOnSave": false,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"workbench.editor.labelFormat": "short",
"breadcrumbs.enabled": true,
"material-icon-theme.folders.associations": {
"infra": "app",
"entity": "class",
"entities": "class",
"schemas": "class",
"index": "other",
"show": "review",
"typeorm": "database",
"repositories": "mappings",
"http": "container",
"migrations": "tools",
"modules": "components",
"bosons": "components",
"quarks": "components",
"atoms": "components",
"molecules": "components",
"organisms": "components",
"templates": "components",
"implementations": "core",
"dtos": "typescript",
"dto": "Context",
"fakes": "mock",
"providers": "include",
"interfaces": "mjml",
"seeds": "azure-pipelines",
"coverage": "coverage",
"factories": "packages",
"store": "database",
"logger": "log",
"useCases": "controller",
"List": "batch",
"Create": "utils",
"Delete": "private",
"Update": "update"
},
"workbench.startupEditor": "none",
"workbench.iconTheme": "material-icon-theme",
"workbench.productIconTheme": "fluent-icons",
"javascript.suggest.autoImports": true,
"typescript.suggest.autoImports": true,
"git.autofetch": true,
"git.confirmSync": false,
"git.enableSmartCommit": true,
"gitlens.codeLens.recentChange.enabled": false,
"gitlens.codeLens.authors.enabled": false,
"gitlens.codeLens.enabled": false,
"gitlens.defaultDateFormat": "DD/MM/YYYY - hh:mm",
"gitlens.defaultDateStyle": "absolute",
"gitlens.defaultDateShortFormat": "D MMM YYYY",
"typescript.updateImportsOnFileMove.enabled": "always",
"javascript.updateImportsOnFileMove.enabled": "always",
"workbench.colorTheme": "Min Dark",
"terminal.integrated.fontSize": 14,
"extensions.ignoreRecommendations": true,
"emmet.includeLanguages": {
"javascript": "javascriptreact"
},
"emmet.syntaxProfiles": {
"javascript": "jsx"
},
"code-runner.clearPreviousOutput": true,
"liveServer.settings.donotVerifyTags": true,
"liveServer.settings.donotShowInfoMsg": true,
// "vetur.experimental.templateInterpolationService": true,
"[vue]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"[typescriptreact]": {
"editor.defaultFormatter": "vscode.typescript-language-features"
},
"[html]": {
"editor.defaultFormatter": "vscode.html-language-features"
},
"editor.cursorBlinking": "expand",
"editor.wordWrap": "on",
"security.workspace.trust.untrustedFiles": "open",
"bracketPairColorizer.depreciation-notice": false,
"terminal.integrated.defaultProfile.windows": "Git Bash",
"tabnine.experimentalAutoImports": true,
"diffEditor.ignoreTrimWhitespace": false,
"terminal.integrated.env.osx": {},
"console-ninja.featureSet": "Community",
"terminal.integrated.env.windows": {},
"editor.stickyScroll.enabled": false
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment