Change log:

1.0.7.0
  • Fix for replacing with extended Unicode characters with editor.rereplace() (thanks to David Instone-Brewer for reporting)
  • Several freeze issues corrected (thanks to skrell and Juergen Busch for reporting)

1.0.6.0
  • Arguments for various events fixed (thanks to everyone that reported the various missing arguments)
  • editor.deleteLine() works as expected on first and last lines
  • Various small documentation fixes

1.0.5.0
  • Fixed crash bug with notepad.prompt(). Thanks to Dieter Koessl for reporting

1.0.4.0
  • Fixed issue in Python with complex numbers (abs, hypot would never return). Thanks to Ron Jenson for reporting
  • Note this release contains an updated python27.dll, and updated modules. Python reports version "2.7.6-notepad++ r2", and sys.version_info reports a serial version 2, instead of 0 as the previous version. If the official python ever releases a minor fix of 2.7.6 (unlikely now), please note this python27.dll is actually a modified 2.7.6.0, and does not contain fixes in any future releases of Python 2.7.6.
    If you're updating manually (without the MSI or Plugin Manager), then it is strongly advised to update the libs, so all .pyd files

1.0.3.0 (never released)
  • Fixed crash bug with Notepad.runPluginCommand(). Thanks to Kyrus86 and Ron Jenson for reporting

1.0.2.0
  • Fixed bug with Editor.rereplace that stopped conditional replacements working (thanks to Cyrillev for reporting)

1.0.1.0
  • Editor.pyreplace and similar methods (Editor.pysearch, Editor.pymlreplace) have been rewritten from the ground up. Editor.replace(), Editor.rereplace(), Editor.search() and the unfortunately named Editor.research() (R(egular)E(xpression)Search) methods replace the old functions completely. You can now use a function for the replace argument for editor.replace() and editor.rereplace(). The new functions are much faster than the old versions, and work reliably.
  • The new replace functionality now supports Unicode, and converts appropriately for the active document - you can now pass a unicode string as your search or replace argument, and it will be converted depending on the current document's encoding
  • Callbacks for both editor and notepad have had a massive rework, to fix various reliability issues. If you had issues before, try them now.
  • You can now add a synchronous callback for Editor - see editor.callbackSync()
  • GIL (Global Interpreter Lock) management for Python has been significantly improved, and various edge cases that used to crash now work painlessly.
  • Encoding on the Console is now UTF-8, and printing unicode text to the console works
  • notepad.setLangType(LANGTYPE) now works
  • help for editor & notepad methods has been improved to include the parameter names
  • notepad.runMenuCommand fixed to not ignore the menu name (if you have a user defined language called "Open", the File->Open would previously always be called as it was found first)
  • Scintilla bindings updated to 3.39
  • sys.path now has the Notepad++ PythonScript Lib paths prepended, instead of appended. This fixes various cases of things not working when Python is separately installed. An option has been added to the configuration dialog to put back the old behaviour
  • MODIFICATIONFLAGS enum is now included (use in a handler for SCINTILLANOTIFICATION.MODIFIED, checking args['modificationType']
  • sys.argv is set
  • Tcl/Tk now works, and can be installed as an add-on (or with the MSI)
  • MSI installer to ease installation before Plugin Manager gets the update
  • Unit tests have been added for all the major features, and every combination of arguments for the generated code. There's still work to do, but it's infinitely better than before
  • Lots of little bug fixes that had been reported
0.9.2.0
  • Fixed 2 bugs with editor.pymlreplace()
  • Added editor.getCharacterPointer() that returns a string
  • Added notepad.getPluginVersion() to get version of Python Script

0.9.0.1
  • Fixed Console not showing in a Notepad++ that had never had Python Script installed
  • Removed useless extra PythonScript.dll

0.9.0.0
  • A massive amount of work on code cleanup, including many bug fixes and potential bug fixes, from Jocelyn Legault
  • A Lint test now passes clean, thanks to Joce's code cleanup
  • Python updated to 2.7.1, and patched to support loading modules from Unicode paths under Windows
  • Unicode paths for scripts and lib now supported (with patched python27.dll)
  • Many improvements to console Unicode support. The console is now UTF-8
  • Python module bug fixes for the /MT compilation (bz2 module, for instance, didn't previously work properly)
  • Python unit tests now pass cleanly for the patched version, with the exception of trying to load MSVCR90.dll directly, which will never work when compiled with /MT
  • Bugfix in config dialog always displaying user scripts when first opened

0.8.0.0
  • Fixed startup bug (many thanks to Stefan for helping track it down)
  • Updated Scintilla wrapper to 2.21
  • Added support for dynamic command IDs, for Notepad++ 5.8 and upwards (i.e. faster and safer menu processing)
  • Updated to Python 2.7
  • Removed Python's dependency on Visual C++ Runtime
  • Added Python modules for SQLite, socket, XML and a few others
  • Fixed bug with notepad.setStatusBar
  • Fixed bug with notepad.runPluginCommand
  • Fixed bug with clearing notepad callbacks from within a callback


0.7.0.0
  • Parser for errors / warnings in console
  • Bug fixed in Scintilla callback handling
  • Caching in runMenuCommand and runPluginCommand
  • notepad.messageBox defaults added
  • editor.getWord() and editor.getCurrentWord()
  • console.editor object added, to allow for scheme changes etc
  • Console line endings tidied up
  • console.run can now be run from within an event handler
  • runMenuCommand and runPluginCommand crashes fixed
  • Added Run Previous Script feature
  • Console context menu added
  • Fixed bug with Machine scripts not showing in Configuration dialog (reported by ufo-pu55y)



0.6.3.0 Initial release