home *** CD-ROM | disk | FTP | other *** search
/ Freelog 125 / Freelog_MarsAvril2015_No125.iso / ViePratique / moneyguru / moneyguru_win_2.7.2.msi / disk1.cab / plugins.txt < prev    next >
Text File  |  2013-09-07  |  3KB  |  47 lines

  1. Plugins
  2. =======
  3.  
  4. Since moneyGuru v2.5, it's possible to expand moneyGuru's capability through Python plugins. Plugins
  5. are Python 3 source files located in the plugin folder (the location of that folder depends on the
  6. system, but you can open that folder through "File --> Open Plugin Folder"). When moneyGuru
  7. launches, it looks in that folder for plugins to load and for each plugin it finds, it will add an
  8. item to the plugin list located in the "New Tab" view. To open a plugin, simply double-click on the
  9. name of that plugin in the list.
  10.  
  11. To install a plugin, take the Python file (a ``.py`` file), put it in the plugin folder and
  12. restart moneyGuru.
  13.  
  14. **Warning.** moneyGuru plugins are not sandboxed, which means that technically, they could contain
  15. malicious code. Only install plugins from trusted sources or after having reviewed the code yourself.
  16.  
  17. Limitations
  18. -----------
  19.  
  20. First things first, the plugin feature is brand new, so there are many rough edges and limitations.
  21. For the first iteration of the feature, the plugin is limited to a single read-only table. The data
  22. in the table is not "live" data and thus isn't refreshed when data in the document changes, so the
  23. tab has to be closed and reopened for the data to be refreshed.
  24.  
  25. But despite those limitations, there's quite a lot of possibilities, especially for custom reports.
  26. Printing, sorting and CSV-copy-pasting (selecting rows, copying data and then pasting it in
  27. Excel/Numbers) work with those tables.
  28.  
  29. Creating a plugin
  30. -----------------
  31.  
  32. Other than `a small convenience API <https://github.com/hsoft/moneyguru/blob/master/core/plugin.py>`__,
  33. there's no "plugin" API, you're coding straight on top of moneyGuru's code. Developer documention
  34. for moneyGuru's code is unfortunately not very extensive, but I've created a few well commented
  35. plugin examples and I think that they're your best starting point.
  36.  
  37. So, to create a plugin, I'd suggest that you take one of the examples (they're automatically copied
  38. in your plugin folder. You can also find the latest version of these examples
  39. `on Github <https://github.com/hsoft/moneyguru/tree/master/plugin_examples>`__), duplicate it and
  40. try to wade your way through with example comments. There's a
  41. :doc:`developer documentation <developer/index>` but it's far from complete.
  42. Looking at moneyGuru's `source code <https://github.com/hsoft/moneyguru>`_ is also a good way
  43. to learn how to work with it, but understanding it can be quite an undertaking.
  44.  
  45. I'm very interested in knowing about plugin development efforts so don't hesitate to
  46. `contact me <mailto:hsoft@hardcoded.net>`_ if you need help with the development of your plugin.
  47.