This is a list of rough ideas. Feel free to contribute your own, ask/answer questions and point out issues.
- Create ‘filter’ command that adds/removes/clears filters of the currently focused list. Make it work similar to the ‘sort’ command.
- Change default keybindings:
- ‘n’ in ‘tabs’ (or ‘main’?) context starts a keychain that opens a torrent/peer/tracker/file list in a new tab.
- ‘f’ in any ‘*list’ context starts a keychain that applies different filters to the currently focused list.
- Implement ‘interactive’ command (see below) and use it to add comparative filters to lists with more ‘f …’ key chains.
In each column header, show an up/down arrow if the list is sorted by it.
Maybe this one? https://en.wikipedia.org/wiki/Moving_average#Exponential_moving_average
The classes exported by `client` should derive from base classes that raise NotImplementedError in all undefined methods and properties.
Figure out how to avoid tons of try: ... except NotImplementedError as e:
log.error(e)
. Maybe with a callback somewhere?