NotePad++ works well with Windows and files with the ".py" extension in that it recognizes keywords and does an almost adequate job with indentation. Comparing different editors is beyond my intended purpose here.
NotePad++ has a potential indentation problem with intermixing lines that start with tabs "\n\t" with lines that start with blanks "\n " and the JMRI Jython interpreter does not explain why it gets lost, only that the indentation is not correct. Once I realized the cause of this issue, I now always use tabs for indentation, even if this means modifying an otherwise correct sample script.
It should also be noted that if one uses either the triple quote long string or the triple apostrophe long string for a comment, then the beginning line of that comment must be indented to be consistent with the lines before and after that beginning line. This too is much easier to identify with tabs rather than with spaces. Please don't ask how long it took me to figure this out.
Several of the samples in the JMRI distribution jython folder files intermix blanks and tabs and blanks and execute well as-is, but often troubles occur if even a simple modification is made using NotePad++ and not paying attention to the inconsistency. There is an option for setting how many blanks you want the editor to translate as a tab when inserting a new line, but even that has not provided the consistency that JMRI wants to see.
Cliff