Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/dahlia/nicovideo-translator

Nico Nico Douga (ニコニコ動画) Comment Translator
https://github.com/dahlia/nicovideo-translator

agplv3 haskell niconico nicovideo proxy-server translator

Last synced: 25 days ago
JSON representation

Nico Nico Douga (ニコニコ動画) Comment Translator

Awesome Lists containing this project

README

        

Nico Nico Douga (ニコニコ動画) Comment Translator
=================================================

[![Build Status][0]][1]
[![Docker Automated Build][2]][3]
[![Hackage][4]][5]

[0]: https://travis-ci.org/dahlia/nicovideo-translator.svg
[1]: https://travis-ci.org/dahlia/nicovideo-translator
[2]: https://img.shields.io/docker/automated/dahlia/nicovideo-translator.svg
[3]: https://hub.docker.com/r/dahlia/nicovideo-translator/
[4]: https://img.shields.io/hackage/v/nicovideo-translator.svg
[5]: https://hackage.haskell.org/package/nicovideo-translator

Quick start using Docker
------------------------

The official Docker image is provided:

$ docker pull dahlia/nicovideo-translator

You need to provide a required environment variable `GOOGLE_TRANSLATE_API_KEY`
to use Google Translate API, and may want to set an optional environment
variable `LANG` which means the target language. The exposed port number is
8080:

$ docker run \
-e GOOGLE_TRANSLATE_API_KEY=EiP3NSgLid81OjSwpOMkgV0rzD9SLHRqwqUwx2r \
-e LANG=ko \
-p 80:8080 \
dahlia/nicovideo-translator

Installation
------------

You can install it using `cabal`:

$ cabal install nicovideo-translator

Aliasing `nmsg.nicovideo.jp` to localhost
-----------------------------------------

To make the translator to intercept comments from Nico Nico comment server,
you have to alias Nico Nico comment server domain (`nmsg.nicovideo.jp`) to
your localhost (`127.0.0.1`). Open your [hosts file][6] using text editor
(you probably need administrator permission), and then add the following line:

127.0.0.1 nmsg.nicovideo.jp

[6]: http://en.wikipedia.org/wiki/Hosts_%28file%29

Proxy server
------------

The translator behaves as a proxy server, so it has to be running while
you watch Nico Nico videos. You can invoke the proxy server using CLI
(you probably need administrator permission to listen 80 port):

$ nicovideo-translator EiP3NSgLid81OjSwpOMkgV0rzD9SLHRqwqUwx2r
Running on http://0.0.0.0:80/ (Press ^C to quit)
Upstream: nmsg.nicovideo.jp (202.248.110.173)

Note that it takes a [Google Translate API][7] key as its first argument.

You can terminate the server by pressing Ctrl-C.

It can optionally take the target language which is a two-letter
e.g. `en`, `ko` through `-l`/`--lang`/`--language` option:

$ nicovideo-translator -l ko

[7]: https://cloud.google.com/translate/

Open source
-----------

It's written by [Hong Minhee][8], and distributed under [AGPLv3][].
You can find the source code from the [Git repository][9]:

$ git clone git://github.com/dahlia/nicovideo-translator

Please report bugs to the [issue tracker][10] if you find.
Pull requests welcome!

[8]: https://hongminhee.org/
[9]: https://github.com/dahlia/nicovideo-translator
[10]: https://github.com/dahlia/nicovideo-translator/issues
[AGPLv3]: http://www.gnu.org/licenses/agpl-3.0.html