summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorJordan Wiens <jordan@psifertex.com>2016-08-18 22:51:34 -0400
committerJordan Wiens <jordan@psifertex.com>2016-08-18 22:51:34 -0400
commit9680d2897655dd97d449ceb0ce0920108067937f (patch)
treef235ada0ddec707e44d42b04342ae38c7869702d /docs
parentc14db29d86617ba3b040086f1f3388d8f8c5ccd1 (diff)
add python console image and docs
Diffstat (limited to 'docs')
-rw-r--r--docs/getting-started.md26
-rw-r--r--docs/guide/troubleshooting.md2
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
+
+![console](/images/console.png "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
![preferences](/images/preferences.png "Preferences")
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]!