Oops. Two related bugs: The constant wildcard is not saved in prefs (fixed for 3.7.1), and the filter code is a bit off for the file dialog (also fixed for 3.7.1). I will probably make another release tomorrow night, let 3.7.0 get some air to see if any other bugs are hanging out.
Another minor bug: when you right click on a tab
which is NOT the current tab, and choose 'close'
or 'close all other tabs', the operation is applied
to the current tab, and not to the clicked-on tab.
... and a feature request: in most (but not all
editing environments, shift-bacskpace does the same
thing as backspace (i.e. delete-left). With DrPython,
shift-backspace inserts a backspace. I can see how this could be useful to some people, but I tend to use the backspace key a lot, especially when typing complicated expressions, and having to take my thumb off the shift key to make it work really messes me up.
I have inserted this code into drText.py, maybe this isn't a good way to do this, but it seems to work:
def OnKeyDown(self, event):
>>> if event.m_keyCode== 8:
>>> event.m_shiftDown = False # no shift for BS
Maybe this could be a user option.
I got the tab bit fixed.
Now the backspace bit is a bug (it does not seem to work that way in scintilla). So how to fix it?
There does not seem to be an "insert backspace" command I can override, so basically leaving backspace + shift ends up inserting the extra character.
Of course, doing anything to permantently disable this would keep users from being able to use this combination for something else.
So I decided to assign it by default to an unused bit, which happens to behave exactly like backspace.
Two birds with one stone, so to speak.
The only downside is if anyone unsets this setting,
then the backspace bug will return.
Scanning for such a situation in the code seems like a bit too much of a performance hit.