/vscode-ethereum-security-bundle

A meta-extension bundling marketplace plugins for secure Ethereum smart contract development.

Ethereum Security Bundle for vscode

A meta-extension bundling vscode plugins for Smart Contract Auditors & Developres. This is basically my vscode auditing setup.

📚 Bundled Extensions

Solidity

Language support
Tool integrations

Vyper

Language support

LLL

Language support

General Purpose

Efficiency
Review
Tool integrations

âš™ Tweaks

Cool, you've come this far therefore I expect you're genuinely interested in either the individual extensions or you just installed the one-click bundle :) Either way, you're welcome!

Here's a quick walk-through and some tweaks on how to get the best out of vscode and the extensions.

Note: json settings shown below are meant to be merged into your config.

VSCode

How do I un/install extensionbs?

AppMenu -> Preferences -> Extensions

How do I access vscode and extension settings?

AppMenu -> Preferences -> Settings

How do I disable telemetry in vscode?

  • Open settings.json (via vscode settings)
  • Add this to settings.json:
{
    "telemetry.enableCrashReporter": false,
    "telemetry.enableTelemetry": false,
}

Make vscode auto-save files automatically after a delay

  • It can be annoying that you are editing a file and always have to manually save it for it to be synced to the file-system. The following auto-saves files after a delay automatically.
  • Add this to settings.json:
{
  "files.autoSave": "afterDelay",
}
  • And disable confirmation when deleting
{
  "explorer.confirmDelete": false,
}

How do I extend the terminal scrollback cache?

  • Some tools may produce a large amount of output lines and it can be annoying that the integrated terminal's scrollback is very limited.

  • Add this to settings.json:

{
  "terminal.integrated.scrollback": 6000,
}

Selection Highlighting

image

  • Grey selection highlight
  • Orange selection border for other occurences of the selection in the editor (nice for comparison)
{
  "workbench.colorCustomizations": {
        "editor.selectionBackground": "#977f5746",
        "editor.selectionHighlightBackground": "#cf9b4d28",
        "editor.selectionHighlightBorder":"#ff5e0096"
    },
}

Make vscode diff editor ignore whitespaces by default

  • we don't care too much about whitespaces right now :D
{
  diffEditor.ignoreTrimWhitespace
}

Solidity

Disable the auto-linting

  • Add this to settings.json:
{
  "solidity.enabledSolium": false,
  "solidity.linter": "",
}

Git & Gitlens

  • Gitlens code-lenses can be annoying (inline code actions). Thankfully they can be disabled (together with telemetry. data privacy ftw). We also enable git commit fetching for the git extension:
{
  "gitlens.codeLens.enabled": false,
  "gitlens.advanced.telemetry.enabled": false,
  "git.autofetch": true,
}

âž• More useful extensions

  • Indent-Rainbow
  • Bookmarks
  • Git Graph
  • ES Lint
  • XML Tools
  • Material Icon Theme
  • Markdown All in One

Notes

  • You can uninstall individual extensions at any point.
  • Uninstalling the extension pack will uninstall all the referenced extensions.

Credits

♥ Thanks to the awesome Ethereum community for building all these extensions, you rock!

Release Notes

see CHANGELOG