bruderstein / nppPluginManager

Notepad++ Plugin Manager
http://www.brotherstone.co.uk/npp/pm/
GNU General Public License v2.0
1.67k stars 223 forks source link

NPP v7.5.8 has new directory structure for plugins, so Plugin Manager shows no installed plugins #127

Open pryrt opened 6 years ago

pryrt commented 6 years ago

While looking at #126, I did a fresh portable NPP 7.5.8 64-bit and added \usr\local\apps\npp64.7.5.8\plugins\PluginManager\PluginManager.dll. Debug Info shows 4 plugins, and Plugin Manager properly runs from the new subfolder of plugins:

Notepad++ v7.5.8   (64-bit)
Build time : Jul 23 2018 - 02:06:36
Path : C:\usr\local\apps\npp64.7.5.8\notepad++.exe
Admin mode : OFF
Local Conf mode : ON
OS : Windows 10 (64-bit)
Plugins : DSpellCheck.dll mimeTools.dll NppConverter.dll PluginManager.dll 

but Plugins > Plugin Manager > Show Plugin Manager > Installed shows "There are no known installed plugins".

Looking at my installed v7.5.8 32-bit,

Notepad++ v7.5.8   (32-bit)
Build time : Jul 23 2018 - 02:03:53
Path : C:\Program Files (x86)\Notepad++\notepad++.exe
Admin mode : OFF
Local Conf mode : OFF
OS : Windows 10 (64-bit)
Plugins : ComparePlugin.dll dbgpPlugin.dll MarkdownViewerPlusPlus.dll NppExec.dll NppFTP.dll PluginManager.dll PreviewHTML.dll PythonScript.dll XMLTools.dll DSpellCheck.dll mimeTools.dll NppConverter.dll NppExport.dll 

... Debug info shows 13 (if I counted correctly),. but the Plugin Manager > Installed list only shows some of them: Compare, DBGp, MarkdownViewer++, NppExec, NppFTP, Plugin Manager, Preview HTML, Python Script, and XML Tools -- it's just the ones that don't have the DLL in a subfolder of plugins.

(I thought I had seen something similar in the forums at some point recently, but a quick search didn't find it for me)

For Plugin Manager to be compatible going forward from v7.5.8, it's going to need to understand the hierarchical plugin installations as well as recognizing the ones in the main plugins\ folder.

BannerBomb commented 6 years ago

I am getting something similar as well. Opening Plugin Manager says it is loading the plugins list but then says No new plugins available under the Available tab.

chcg commented 6 years ago

@pryrt @BannerBomb PluginManager doesn't support the new structure introduced by N++ with 7.5.8 yet. Just the plugin dlls directly placed inside the plugins folder are found and listed.

alexhass commented 6 years ago

This patch has a bug. If You had your plugin in a subfolder and there is an update e.g. NppConverter.dll 4.2.0 is updated to 4.2.1 it will be updated to plugins\NppConverter.dll and not plugins\NppConverter\NppConverter.dll.

Can you fix this bug and release a new version, please?

chcg commented 6 years ago

I wouldn't consider this as a bug, but a compatibility feature. Otherwise PM would need to provide a version specific install routine based on the N++ version and the developers would need to test two installation modes, if the plugin is not just a simple single dll.

But there are still some bugs in this first simple adaption to the changed/extended behaviour of N++ plugin handling (done to prepare for a buildin plugin management to my knowledge).

de-served commented 5 years ago

After plugin installation/reinstallation by PM these "(re)installed" plugins are invisible, because *.dll's placed in the root of plugins/ directory. NPP 7.6 sees plugins only in subfolders of plugins/. I lost a lot of time to understand what happens and where are all plugins gone after mass "reinstall" on all plugins (updated NPP and tried to recover plugin files/structure). So now in 7.6 plugins must be in subdirectory in plugins/ directory. Name of that subdirectory is important and must be as dll name: plugins/3P/3P.dll + NetFrameworkChecker.exe BetterMultiSelection/BetterMultiSelection.dll CsvQuery/CsvQuery.dll etc.

chcg commented 5 years ago

@desirepl Did you see https://notepad-plus-plus.org/news/notepad-7.6-released.html and https://notepad-plus-plus.org/features/plugin-admin.html. There is still much discussion(see e.g. https://notepad-plus-plus.org/community/topic/16621/notepad-7-6-new-plugins-admin) on this, so maybe some further adaptations/changes are still needed. So it is unclear if PM will be modified to work together with this changes. At least not before the changes have stabilized.

dartraiden commented 5 years ago

So now in 7.6 plugins must be in subdirectory in plugins/ directory

Under Windows, plugins now can be loaded only from /AppData/Local/, so PluginManager should not place them to /AppData/Roaming/

de-served commented 5 years ago

So now in 7.6 plugins must be in subdirectory in plugins/ directory

Under Windows, plugins now can be loaded only from /AppData/Local/, so PluginManager should not place them to /AppData/Roaming/

My plugins are not in %AppData% at all. Notepad installed in custom directory and inside notepad directory there are "localisation", "themes", "updates" and... "plugins"! Now all my plugins, each of them, are placed inside that "plugins" directory and each plugin has its own directory named as plugin ".dll". @chcg, read links. Waiting for stabilization.

alexhass commented 5 years ago

Files always need to be installed to Roaming. Never to AppData/Local as this folders are typically excluded from roaming and therefore deleted when a user logs off from his computer (with roaming user profiles)