Skip to content

Instantly share code, notes, and snippets.

@samuelgoto
Created May 7, 2019 16:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save samuelgoto/5437cdf2288952cd6f6e8f9f1b8876d6 to your computer and use it in GitHub Desktop.
Save samuelgoto/5437cdf2288952cd6f6e8f9f1b8876d6 to your computer and use it in GitHub Desktop.

Sam's vscode configs:

tasks

{
  "version": "2.0.0",
  "runner": "terminal",
  "echoCommand": true,
  "tasks": [
    {
      "label": "build chrome",
      "command": "autoninja",
      "args": [
        "-C${workspaceRoot}/out/Linux",
        "chrome"
      ],
      "problemMatcher": []
    },
    {
      "label": "build android",
      "command": "autoninja",
      "args": [
        "-C${workspaceRoot}/out/Android",
        "chrome_public_apk"
      ],
      "problemMatcher": []
    },
    {
      "label": "run android",
      "command": "out/Android/bin/chrome_public_apk",
      "args": [
        "run"
      ],
      "dependsOn": [
        "build android"
      ],
      "problemMatcher": []
    },
    {
      "label": "build content_shell",
      "command": "autoninja",
      "args": [
        "-C${workspaceRoot}/out/Android",
        "content/shell:content_shell"
      ],
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "build components_browsertests",
      "command": "autoninja",
      "args": [
        "-C${workspaceRoot}/out/Linux",
        "components_browsertests"
      ],
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "build blink_tests",
      "command": "autoninja",
      "args": [
        "-C${workspaceRoot}/out/Linux",
        "blink_tests"
      ],
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "2-build_chrome_release",
      "command": "ninja -C out/Release -j 2000 chrome",
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "3-build_all_debug",
      "command": "ninja -C out/Android -j 2000",
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "4-build_all_release",
      "command": "ninja -C out/Release -j 2000",
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "5-build_test_debug",
      "command": "ninja -C out/Android -j 2000 unit_tests components_unittests browser_tests",
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "6-build_current_file",
      "command": "compile_single_file --build-dir=out/Android --file-path=${file}",
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "build content_unittests",
      "command": "ninja",
      "args": [
        "-C${workspaceRoot}/out/Linux",
        "-j 2000",
        "content/test:content_unittests"
      ],
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "build components_unittests",
      "command": "ninja",
      "args": [
        "-C${workspaceRoot}/out/Linux",
        "-j 2000",
        "components_unittests"
      ],
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "run components_browsertests",
      "command": "${workspaceRoot}/out/Linux/components_browsertests",
      "dependsOn": [
        "build components_browsertests"
      ],
      "args": [
        "--gtest_filter=SmsTest.*"
      ],
      "problemMatcher": []
    },
    {
      "label": "run components_unittests",
      "command": "${workspaceRoot}/out/Linux/components_unittests",
      "dependsOn": [
        "build components_unittests"
      ],
      "args": [
        "--gtest_filter=SmsManagerTest.*"
      ],
      "problemMatcher": []
    },
    {
      "label": "run content_unittests",
      "command": "${workspaceRoot}/out/Linux/content_unittests",
      "dependsOn": [
        "build content_unittests"
      ],
      "args": [
        "--gtest_filter=SmsManagerTest.*"
      ],
      "problemMatcher": [
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*):(\\d+):(\\d+):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
          }
        },
        {
          "owner": "cpp",
          "fileLocation": [
            "relative",
            "${workspaceRoot}"
          ],
          "pattern": {
            "regexp": "^../../(.*?):(.*):\\s+(warning|\\w*\\s?error):\\s+(.*)$",
            "file": 1,
            "severity": 3,
            "message": 4
          }
        }
      ]
    },
    {
      "label": "run content_shell",
      "command": "${workspaceRoot}/out/Android/content_shell",
      "dependsOn": [
        "build content_shell"
      ],
      "args": [
        "--enable-experimental-web-platform-features",
        "--enable-blink-features=IdleDetection",
        "http://localhost:8001/idle-detection/idle-manual.html"
      ],
      "problemMatcher": []
    },
    {
      "label": "run web_tests",
      "command": "./third_party/blink/tools/run_web_tests.py",
      "args": [
        "--target",
        "Linux",
        "external/wpt/sms/"
      ],
      "dependsOn": [
        "build blink_tests"
      ],
      "problemMatcher": []
    },
    {
      "label": "run global_interface_listing",
      "command": "./third_party/blink/tools/run_web_tests.py",
      "args": [
        "--target",
        "Linux",
        "webexposed/global-interface-listing.html"
      ],
      "dependsOn": [
        "build blink_tests"
      ],
      "problemMatcher": []
    },
    {
      "label": "run server",
      "command": "python",
      "args": [
        "third_party/blink/tools/run_blink_wptserve.py",
        "-t",
        "Linux"
      ],
      "dependsOn": [
        "build blink_tests"
      ],
      "problemMatcher": []
    },
    {
      "label": "run chrome",
      "command": "./out/Linux/chrome",
      "args": [
        "--enable-blink-features=MojoJS,MojoJSTest",
        "--enable-experimental-web-platform-features",
        "http://localhost:8081/idle-detection/interceptor.https.html"
      ],
      "dependsOn": [
        "build chrome"
      ],
      "problemMatcher": []
    }
  ]
}

keybindings

// Place your key bindings in this file to overwrite the defaults
[
  // Run the task marked as "isTestCommand": true, see tasks.json.
  { "key": "ctrl+shift+t",       "command": "workbench.action.tasks.test" },
  // Jump to the previous change in the built-in diff tool.
  { "key": "ctrl+up",            "command": "workbench.action.compareEditor.previousChange" },
  // Jump to the next change in the built-in diff tool.
  { "key": "ctrl+down",          "command": "workbench.action.compareEditor.nextChange" },
  // Jump to previous location in the editor (useful to get back from viewing a symbol definition).
  { "key": "alt+left",           "command": "workbench.action.navigateBack" },
  // Jump to next location in the editor.
  { "key": "alt+right",          "command": "workbench.action.navigateForward" },
  // Get a blame view of the current file. Requires the annotator extension.
  { "key": "ctrl+alt+a",         "command": "annotator.annotate" },
  // Toggle header/source with the Toggle Header/Source extension (overrides the
  // key binding from the C/C++ extension as I found it to be slow).
  { "key": "alt+o",              "command": "togglehs.toggleHS" },
  // Quickly run a task, see tasks.json. Since we named them 1-, 2- etc., it is
  // suffucient to press the corresponding number.
  { "key": "ctrl+r",             "command": "workbench.action.tasks.runTask",
                                    "when": "!inDebugMode" },
  // The following keybindings are useful on laptops with small keyboards such as
  // Chromebooks that don't provide all keys.
  { "key": "shift+alt+down",     "command": "cursorColumnSelectDown",
                                    "when": "editorTextFocus" },
  { "key": "shift+alt+left",     "command": "cursorColumnSelectLeft",
                                    "when": "editorTextFocus" },
  { "key": "shift+alt+pagedown", "command": "cursorColumnSelectPageDown",
                                    "when": "editorTextFocus" },
  { "key": "shift+alt+pageup",   "command": "cursorColumnSelectPageUp",
                                    "when": "editorTextFocus" },
  { "key": "shift+alt+right",    "command": "cursorColumnSelectRight",
                                    "when": "editorTextFocus" },
  { "key": "shift+alt+up",       "command": "cursorColumnSelectUp",
                                    "when": "editorTextFocus" },
  { "key": "alt+down",           "command": "scrollPageDown",
                                    "when": "editorTextFocus" },
  { "key": "alt+up",             "command": "scrollPageUp",
                                    "when": "editorTextFocus" },
  { "key": "alt+backspace",      "command": "deleteRight",
                                    "when": "editorTextFocus && !editorReadonly" },
  { "key": "ctrl+right",         "command": "cursorEnd",
                                    "when": "editorTextFocus" },
  { "key": "ctrl+shift+right",   "command": "cursorEndSelect",
                                    "when": "editorTextFocus" },
  { "key": "ctrl+left",          "command": "cursorHome",
                                    "when": "editorTextFocus" },
  { "key": "ctrl+shift+left",    "command": "cursorHomeSelect",
                                    "when": "editorTextFocus" },
  ]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment