Skip to content
This repository has been archived by the owner on Aug 19, 2019. It is now read-only.
/ rtv Public archive
forked from michael-lazar/rtv

Browse Reddit from your terminal

License

Notifications You must be signed in to change notification settings

tesspib/rtv

Repository files navigation

RTV: Reddit Terminal Viewer

RTV is an application that allows you to view and interact with reddit from your terminal. It is compatible with most terminal emulators on Linux and OSX.

http://i.imgur.com/W1hxqCt.png

RTV is built in python using the curses library.


Latest Version Supported Python versions Downloads


Installation

Install using pip

$ sudo pip install rtv

Or clone the repository

$ git clone https://github.com/michael-lazar/rtv.git
$ cd rtv
$ sudo python setup.py install

The installation will place a script in the system path

$ rtv
$ rtv --help

If you're having issues running RTV with Python 2, run RTV as module :

$ cd /path/to/rtv
$ python2 -m rtv

Usage

RTV supports browsing both subreddits and submission comments.

Navigating is simple and intuitive. Move the cursor using either the arrow keys or Vim style movement. Move up and down to scroll through the page. Move right to view the selected submission, and left to exit the submission.

Basic Commands

j/k or /:Move the cursor up/down
m/n or PgUp/PgDn:Jump to the previous/next page
o or ENTER:Open the selected item as a webpage
r or F5:Refresh page content
u:Log in or switch accounts
?:Show the help screen
q:Quit

Authenticated Commands

Some actions require that you be logged in to your reddit account. To log in you can either:

  1. provide your username as a command line argument -u (your password will be securely prompted), or
  2. press u while inside of the program

Once you are logged in your username will appear in the top-right corner of the screen.

a/z:Upvote/downvote
c:Compose a new post or comment
e:Edit an existing post or comment
d:Delete an existing post or comment
s:Open/close subscribed subreddits list

Subreddit Mode

In subreddit mode you can browse through the top submissions on either the front page or a specific subreddit.

l or :Enter the selected submission
/:Open a prompt to switch subreddits
f:Open a prompt to search the current subreddit

The / prompt accepts subreddits in the following formats

  • /r/python
  • /r/python/new
  • /r/python+linux supports multireddits
  • /r/front will redirect to the front page
  • /r/me will display your submissions

Submission Mode

In submission mode you can view the self text for a submission and browse comments.

h or :Return to the subreddit
SPACE:Fold the selected comment, or load additional comments

Configuration

Editor

RTV allows users to compose comments and replies using their preferred text editor (vi, nano, gedit, etc). You can specify which text editor you would like to use by setting the $RTV_EDITOR environment variable.

$ export RTV_EDITOR=gedit

If no editor is specified, RTV will fallback to the system's default $EDITOR, and finally to nano.

Web Browser

RTV has the capability to open links inside of your web browser. By default RTV will use the system's browser. On most systems this corresponds to a graphical browser such as Firefox or Chrome. If you prefer to stay in the terminal, use $BROWSER to specify a console-based web browser. w3m, lynx, and elinks are all good choices.

$ export BROWSER=w3m

Config File

RTV will read two configuration files: * ~/.config/rtv/rtv.cfg (or $XDG_CONFIG_HOME/.rtv) * ~/.config/rtv/oauth.cfg (or $XDG_CONFIG_HOME/.rtv-oauth) Each line in the files will replace the corresponding default argument in the launch script. This can be used to avoid having to re-enter login credentials every time the program is launched.

The OAuth section contains a boolean to trigger auto-login (defaults to false). When authenticated, two additional fields are written : access_token and refresh_token. Those are basically like username and password : they are used to authenticate you on Reddit servers.

Example initial config:

rtv.cfg

[rtv]
# Log file location
log=/tmp/rtv.log

# Default subreddit
subreddit=CollegeBasketball

# Default submission link - will be opened every time the program starts
# link=http://www.reddit.com/r/CollegeBasketball/comments/31irjq

# Turn on ascii-only mode and disable all unicode characters
# This may be necessary for compatibility with some terminal browsers
# ascii=True

oauth.cfg

[oauth]
auto_login=false

Changelog

Please see CHANGELOG.rst.

Contributors

Please see CONTRIBUTORS.rst.

License

Please see LICENSE.

About

Browse Reddit from your terminal

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.0%
  • HTML 1.0%