diff options
| author | Jordan Wiens <jordan@psifertex.com> | 2016-08-18 22:51:34 -0400 |
|---|---|---|
| committer | Jordan Wiens <jordan@psifertex.com> | 2016-08-18 22:51:34 -0400 |
| commit | 9680d2897655dd97d449ceb0ce0920108067937f (patch) | |
| tree | f235ada0ddec707e44d42b04342ae38c7869702d /docs | |
| parent | c14db29d86617ba3b040086f1f3388d8f8c5ccd1 (diff) | |
add python console image and docs
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/getting-started.md | 26 | ||||
| -rw-r--r-- | docs/guide/troubleshooting.md | 2 |
2 files changed, 27 insertions, 1 deletions
diff --git a/docs/getting-started.md b/docs/getting-started.md index b2a82131..e8e9fc08 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -146,6 +146,32 @@ The function list also highlights imports, and functions identified with symbols !!! Tip "Tip" To search in the function list, just click to make sure it's focused and start typing! +### Script (Python) Console + + + +The integrated script console is useful for small scripts that aren't worth writing as full plugins. + +To trigger the console, either use `<CTRL>-<BACKTICK>` (markdown can't handle the \` character inside of an escaped block), or use the `View`/`Script console` menu. + +Once loaded, the script console can be docked in different locations or popped out into a stand-alone window. Note that [at this time](https://github.com/Vector35/binaryninja-api/issues/226) window locations are not saved on restart. + +Multi-line input is possible just by doing what you'd normally do in python. If you leave a trailing `:` at the end of a line, the box will automatically turn into a multi-line edit box, complete with a command-history. To submit that multi-line input, use `<CTRL>-<ENTER>` + +By default the interactive python prompt has a number of convenient helper functions and variables built in: + +- `here` / `current_address`: address of the current selection +- `bv` / `current_view` / : the current [BinaryView](https://api.binary.ninja/binaryninja.BinaryView.html) +- `current_function`: the current [Function](https://api.binary.ninja/binaryninja.Function.html) +- `current_basic_block`: the current [BasicBlock](https://api.binary.ninja/binaryninja.BasicBlock.html) +- `current_selection`: a tuple of the start and end addresses of the current selection +- `write_at_cursor(data)`: function that writes data to the start of the current selection +- `get_selected_data()`: function that returns the data in the current selection + +Note +!!! Tip "Note" + The current script console only supports Python at the moment, but it's fully extensible for other programming languages for advanced users who with to implement their own bindings. + ## Preferences/Updates  diff --git a/docs/guide/troubleshooting.md b/docs/guide/troubleshooting.md index 60b469c8..d6fbff1b 100644 --- a/docs/guide/troubleshooting.md +++ b/docs/guide/troubleshooting.md @@ -2,7 +2,7 @@ ## Basics - - Have you searched [known issues]? + - Have you searched [known issues][issues]? - Is your computer powered on? - Did you read all the items on this page? - Then you should contact [support]! |
