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
Vyper
Language support
LLL
Language support
General Purpose
Efficiency
Review
⚙ 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?
{
"terminal.integrated.scrollback": 6000,
}
Selection Highlighting
- 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