mirror of
https://github.com/rizinorg/cutter.git
synced 2024-12-23 13:25:27 +00:00
35 lines
1.2 KiB
ReStructuredText
35 lines
1.2 KiB
ReStructuredText
|
Plugins
|
||
|
=======
|
||
|
|
||
|
Cutter supports writing plugins in both C++ and Python.
|
||
|
If you are unsure which one to choose, we strongly suggest starting with Python since
|
||
|
it allows for a quicker and easier workflow.
|
||
|
|
||
|
If you plan to implement support for a new file format or architecture, Cutter plugins are not the correct approach.
|
||
|
Instead, you will want to implement a radare2 plugin, which is documented `here <https://radare.gitbooks.io/radare2book/plugins/intro.html>`_.
|
||
|
|
||
|
|
||
|
Loading and Overview
|
||
|
--------------------
|
||
|
|
||
|
Plugins are loaded from an OS-dependent user-level directory.
|
||
|
To get the location of this directory and a list of currently loaded plugins, navigate to Edit -> Preferences -> Plugins.
|
||
|
|
||
|
.. image:: plugins/preferences-plugins.png
|
||
|
|
||
|
The plugins directory contains two subdirectories, ``native`` and ``python`` for C++ and Python plugins respectively,
|
||
|
which will be created automatically by Cutter.
|
||
|
|
||
|
Note that support for Python plugins is only available if Cutter was built with the options ``CUTTER_ENABLE_PYTHON``
|
||
|
and ``CUTTER_ENABLE_PYTHON_BINDINGS`` enabled.
|
||
|
This is the case for all official builds from GitHub Releases starting with version 1.8.0.
|
||
|
|
||
|
|
||
|
Creating Plugins
|
||
|
---------------
|
||
|
|
||
|
.. toctree::
|
||
|
:glob:
|
||
|
:hidden:
|
||
|
|
||
|
plugins/*
|