Announcement: Notepad++ plugin pack for C# v0.90 released



  • Writing plugins for Notepad++ using C#/.Net has never been easier with this new plugin pack.

    https://github.com/kbilsted/NotepadPlusPlusPluginPack.Net/releases

    Highlights

    • Based on UFO’s dated plugin pack
    • Upgraded with more than 5000 lines of code - making interaction with Notepad++ and Scintilla less low-level.
    • Interfaces have been introduced so you can not unit test your plugins.
    • Future upgrades of the package is ensured to be simple

    The main contribution in this release is the introduction of the classes NotepadPlusPlusGateway and ScintillaGateWay. These gateways provide a much nicer interaction with Notepad++ for the plugin writer.

    The old architecture of plugins were something similar to the below picture:

           +-----------+ +-----------+
           | scintilla | | Notepad++ |
           +-----------+ +-----------+
                ^             ^
                |             |
                +-------------+                   
                        |              
                   +-----------+ 
                   | Win32     |
                   +-----------+ 
                        ^
                        |
                   +-----------+ 
                   | plugin    |
                   +-----------+ 
    

    Plugins would interact with a “Win32” lowlevel api to do calls.

    The new architecture:

                   +-----------+ +-----------+
                   | scintilla | | Notepad++ |
                   +-----------+ +-----------+
                        ^             ^
                        |             |
               +--------+--------+----+------------+                   
               |                 |                 |
     +------------------+ +----------------+ +-----------+ 
     | scintillaGateway | | NotepadGateway | | Win32     |
     +------------------+ +----------------+ +-----------+ 
          ^                     ^                ^        
          |                     |                |        
          +-----------------+---+----------------+                   
                            |              
                       +-----------+ 
                       | plugin    |
                       +-----------+ 
    

    So as you can see, you still have access to the low-level stuff as you are used to, while at the same time being able to use the nice gateway classes.

    Go to: https://github.com/kbilsted/NotepadPlusPlusPluginPack.Net/releases


Log in to reply