kugel- / peasy

Geany plugins in scripting languages, based on libpeas.
GNU General Public License v3.0
16 stars 3 forks source link

Allow plugin load from configdir #3

Closed sagarchalise closed 6 years ago

sagarchalise commented 6 years ago

Peasy plugins are loaded from geany system plugin path. It would be really nice to make plugins work from $HOME/.config/geany/plugins or custom config dir of geany.

kugel- commented 6 years ago

This works for me, I just tried again. Did you make sure that you created/moved the .plugin file along with the .py file?

Peasy (and geanypy too) doesn't have specific plugin paths. Being proxy plugins they just tell Geany about additional plugin file extensions when Geany looks in the normal directories.

kugel- commented 6 years ago

From #4:

I cannot get plugins to show from $HOME/.config/geany/plugins folder. Also, I am using gtk3 build and not all plugins are showing in plugin manager. Modeline, doxygen and quickswitch are not showing. Also, In the plugin manager, peasy plugins donot persist. i.e my plugins when I check on enable hide totally from plugin manager. They are enabled for that session but when I restart geany I need to reenable them. Also, I couldnot understand the hiding issue. This doesnot happen for all plugins but only for my custom plugins

  1. What version of geany and peasy are you running?
  2. Please run geany -v, open the PM, and then paste the terminal output.
  3. Please paste the contents the .plugin file of your own plugin.
  4. After enabling one of plugins that dont persist, close geany and paste the contents of $HOME/.config/geany/geany.conf.

Hint: in the PM you can see the path to the plugin file if you mouse-over it.

sagarchalise commented 6 years ago

most of issues are the configs/codes I missed. Now they are persistent but plugins are not loaded from $HOME/.config/geany/plugins. i.e If I keep them in the homeplugin path they donot show in plugin manager.

I am using master repository built of both geany and peasy.

kugel- commented 6 years ago

Please provide the information I asked earlier.

sagarchalise commented 6 years ago

Ok I got this working by setting extra plugin path in geany preference to $HOME/.config/geany/plugins

kugel- commented 6 years ago

This shouldn't be needed. But I can't help if you don't provide the data I asked about.

sagarchalise commented 6 years ago

Sorry, I guess I missed the information you asked. Here is the output of geany -v

Geany-INFO: Geany 1.33 (git >= c3c1921c), en_US.utf8
Geany-INFO: GTK 3.22.26, GLib 2.54.3
Geany-INFO: System data dir: /usr/local/share/geany
Geany-INFO: User config dir: /home/sagar/.config/geany
Geany-INFO: Loaded GTK+ CSS theme '/usr/local/share/geany/geany.css'
Geany-INFO: Loaded GTK+ CSS theme '/usr/local/share/geany/geany-3.20.css'
Geany-INFO: System plugin path: /usr/local/lib/geany
Geany-INFO: Added filetype Genie (61).
Geany-INFO: Added filetype Graphviz (62).
Geany-INFO: Added filetype Arduino (63).
Geany-INFO: Added filetype Scala (64).
Geany-INFO: Added filetype Cython (65).
Geany-INFO: Added filetype JSON (66).
Geany-INFO: Added filetype CUDA (67).
Geany-INFO: Added filetype Clojure (68).
Geany-INFO: Loaded libvte from libvte-2.91.so.0
Geany-INFO: Loaded:   /usr/local/lib/geany/addons.so (Addons)
Geany-INFO: Loaded:   /usr/local/lib/geany/autoclose.so (Auto-close)
Geany-INFO: Loaded:   /usr/local/lib/geany/automark.so (Auto-mark)
Geany-INFO: Loaded:   /usr/local/lib/geany/classbuilder.so (Class Builder)
Geany-INFO: Ignoring only one of plugin_key_group[_info] symbols defined for plugin 'Code navigation'. Maybe use plugin_set_key_group() instead?
Geany-INFO: Loaded:   /usr/local/lib/geany/codenav.so (Code navigation)
Geany-INFO: Loaded:   /usr/local/lib/geany/commander.so (Commander)
Geany-INFO: Loaded:   /usr/local/lib/geany/defineformat.so (Define formatter)
Geany-INFO: Loaded:   /usr/local/lib/geany/geanydoc.so (Doc)
Geany-INFO: Loaded:   /usr/local/lib/geany/geanygendoc.so (Documentation Generator)
Geany-INFO: Loaded:   /usr/local/lib/geany/export.so (Export)
Geany-INFO: Loaded:   /usr/local/lib/geany/geanyextrasel.so (Extra Selection)
Geany-INFO: Loaded:   /usr/local/lib/geany/filebrowser.so (File Browser)
Geany-INFO: Loaded:   /usr/local/lib/geany/geanyctags.so (GeanyCtags)
Geany-INFO: Loaded:   /usr/local/lib/geany/geanyvc.so (GeanyVC)
Geany-INFO: Loaded:   /usr/local/lib/geany/git-changebar.so (Git Change Bar)
Geany-INFO: Loaded:   /usr/local/lib/geany/htmlchars.so (HTML Characters)
Geany-INFO: Loaded:   /home/sagar/.config/geany/plugins/jsonprettifier.so (JSON Prettifier)
Geany-INFO: Loaded:   /usr/local/lib/geany/keyrecord.so (Keystrokes recorder)
Geany-INFO: Loaded:   /usr/local/lib/geany/lineoperations.so (Line Operations)
Geany-INFO: Loaded:   /usr/local/lib/geany/lipsum.so (Lipsum)
Geany-INFO: Loaded:   /usr/local/lib/geany/geanymacro.so (Macros)
(geany:1901): GnomeShellBrowserPlugin-DEBUG: plugin loaded
Geany-INFO: Loaded:   /usr/local/lib/geany/markdown.so (Markdown)
Geany-INFO: Loaded:   /usr/local/lib/geany/geanyminiscript.so (Mini Script)
Geany-INFO: Loaded:   /usr/local/lib/geany/overview.so (Overview)
Geany-INFO: Loaded:   /usr/local/lib/geany/pairtaghighlighter.so (Pair Tag Highlighter)
Geany-INFO: Loaded:   /usr/local/lib/geany/peasy-plugin.so (Peasy)
Geany-INFO: Loaded:   /usr/local/lib/geany/projectorganizer.so (Project Organizer)
Geany-INFO: Loaded:   /usr/local/lib/geany/console-peasy.plugin (Python Console (Peasy))
Geany-INFO: Loaded:   /usr/local/lib/geany/quickswitch.plugin (Quick Tab Switch)
Geany-INFO: Loaded:   /usr/local/lib/geany/shiftcolumn.so (Shift Column)
(geany:1901): SpellCheck-DEBUG: Initializing Enchant library version 1.6 or older
Geany-INFO: Loaded:   /usr/local/lib/geany/spellcheck.so (Spell Check)
Geany-INFO: Loaded:   /usr/local/lib/geany/splitwindow.so (Split Window)
Geany-INFO: Loaded:   /home/sagar/.config/geany/plugins/geany-goto.so (Symbol and Quick Open)
Geany-INFO: Loaded:   /usr/local/lib/geany/tableconvert.so (Tableconvert)
Geany-INFO: Loaded:   /usr/local/lib/geany/modeline.plugin (Vim modeline parser)
Geany-INFO: Loaded:   /usr/local/lib/geany/webhelper.so (Web helper)
Geany-INFO: Loaded:   /usr/local/lib/geany/pretty-printer.so (XML PrettyPrinter)
Geany-INFO: Loaded:   /usr/local/lib/geany/xmlsnippets.so (XML Snippets)
Geany-INFO: Plugin "/usr/local/lib/geany/addons.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/autoclose.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/automark.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/classbuilder.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/codenav.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/commander.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/defineformat.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanydoc.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanygendoc.so" already loaded.
Geany-INFO: Loaded:   /usr/local/lib/geany/doxygen-helper.plugin (Doxygen Support)
Geany-INFO: Plugin "/usr/local/lib/geany/export.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanyextrasel.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/filebrowser.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanyctags.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanyvc.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/git-changebar.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/htmlchars.so" already loaded.
Geany-INFO: Plugin "/home/sagar/.config/geany/plugins/jsonprettifier.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/keyrecord.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/lineoperations.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/lipsum.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanymacro.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/markdown.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanyminiscript.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/overview.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/pairtaghighlighter.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/peasy-plugin.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/projectorganizer.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/console-peasy.plugin" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/quickswitch.plugin" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/shiftcolumn.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/spellcheck.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/splitwindow.so" already loaded.
Geany-INFO: Plugin "/home/sagar/.config/geany/plugins/geany-goto.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/tableconvert.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/modeline.plugin" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/webhelper.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/pretty-printer.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/xmlsnippets.so" already loaded.
Geany-INFO: unknown : None (UTF-8)
Geany-INFO: Plugin "/home/sagar/.config/geany/plugins/geany-goto.so" already loaded.
Geany-INFO: Plugin "/home/sagar/.config/geany/plugins/jsonprettifier.so" already loaded.
Geany-INFO: Added 2 plugin(s) in '/home/sagar/.config/geany/plugins'.
Geany-INFO: Plugin "/usr/local/lib/geany/addons.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/autoclose.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/automark.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/classbuilder.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/codenav.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/commander.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/console-peasy.plugin" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/defineformat.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/doxygen-helper.plugin" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/export.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/filebrowser.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanyctags.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanydoc.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanyextrasel.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanygendoc.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanymacro.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanyminiscript.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/geanyvc.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/git-changebar.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/htmlchars.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/keyrecord.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/lineoperations.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/lipsum.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/markdown.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/modeline.plugin" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/overview.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/pairtaghighlighter.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/peasy-plugin.so" already loaded.
Geany-INFO: Failed to load "/usr/local/lib/geany/peasyluatest.plugin" - ignoring plugin!
Geany-INFO: Plugin "/usr/local/lib/geany/pretty-printer.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/projectorganizer.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/quickswitch.plugin" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/shiftcolumn.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/spellcheck.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/splitwindow.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/tableconvert.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/webhelper.so" already loaded.
Geany-INFO: Plugin "/usr/local/lib/geany/xmlsnippets.so" already loaded.
Geany-INFO: Added 50 plugin(s) in '/usr/local/lib/geany'.

These are peasy plugins:

https://github.com/sagarchalise/geany-pyjedi/blob/peasy/peasyjedi.plugin

https://github.com/sagarchalise/geanypy-reStructured-preview/blob/peasy/peasyrstpreview.plugin

They are not showing in plugin manager if I keep these in $HOME/.config/geany/plugins

The persistency thing was my own mistake now its persistent if it shows in plugin manager.

kugel- commented 6 years ago

Thanks. With your help, I found the bug, it's in fact in peasy.