ffes / nppsnippets

Code Snippets plugin for Notepad++
https://www.fesevur.com/nppsnippets
GNU General Public License v2.0
71 stars 12 forks source link

Adapt to N++ 7.6.x #20

Closed chcg closed 5 years ago

chcg commented 5 years ago

See https://notepad-plus-plus.org/community/topic/16871/please-remove-the-snippets-plugin-from-the-plugin-manager nppsnippets is currently not taking the data from the changed plugin location introduced with N++ 7.6.x

ffes commented 5 years ago

Most likely this functions need to be updated

https://github.com/ffes/nppsnippets/blob/master/DlgConsole.cpp#L269

ffes commented 5 years ago

Do you think support for version < 7.6 should still work or should I just focus on the latest?

Note that as far as I can see now it only affects the installation process and where the plugin tries to find the initial template database. When you install manually or upgrade from a version < 7.6 to 7.6.x (apart from the location of the plugin itself) nothing has changes and it just works.

chcg commented 5 years ago

See https://notepad-plus-plus.org/news/notepad-7.6.3-released.html, the plugin dir is similar again to 7.5.9. Maybe it is already fine again with this switch back and just 7.6.0 -7.6.2 are broken.

ffes commented 5 years ago

Not entirely. In the old situation the plugins where found in %PROGRAM_FILES%\Notepad++\plugins, now they are found in %PROGRAM_FILES%\Notepad++\plugins\%PLUGIN_NAME%.

At the moment (that was very useful in the pre 7.6 era) the additional files are installed in a subdirectory under the plugins directory named NppSnippets. With the extra subdirectory that got added in 7.6 the additional files are now installed in %PROGRAM_FILES%\Notepad++\plugins\%PLUGIN_NAME%\NppSnippets.

The NppSnippets plugin searches the template database (the database copied on first use of the plugin) in %NPPM_GETNPPDIRECTORY%\plugins\NppSnippets (see https://github.com/ffes/nppsnippets/blob/master/DlgConsole.cpp#L295). That is the same directory as where the .dll is found nowadays. So the plugin and release .zip need to be updated. The extra subdirectory needs to be removed from the zip and the code needs to use the new NPPM_GETPLUGINHOMEPATH message.

Note that NPPM_GETPLUGINHOMEPATH isn't mentioned on http://docs.notepad-plus-plus.org/index.php/Messages_And_Notifications, only in the release notes of 7.6.0.

chcg commented 5 years ago

Regarding http://docs.notepad-plus-plus.org/index.php/Messages_And_Notifications, see at the end:

This page was last modified on 14 February 2014, at 21:49.

So I guess there is much more of the info on this page outdated.