Update README

This commit is contained in:
James Booth
2016-11-13 17:25:41 +00:00
parent 148c4b3ee1
commit ce1c777338

View File

@@ -1,59 +1,22 @@
profanity-plugins
=================
Plugin support for Profanity is currently in development.
* The `master` branch of Profanity now includes support for C and Python plugins.
* The `plugins` branch contains additional support for Ruby and Lua, but is unstable.
For a list of outstanding issues before releasing 0.5.0, see: https://github.com/boothj5/profanity/milestones/0.5.0
* [Website documentation](http://www.profanity.im/plugins.html)
Building Profanity with plugin support
--------------------------------------
Additional dependencies required:
Dependencies required:
```
autoconf-archive
libtool
```
Plus the development packages for supported languages:
For Python plugins the following is also required:
```
python-dev
lua-dev
ruby-dev
```
Build with:
```
./bootstrap.sh
./configure
make
sudo make install
```
After building, run `profanity -v` to see which language support is available, example output:
```
Profanity, version 0.5.0dev.plugins-python.63a7316
Copyright (C) 2012 - 2016 James Booth <boothj5web@gmail.com>.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Build information:
XMPP library: libmesode
Desktop notification support: Enabled
OTR support: Enabled
PGP support: Enabled
C plugins: Enabled
Python plugins: Enabled
```
Installing plugins
@@ -62,51 +25,17 @@ Installing plugins
Use the `/plugins install` command, e.g.
```
/plugins install ~/projects-git/profanity-plugins/say.py
/plugins install ~/projects-git/profanity-plugins/stable/say.py
```
See the `/help plugins` command for further plugin management options.
More help on plugins
--------------------
Branches
--------
* `/plugins` - Shows a list of loaded plugins.
* `/help commands plugins` - Shows commands defined by plugins
* `/help <plugin_cmd>` - Show help for a plugin command, e.g. `/help browser`
Plugin themes
-------------
The plugins API includes functions to print themed output to the console or a plugins window. The themes need to be added to
```
~/.local/share/profanity/plugin_themes
```
For example ([syscmd.py](https://github.com/boothj5/profanity-plugins/blob/master/syscmd.py) plugin):
```
[system]
command=cyan
result=green
```
Plugin settings
---------------
The plugins API also includes functions to read and write settings. The settings are stored in:
```
~/.local/share/profanity/plugin_settings
```
For example ([say.py](https://github.com/boothj5/profanity-plugins/blob/master/say.py) plugin):
```
[say]
args=-v english -s 120
enabled=active
```
`0.5.0`: Maintenance branch for plugins compatible with the current Profanity release 0.5.0
`0.5.1`: Development for the next Profanity patch release 0.5.1
`master`: Development for the next Profanity major release 0.6.0
Developing plugins
------------------
@@ -117,10 +46,3 @@ API Documentation:
* [C API](http://www.profanity.im/plugins/c/html/profapi_8h.html)
* [C hooks](http://www.profanity.im/plugins/c/html/profhooks_8h.html)
Example test plugins (Ruby and Lua examples might not be up to date):
* [tests/test-c-plugin.c](https://github.com/boothj5/profanity-plugins/blob/master/tests/test-c-plugin/test-c-plugin.c)
* [tests/python-test.py](https://github.com/boothj5/profanity-plugins/blob/master/tests/python-test.py)
* [tests/RubyTest.rb](https://github.com/boothj5/profanity-plugins/blob/master/tests/RubyTest.rb)
* [tests/luatest.lua](https://github.com/boothj5/profanity-plugins/blob/master/tests/luatest.lua)