Skip to content

Commit

Permalink
Merge pull request #3 from scout119/dev
Browse files Browse the repository at this point in the history
Major rework for v1.0.0
  • Loading branch information
scout119 authored Apr 6, 2018
2 parents 4991310 + 1a1d4de commit 187cab7
Show file tree
Hide file tree
Showing 34 changed files with 1,144 additions and 485 deletions.
17 changes: 15 additions & 2 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
{
"version": "2.0.0",
"tasks": [
Expand All @@ -15,6 +13,21 @@
"kind": "build",
"isDefault": true
}
},
{
"type": "typescript",
"tsconfig": "tsconfig.json",
"problemMatcher": [
"$tsc"
]
},
{
"type": "typescript",
"tsconfig": "tsconfig.json",
"option": "watch",
"problemMatcher": [
"$tsc-watch"
]
}
]
}
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Change Log

All notable changes to the "beamdasm" extension will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
Expand Down
24 changes: 17 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,24 +6,34 @@
[![Join the chat at https://gitter.im/scout119/beamdasm](https://badges.gitter.im/scout119/beamdasm.svg)](https://gitter.im/scout119/beamdasm?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
![GitHub stars](https://img.shields.io/github/stars/scout119/beamdasm.svg?style=social&label=Stars)

BEAM files disassembler extension for Visual Studio Code
BEAM files disassembler extension for Visual Studio Code.

## Description

This extension allows to "peek" inside compiled bytecode for BEAM (Bogdan/Björn Erlang Abstract machine).
Erlang\Elixir bytecode viewer.
This extension allows to "peek" inside compiled bytecode for BEAM (Bogdan/Björn Erlang Abstract machine) binary files.

## Features

To activate the extension select "Disassemble BEAM" from the context menu for a .beam file in the Explorer View:
- Dedicated View in the Explorer for all .beam files in the workspace
- Subitems for main sections:
- Atoms ('**Atom**' and '**AtU8**' sections)
- Exported functions ('**ExpT**' section)
- Imported functions ('**ImpT**' section)
- Local functions ('**LocT**' section)
- Strings '**StrT**' section)
- Attributes ('**Attr**' section)
- Literals ('**LitT**' section)
- Opcodes, labels, registers highlighting
- Hover description for opcodes taken from erlang source code (when available)
- Gutter images for start of the functions

![Activation](media/capture.png)
To activate the extension select "Disassemble BEAM" from the context menu for a .beam file in the Explorer View:

![BEAM chunks](media/atoms.png)
![Activation](media/main.gif)

![Highlight](media/highlight.png)

![Hover](media/hover.png)

## Requirements

Visual Studio Code 1.21.0
Expand Down
Binary file added media/main.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

39 changes: 29 additions & 10 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
},
"preview": true,
"activationEvents": [
"onView:beamdasm.beamFilesTree",
"onCommand:beamdasm.disassemble"
],
"main": "./out/extension",
Expand All @@ -36,36 +37,54 @@
{
"id": "beam",
"extensions": [
".beam"
]
},
{
"id": "beamdasm",
"extensions": [
".beamdasm"
".beam",
".beam_code"
]
}
],
"grammars": [
{
"language": "beamdasm",
"language": "beam",
"scopeName": "source.beamdasm",
"path": "./syntaxes/beamdasm.tmLanguage.json"
}
}
],
"commands": [
{
"when": "resourceLangId == beam",
"command": "beamdasm.disassemble",
"title": "Disassemble BEAM"
}
},
{
"command": "beamdasm.refreshBeamTree",
"title": "Refresh",
"icon": {
"light": "resources/light/refresh.svg",
"dark": "resources/dark/refresh.svg"
}
}
],
"views": {
"explorer": [
{
"id": "beamdasm.beamFilesTree",
"name": "BEAM files"
}
]
},
"menus": {
"explorer/context": [
{
"when": "resourceLangId == beam",
"command": "beamdasm.disassemble"
}
],
"view/title": [
{
"when": "view == beamdasm.beamFilesTree",
"command": "beamdasm.refreshBeamTree",
"group": "navigation"
}
]
}
},
Expand Down
1 change: 1 addition & 0 deletions resources/dark/atom.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions resources/dark/atu8.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
29 changes: 29 additions & 0 deletions resources/dark/code.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions resources/dark/expt.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions resources/dark/func.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions resources/dark/impt.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions resources/dark/litt.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions resources/dark/loct.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions resources/dark/refresh.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 187cab7

Please sign in to comment.