-
Notifications
You must be signed in to change notification settings - Fork 294
updates to docs #8336
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
ashvika-creator
wants to merge
10
commits into
Vector35:dev
Choose a base branch
from
ashvika-creator:test_documentation
base: dev
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+161
−118
Open
updates to docs #8336
Changes from all commits
Commits
Show all changes
10 commits
Select commit
Hold shift + click to select a range
8fa3066
added instructions for json longdescription and README image URLs
ashvika-creator 67c3745
plugin manager --> extension manager
ashvika-creator 50e0457
longdescription warning
ashvika-creator 5a6cce1
Views tab
ashvika-creator c60c350
view options section update
ashvika-creator 40e102a
switched to new updated screenshot
ashvika-creator f9421c7
reminder to update json version #
ashvika-creator 891349d
view options section updated
ashvika-creator 0017704
merge conflicts
ashvika-creator 9df1548
Merge branch 'dev' into test_documentation
ashvika-creator File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -14,18 +14,39 @@ To start, we suggest you download the [sample plugin](https://github.com/Vector3 | |
| - For small scripts, you can include all the code inside `__init__.py`, though we recommend for larger scripts that `__init__.py` just act as an initializer and calls into functions organized appropriately in other files. | ||
| - If you have python dependencies, create a [requirements.txt](https://pip.pypa.io/en/latest/cli/pip_freeze/) listing any python dependencies. | ||
|
|
||
| ### Submitting to the Plugin Manager | ||
| ### Plugin Description Display | ||
|
|
||
| If your plugin was created as described above, there's only two steps to get it submitted to the plugin manager! | ||
| Binary Ninja displays plugin descriptions differently depending on the contents of the `plugin.json` file. | ||
|
|
||
| - If `longdescription` exists **and is longer than 100 characters**, the Extension Manager displays the `longdescription`. | ||
| - If `longdescription` is missing, or is **100 characters or fewer**, the Extension Manager instead displays the contents of the plugin repository's `README.md`. | ||
|
|
||
| **Tip:** If you want the Extension Manager to display your full README as the plugin description, leave the `longdescription` field blank. When longdescription is omitted, Binary Ninja falls back to displaying the contents of your `README.md`, which generally provides a richer and better-formatted description of your plugin. | ||
|
|
||
| ### Images in README Files | ||
|
|
||
| When you include images for preview in the Extension Manager, be aware that animated gifs are not fully supported. They will be rendered as static images of the first frame. | ||
|
|
||
| Additionally, all images should be included using FULL GitHub URLs as they will not render in the Extension Manager without that. | ||
|
|
||
| For example: | ||
|
|
||
|  | ||
|
|
||
| ### Submitting to the Extension Manager | ||
|
|
||
| If your plugin was created as described above, there's only two steps to get it submitted to the Extension Manager! | ||
|
|
||
| 1. First, create a release either [manually](https://binary.ninja/2019/07/04/plugin-manager-2.0.html#5-create-a-release) or using our [release helper](https://github.com/Vector35/release_helper). | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I don't think we should recommend this anymore. Instead, we can point to: https://github.com/vector35/sample_plugin#cutting-a-release which automates the whole process! We should adjust the steps accordingly probably. |
||
| 1. Next, just [file an issue](https://github.com/Vector35/community-plugins/issues/new/choose) letting us know about your plugin. | ||
| 2. Next, just [file an issue](https://github.com/Vector35/community-plugins/issues/new/choose) letting us know about your plugin. | ||
|
|
||
| For future releases all you need to do is increment the version and create a new release. | ||
|
|
||
| For future releases all you need to do is increment the version and create a new release. | ||
| **Make sure to update the version number in the `plugin.json` for your release to appear in the extension manager.** | ||
|
|
||
| ### Using Your Own Plugin Repository | ||
|
|
||
| The simplest way to run your own plugin repository using the new V2 plugin manager is to use the [mock server](https://github.com/Vector35/binaryninja-api/blob/dev/python/examples/mock_extension_server.py) helper script (a copy is available offline as well in the install path, in the python exapmle scripts subfolder). | ||
| The simplest way to run your own plugin repository using the new Extension Manager is to use the [mock server](https://github.com/Vector35/binaryninja-api/blob/dev/python/examples/mock_extension_server.py) helper script (a copy is available offline as well in the install path, in the python exapmle scripts subfolder). | ||
|
|
||
| Once you've created your test repository, use the `pluginManager.unofficialName` and `pluginManager.unofficialUrl` settings to add your third-party repository. | ||
|
|
||
|
|
@@ -381,9 +402,9 @@ There are a few other options you can use to assist in debugging: | |
| As a footnote, it should be noted that most of the team at Vector 35 use VSCode as a bare text editor | ||
| and use command-line lldb or gdb to debug their code. Shout-outs to people trying to get this working in Vim. | ||
|
|
||
| ## Submitting to the plugin manager | ||
| ## Submitting to the Extension Manager | ||
|
|
||
| While native plugins are not fully supported in the plugin manager at this time, it's possible to work around this limitation by pre-building a native plugin for all three platforms and using a python plugin that acts as a loader for the native plugin. Additionally, you can submit a plugin as "view_only" which helps with discoverability. | ||
| While native plugins are not fully supported in the Extension Manager at this time, it's possible to work around this limitation by pre-building a native plugin for all three platforms and using a python plugin that acts as a loader for the native plugin. Additionally, you can submit a plugin as "view_only" which helps with discoverability. | ||
|
|
||
| ## Examples | ||
|
|
||
|
|
||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we should show this not as an actual image but inside triple backticks so it's escaped.