/addic7ed-ruby

Ruby script to fetch subtitles on Addic7ed (auto-downloader)

Primary LanguageRubyMIT LicenseMIT

ℹ️ Upcoming Design Breaking Changes

I'm currently working on a full rewrite which will introduce some heavily breaking changes, including:

  • a complete API refactor (almost a full rewrite) to enforce code quality, maintainability and single responsability principle
  • documentation!
  • the removal of any CLI feature (they will be moved to a separate addic7ed-ruby-cli gem)

I'll publish some beta versions of the gem before merging the PR into master and releasing a final version (remember that the gem will no longer include a CLI tool). I'd love to receive some feedback about it, so feel free to send me an email.

addic7ed-ruby

Build Status Dependency Status Code Climate Coverage Status Gem Version security

Ruby command-line script to fetch subtitles on Addic7ed

Is it working ?

Until next time Addic7ed break their HTML/CSS structure, yes 😄

How to use it ?

  1. Install it:

    $ gem install addic7ed
  2. Use it (e.g. to download a French subtitle for a "Californication" episode):

    $ addic7ed -l fr /path/to/Californication.S06E07.720p.HDTV.x264-2HD.mkv
  3. A wild Californication.S06E07.720p.HDTV.x264-2HD.fr.srt file appears

  4. Enjoy your show 📺

Are there any options ?

Sure !

$ addic7ed -h
Usage: addic7ed [options] <file1> [<file2>, <file3>, ...]
    -l, --language [LANGUAGE]        Language code to look subtitles for (default: French)
        --no-hi                      Only download subtitles without Hearing Impaired lines
    -a, --all-subtitles              Display all available subtitles
    -n, --do-not-download            Do not download the subtitle
    -f, --force                      Overwrite existing subtitle
    -u, --untagged                   Do not include language code in subtitle filename
    -v, --[no-]verbose               Run verbosely
    -q, --quiet                      Run without output (cron-mode)
    -d, --debug                      Debug mode [do not use]
    -h, --help                       Show this message
    -L, --list-languages             List all available languages
    -V, --version                    Show version number

How to contribute ?

Feel free to submit a Pull Request, I'd be glad to review/merge it.

Also, if you like the awesome work done by the Addic7ed team, please consider donating to them !

Notes

Addic7ed restricts the number of subtitle download to 15 per 24h (30 per 24h for registered users, and 55 for VIP users).

Don't get mad, they have to pay for their servers, you know.

Ho, and by the way, please, please: do not hammer their servers, play fair !

Roadmap

There's some work remaining:

  • Support registered users
  • Support directory parsing
  • Support "hearing impaired" versions
  • Document code
  • Test cli behaviour
  • Colorize output
  • Write doc for cron usage
  • Write doc for iwatch usage

Supported Ruby versions

This projet supports the following Ruby versions/implementations:

  • Ruby 2.0 (MRI)
  • Ruby 2.1 (MRI)
  • Ruby 2.2 (MRI)
  • Ruby 2.3 (MRI)
  • Rubinius
  • JRuby

⚠️ Rubinius users may have to manually install RubySL before they can use addic7ed-ruby:

$ gem install rubysl

License

This project is released under the terms of the MIT license. See LICENSE.md file for details.