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.
RTV is built in python using the curses library.
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
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.
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 |
Some actions require that you be logged in to your reddit account. To log in you can either:
- provide your username as a command line argument
-u
(your password will be securely prompted), or - 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 |
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
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 |
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
.
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
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
Please see CHANGELOG.rst.
Please see CONTRIBUTORS.rst.
Please see LICENSE.