diff options
-rw-r--r-- | NEWS | 8 | ||||
-rw-r--r-- | README.md | 67 | ||||
-rw-r--r-- | screenshot.png | bin | 10512 -> 0 bytes | |||
-rw-r--r-- | screenshots/screenshot-details-v1.3.png | bin | 0 -> 88422 bytes | |||
-rw-r--r-- | screenshots/screenshot-maincompact-v1.3.png | bin | 0 -> 59637 bytes | |||
-rw-r--r-- | screenshots/screenshot-mainfull-v1.3.png | bin | 0 -> 66183 bytes | |||
-rwxr-xr-x | transmission-remote-cli (renamed from transmission-remote-cli.py) | 4 | ||||
-rw-r--r-- | transmission-remote-cli-bash-completion.sh | 20 |
8 files changed, 74 insertions, 25 deletions
@@ -1,3 +1,11 @@ +1.3.1 2012-06-12 + BUGFIXES: + - Fix wrong progress bar placement calculation for two-column + characters (kanji) + + - Updated bash-completion script, README.md and screenshots + + 1.3 2012-05-23 - Added Bash completion - Estimate time until next ratio milestone is reached @@ -1,32 +1,44 @@ -# A console client for the BitTorrent client [Transmission](http://www.transmissionbt.com/ "Transmission Homepage"). +## About -**Download the latest version for [Transmission 1.90-2.52](http://github.com/fagga/transmission-remote-cli/raw/master/transmission-remote-cli.py).** +A console client for the BitTorrent client [Transmission](http://www.transmissionbt.com/ "Transmission Homepage"). -**Also available in Debian Wheezy / Ubuntu Quantal: `apt-get install transmission-remote-cli`** -## Modules +## Distributions + +- [Arch Linux](https://aur.archlinux.org/packages.php?K=transmission-remote-cli) +- [Debian](http://packages.debian.org/search?keywords=transmission-remote-cli) +- [Fedora](https://admin.fedoraproject.org/pkgdb/acls/list/?searchwords=transmission-remote-cli) +- [OpenSUSE](http://software.opensuse.org/package/transmission-remote-cli?search_term=transmission-remote-cli) +- [Ubuntu](http://packages.ubuntu.com/search?keywords=transmission-remote-cli) + + +## Requirements For Python 2.5 or older, you need [simplejson](http://pypi.python.org/pypi/simplejson/) which should be packaged in any Linux distribution. The Debian/Ubuntu package is called `python-simplejson`. ### Optional Modules (you don't need them but they add features): + - GeoIP: Guess which country peers come from. - adns: Resolve IPs to host names. Debian/Ubuntu package names are `python-adns` and `python-geoip`. -## Connection information +## Usage + +### Connection information + Authentication and host/port can be set via command line with one of these patterns: -`$ transmission-remote-cli.py -c homeserver` -`$ transmission-remote-cli.py -c homeserver:1234` -`$ transmission-remote-cli.py -c johndoe:secretbirthday@homeserver` -`$ transmission-remote-cli.py -c johndoe:secretbirthday@homeserver:1234` +`$ transmission-remote-cli -c homeserver` +`$ transmission-remote-cli -c homeserver:1234` +`$ transmission-remote-cli -c johndoe:secretbirthday@homeserver` +`$ transmission-remote-cli -c johndoe:secretbirthday@homeserver:1234` You can write this (and other) stuff into a configuration file: -`$ transmission-remote-cli.py -c johndoe:secretbirthday@homeserver:1234 --create-config` +`$ transmission-remote-cli -c johndoe:secretbirthday@homeserver:1234 --create-config` No configuration file is created automatically, you have to do this somehow. However, if the file exists, it is re-written when trcli exits to @@ -35,10 +47,11 @@ editing your configuration file. If you don't like the default configuration file path ~/.config/transmission-remote-cli/settings.cfg, change it: -`$ transmission-remote-cli.py -f ~/.trclirc --create-config` +`$ transmission-remote-cli -f ~/.trclirc --create-config` + +### Calling transmission-remote -## Calling transmission-remote transmission-remote-cli forwards all arguments after '--' to transmission-remote. This is useful if your daemon requires authentication and/or doesn't listen on the default localhost:9091 for @@ -47,21 +60,37 @@ the config file and forwards them on to transmission-remote, along with your arguments. Some examples: -`$ transmission-remote-cli.py -- -l` -`$ transmission-remote-cli.py -- -t 2 -i` -`$ transmission-remote-cli.py -- -as` +`$ transmission-remote-cli -- -l` +`$ transmission-remote-cli -- -t 2 -i` +`$ transmission-remote-cli -- -as` -## Add torrents +### Add torrents + If you provide only one command line argument and it doesn't start with '-', it's treated like a torrent file/URL and submitted to the daemon via transmission-remote. This is useful because you can instruct Firefox to open -torrent files with transmission-remote-cli.py. +torrent files with transmission-remote-cli. + +`$ transmission-remote-cli http://link/to/file.torrent` +`$ transmission-remote-cli path/to/some/torrent-file` -`$ transmission-remote-cli.py http://link/to/file.torrent` -`$ transmission-remote-cli.py path/to/some/torrent-file` + +## Screenshots + +![Main window - full, v1.3](transmission-remote-cli/blob/master/screenshots/screenshot-mainfull-v1.3.png) + +![Main window - compact, v1.3](transmission-remote-cli/blob/master/screenshots/screenshot-maincompact-v1.3.png) + +![Info window, v1.3](transmission-remote-cli/blob/master/screenshots/screenshot-details-v1.3.png) + + +## Copyright + +Released under the GPLv3 license, see [COPYING](transmission-remote-cli/blob/master/COPYING) for details. ## Contact + Feel free to request new features or provide bug reports. You can find my email address [here](http://github.com/fagga). diff --git a/screenshot.png b/screenshot.png Binary files differdeleted file mode 100644 index 778f0ab..0000000 --- a/screenshot.png +++ /dev/null diff --git a/screenshots/screenshot-details-v1.3.png b/screenshots/screenshot-details-v1.3.png Binary files differnew file mode 100644 index 0000000..8ba8a32 --- /dev/null +++ b/screenshots/screenshot-details-v1.3.png diff --git a/screenshots/screenshot-maincompact-v1.3.png b/screenshots/screenshot-maincompact-v1.3.png Binary files differnew file mode 100644 index 0000000..34878cf --- /dev/null +++ b/screenshots/screenshot-maincompact-v1.3.png diff --git a/screenshots/screenshot-mainfull-v1.3.png b/screenshots/screenshot-mainfull-v1.3.png Binary files differnew file mode 100644 index 0000000..ea22756 --- /dev/null +++ b/screenshots/screenshot-mainfull-v1.3.png diff --git a/transmission-remote-cli.py b/transmission-remote-cli index abcca78..d9896e1 100755 --- a/transmission-remote-cli.py +++ b/transmission-remote-cli @@ -16,7 +16,7 @@ # http://www.gnu.org/licenses/gpl-3.0.txt # ######################################################################## -VERSION = '1.3' +VERSION = '1.3.1' TRNSM_VERSION_MIN = '1.90' TRNSM_VERSION_MAX = '2.52' @@ -1613,7 +1613,7 @@ class Interface: # terminal, so we have to catch this exception. try: self.pad.addstr(ypos, 0, title[0:bar_width].encode('utf-8'), tag_done) - self.pad.addstr(ypos, bar_width, title[bar_width:].encode('utf-8'), tag) + self.pad.addstr(ypos, len_columns(title[0:bar_width]), title[bar_width:].encode('utf-8'), tag) except: pass else: diff --git a/transmission-remote-cli-bash-completion.sh b/transmission-remote-cli-bash-completion.sh index 2a0cec6..53e7f36 100644 --- a/transmission-remote-cli-bash-completion.sh +++ b/transmission-remote-cli-bash-completion.sh @@ -1,17 +1,29 @@ #!/bin/bash -_transmission-remote-cli.py () { +_transmission-remote-cli () { local cur prev opts _get_comp_words_by_ref cur prev - opts="--version -h --help -c --connect= -s --ssl -f --config= --create-config -n --netrc --debug" + opts="-h --help -v --version -c --connect -s --ssl -f --config --create-config -n --netrc --debug" if [[ ${cur} == -* ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) else - _filedir torrent + case "${prev}" in + -c|--connect) + # no completion, wait for user input + ;; + -f|--config) + # dirs and files + _filedir + ;; + *) + # dirs and torrents + _filedir torrent + ;; + esac fi } -complete -F _transmission-remote-cli.py transmission-remote-cli.py +complete -F _transmission-remote-cli transmission-remote-cli |