Skip to content

IDE

VS Code

Extensions to install

  1. TODO Highlight

Settings

A proposed settings.json file for VS Code. These settings are intented to be used for Drupal development.

Put this code into a file called settings.json into .vscode folder in your project's root folder. (Create a folder called .vscode, if it does not exist.)

For Drupal development, please also look at Configuring Visual Studio Code.

{
  "breadcrumbs.enabled": true,
  "css.validate": true,
  "diffEditor.ignoreTrimWhitespace": false,
  "editor.tabSize": 2,
  // "editor.autoIndent": true,
  "editor.insertSpaces": true,
  "editor.formatOnPaste": true,
  "editor.formatOnSave": false,
  "editor.renderWhitespace": "boundary",
  "editor.wordWrapColumn": 80,
  "editor.wordWrap": "off",
  "editor.detectIndentation": true,
  "editor.rulers": [80],
  "todohighlight.include": [
    "**/custom/**/*.js",
    "**/custom/**/*.jsx",
    "**/custom/**/*.ts",
    "**/custom/**/*.tsx",
    "**/custom/**/*.html",
    "**/custom/**/*.php",
    "**/custom/**/*.css",
    "**/custom/**/*.scss",
    "**/drupal/web/modules/custom/**",
    "**/drupal/web/themes/custom/**"
  ],
  "todohighlight.exclude": [
    "**/node_modules/**",
    "**/bower_components/**",
    "**/dist/**",
    "**/build/**",
    "**/.vscode/**",
    "**/.github/**",
    "**/_output/**",
    "**/*.min.*",
    "**/*.map",
    "**/.next/**",
    "**/drupal/web/profiles/contrib/**",
    "**/drupal/web/modules/contrib/**",
    "**/drupal/web/themes/contrib/**",
    "**/drupal/web/themes/custom/**/assets/**"
  ],
  "phpcs.ignorePatterns": [
    "**drupal/web/core**",
    "**drupal/web/modules/contrib/**",
    "**drupal/web/libraries/**",
    "**drupal/web/themes/contrib/**",
    "**drupal/web/profiles/contrib/**"
  ],
  "php.suggest.basic": false,
  "files.associations": {
    "*.inc": "php",
    "*.module": "php",
    "*.install": "php",
    "*.theme": "php",
    "*.tpl.php": "php",
    "*.test": "php",
    "*.php": "php",
    "*.info": "ini"
  },
  "files.trimTrailingWhitespace": true,
  "files.insertFinalNewline": true,
  "html.format.enable": true,
  "html.format.wrapLineLength": 80,
  "telemetry.enableTelemetry": false,
  //  Empty Indent
  "emptyIndent.removeIndent": true,
  "emptyIndent.highlightIndent": false,
  "emptyIndent.highlightColor": "rgba(246,36,89,0.6)",
  //  /* Excluded file types */
  "emptyIndent.exclude": [".md"]
}