I'm not sure if this is practical, but I found that programs with extension supports are very good to use. Since:
(1) It allow third party softwares to plugin and extend the program's functionalities
(2) It allow users to modify the "weight" and functions according to their own needs
I was previously using the program "jedit" for editing. It have a large collection of "plugins". Moreover, it's plugin manager allow you to install and update for its plugins from the web.
I am also a fan of Mozilla Firefox which allow users to alter the program by add and remove extensions.
I think that Notepad++ is a lot system friendly (not using Java, use less resources), but it still have rooms for improvement and growth. Extension support is good for both.
I'm very interested to do this feature, but I have little idea to do it.
If you have the experience to implement the extension or plugins, please contact me.
Here's two links.
Assuming c++ is used:
Otherwise, just use google and enter "how to write plugins" followed by the language.