rtv
Browse Reddit from your terminal
TLDR
Open the front page
Open a subreddit
Expand/collapse comments
Open link
Log in
Display help
SYNOPSIS
rtv [OPTIONS] [SUBREDDIT]
PARAMETERS
-h, --help
Show the program's help message and exit.
-s SUBREDDIT, --subreddit SUBREDDIT
Open a specific subreddit directly on startup (e.g., rtv linux).
-l, --login
Authenticate with Reddit using OAuth. This typically opens a browser for the authorization flow.
-i, --inbox
Open the user's inbox directly.
-u USER, --user USER
View a specific user's profile.
-V, --version
Show the program's version number and exit.
--copy-oauth-url
Copy the OAuth URL to the clipboard instead of opening a browser.
--config-path PATH
Specify a custom path for the configuration directory.
--log-level LEVEL
Set the logging verbosity (e.g., DEBUG, INFO, WARNING, ERROR).
--submission URL
Open a specific Reddit submission given its URL.
--theme NAME
Specify a custom theme name to use for the interface.
DESCRIPTION
rtv (Reddit Terminal Viewer) is a lightweight, open-source command-line interface application that allows users to browse and interact with Reddit directly from their terminal. It's built using Python and utilizes the PRAW (Python Reddit API Wrapper) library.
It provides a text-based browsing experience for subreddits, posts, comments, and user profiles, mimicking much of the functionality of the web interface in a console-friendly format. Users can upvote/downvote, comment, submit posts, and save content without leaving their terminal. It is particularly useful for users who prefer keyboard navigation or want to reduce distractions, offering a pure terminal-based Reddit experience.
CAVEATS
rtv is not a standard Linux command and must be installed separately, typically via Python's pip or a distribution's package manager. Full interactive features (like voting or commenting) require a Reddit account and authentication.
It relies on the Reddit API, which means its functionality can be affected by API changes or rate limits. While it supports links to external media, it does not natively display rich media like images or videos within the terminal.
INSTALLATION
rtv is typically installed using Python's package installer: pip install rtv. On some Linux distributions, it might be available through the native package manager (e.g., sudo apt install rtv on Debian/Ubuntu, sudo dnf install rtv on Fedora).
KEYBINDINGS AND NAVIGATION
rtv heavily relies on keyboard shortcuts for efficient navigation and interaction. Common keybindings include j/k for navigating posts/comments, a/z for upvote/downvote, c to comment on a post, / to search, and q to quit. A comprehensive list of keybindings is available within the application by pressing ?.
CONFIGURATION
Users can customize rtv's behavior and appearance through a configuration file, usually located at ~/.config/rtv/rtv.cfg. This file allows setting default subreddits, custom themes, logging preferences, and more.
HISTORY
rtv was created by Michael Lazar and quickly gained traction among Linux users and terminal enthusiasts for its unique approach to browsing Reddit. Its development has been largely community-driven, adapting to Reddit API changes and expanding its feature set to provide a comprehensive terminal-based experience. It embodies the philosophy of highly efficient, keyboard-centric command-line tools.