v0.8.4.1, 06Nov2014, 'misc084' branch, binary not released
- Unicode-related fixes and improvements:
-- Modified TinyXml2's load/save to support unicode file names.
-- Adds an XML declaration if it is missing from the global properties file. However, NPP saves session files without a declaration.
-- Rewrote the 'pth' functions to be more unicode safe.
-- The debug log file name and messages can now be unicode.
-- No longer includes 'tchar.h' and no longer uses _T, TCHAR and related macros. Uses wide chars and wide stdlib and Win32 functions explicitly. Still defines UNICODE and _UNICODE.
-- Session files are read/written as UTF-8. The 'settings.ini' file is still read/written as UTF-16LE &ndash; keep that in mind if you edit the file manually. I may eventually change that file to XML format and UTF-8 encoding.
-- Writes pathnames in session files (using sourceforge.net/projects/utfcpp) in the format NPP requires: all chars < 32 or > 126 are converted to entities.
- Renamed 'file-properties.xml' to 'global.xml'. Sorry for the non-back-compat change. You can just rename the old file to the new name.
- Improved error handling and messages, but it needs more testing.
- Using dynamic allocation in many places instead of static buffers.
- Using newer style for BrowseForFolder (should be supported by 98, ME and above).
- On startup, cleans the global file properties file by removing File elements whose files do not exist on disk.
- Implemented an API that can be called by NPP or other plugins. Documented in 'SessionMgrApi.h'.