Plugins loading way has been changed in Notepad++ 7.6 (and upper versions)
-
That’s not the whole truth. Plugins which need additional files to function properly may or may not fail to work. It depends on how they currently determine the path to their companion files. The new plugin hosting policy requires that a plugin and all its companion files (except the config file) are installed to the same folder. This was not the case in the past.
You are right about it.
Users which are facing problems with their legacy plugins should at first try to copy all files and folders belonging to the plugin in question to %USERPROFILE%\AppData\Local\Notepad++\plugins\myAwesomePlugin. If this doesn’t help they should contact the author of the plugin to request an update that adopts the new plugin hosting model of Notepad++.
Yes, indeed.
The new plugin loading way is not only KISS (keep it simple, stupid), but also provide a cleaner way to make plugin authors’ life easier (though it’s not the case for some lagacy plugin authors) - all the extra data files/binairies/libraries can be aside of plugin entry (DLL), and use them with the relative path.
-
@donho said:
all the extra data files/binairies/libraries can be aside of plugin entry (DLL), and use them with the relative path
That’s right but currently there exists no easy method to query the plugin DLL path. Plugin devs have to deal with the DLL module handle and GetModuleFileName API (which is poorly designed and whose documentation is difficult to understand). Have you already thought about my suggestion here? Another possible unique ID instead of the module handle would be the plugin DLL name.
-
Regarding XmlTools there was already a commit (https://github.com/morbac/xmltools/commit/3b266ec4933bab03dfd84b70f905e6ff69f931c2) to overcome this limitation that companion dlls are search by the N++.exe folder, but that seems not to work.
-
How does this work for people using Notepad++ Portable? Does everything just reside in the Notepad++ directory?
-
@ImSpecial said:
How does this work for people using Notepad++ Portable? Does everything just reside in the Notepad++ directory?
Yes, it should be like this.
-
@donho ,
It will be useful to implement command
Open plugins folder
somewhere in the Notepad++ menu (for example in the?
menu or just abovePlugins Admin
inPlugins
menu) that will open the Notepad++ plugins install folder in Windows Explorer.
This way the users can quickly find where their plugins are located no matter if Notepad++ is portable or installed or whatever. It will also make troubleshooting problems related to plugins location easier.Tell me what you think.
-
@pnedev said:
It will be useful to implement command
Open plugins folder
somewhere in the Notepad++ menu (for example in the?
menu or just abovePlugins Admin
inPlugins
menu) that will open the Notepad++ plugins install folder in Windows Explorer.It’s a nice to have feature. But currently I have the other priorities to treat.
-
@donho ,
I can implement it but I’m also a bit busy these days. Will do it when I find the time.
I will keep you posted. -
@donho ,
Done.
Here is the feature request: https://github.com/notepad-plus-plus/notepad-plus-plus/issues/5224
and here is the pull request: https://github.com/notepad-plus-plus/notepad-plus-plus/pull/5225 . -
-
a little side note (also positive), if it is of interest for others:
the condition
if (hasPlugins() || enablePluginAdmin)
was removed in @pnedev 's commit, so there’s a slight change in the default behaviour:before, if plugins admin was disabled or gup not present and no plugins were installed, the plugins menu would disappear completely.
(for example in cases where all default plugins were removed, or are in a wrong path structure of a version prior to 7.6.x but using a newer notepad++ binary on top ot this folder structure)now the plugins menu is always present.
so even if there are no plugins installed (all default plugins removed) and plugins admin is not active or present, users are still able to reach the new “open plugins folder…” menu entry to find and reach the plugins folder with a single click of a mouse button, to add any desired plugins manually. -
And where do I put my “Squirrel Highlighter plugin”? (LUSquirrel.xml)
I used to put it in “C:\Program Files (x86)\Notepad ++\plugins\Config\ LUSquirrel.xml” and it worked.
Now, put it where you put it, it does not appear in Notepad ++In my country there is a clear sentence: “If something works, do not change it”.
-
hola y bienvenido a la notepad++ community, @Zoilo-Lagos-Lopez
on notepad++ 7.6.6, if your
LUSquirrel.xml
file begins with:<?xml version="1.0" encoding="Windows-1252" ?> <NotepadPlus> <AutoComplete language="...">
then copy it to
C:\Program Files (x86)\Notepad++\autoCompletion\
.
(C:\Program Files (x86) is an example and will depend on your notepad++ installation path)if your
LUSquirrel.xml
file begins with:<NotepadPlus> <UserLang name="..." ext="" udlVersion="2.1"> ...
then copy it to
%AppData%\Notepad++\userDefineLangs\
.note: if your notepad++ is not a default installation, or a portable version, we would need your debug info from the notepad++ menu
? > información de reparación... > copy debug info into clipboard
to tell you the corresponding paths.saludos.