Luminarys/synapse

sycli ergonomics with filtering

Closed this issue · 2 comments

I think the search/filter syntax as implemented on receptor would work better for the --filter option in sycli than the current requirement for json input.

I'd be happy to implement if you think its a good direction

syntax description

You can search for torrents using the search box at the top of the page. By default, it will search through torrent titles. You can also search other properties of torrents with propertyoperatorvalue, where operator is one of the following:

  • : matches values that contain value
  • == matches values that are equal to value
  • != matches values that are not equal to value
  • > matches values that are greater than value
  • >= matches values that are greater than or equal to value
  • < matches values that are less than value
  • <= matches values that are less than or equal to value

The following torrent properties are searchable:

  • name: torrent name
  • path: download path
  • status: paused | pending | leeching | idle | seeding | hashing | error
  • size: size in bytes
  • progress: progress from 0 to 1
  • priority: 1-5, low to high
  • availability: how much is available from the swarm, 0 to 1
  • rate_up: rate up in bits/sec
  • rate_down: rate down in bits/sec
  • throttle_up: throttle up in bits/sec
  • throttle_down: throttle down in bits/sec
  • transferred_up: total transfer up in bits/sec
  • transferred_down: total transfer down in bits/sec
  • tracker: tracker url
  • peers: number of peers
  • trackers: number of trackers
  • files: number of files

Here are some example searches:

  • status:seeding
  • status:idle
  • rate_up>1048576
  • files>1
  • files==1
  • progress<0.1
  • tracker:archlinux.org

I'm all for implementing this, please go ahead if you're interested.

will do, it might be a couple days before I get started. got school work to turn in first :)