Improved filtering for rng
I’ve just uploaded a new version of reportbug-ng including an Italian and a Hebrew pony and a cool enhancement to the buglist filter: Now the filter doesn’t try to match the whole string anymore but splits the input by whitespaces and tries to match all words. Now you can even exclude words by prepending a leading minus to it.
The Syntax for the filter is: [-]keyword [[-]keyword2] ...
Multiple keywords are separated by whitespaces and can have a leading minus. A leading minus means “exclude” the whitespaces represent the logical AND.
Some Examples:
foo bar -baz
means all bugs containing the words foo, bar and not bazoutstanding -wishlist
means all bugs which are outstanding and not wishlist-resolved
will show all open bugs
Please note the the filter does look into the actual bugreports (the fulltext), it currently tries to match against the packagename, the bugnumber, the summary, the status and the severity.
The best thing about this new filter? It’s not even slower than the old one,
the only delay you’ll notice is when filtering packages with a huge amount of
bugs (like wnpp) and even there the filter just needs a fraction of a second.
The delay of a few secons comes acutally from the QTable when I remove all the
rows not matching the filter. QTable.hideRow(int)
and -showRow(int)
seem
to be very expensive even when I temporary disable all graphic updates for
this widget during this operation. If someone knows a trick to circumvent
this, please tell me (you may get a pony…).
This feature isn’t spectacular, but it should make filtering big buglists a lot easier.