Files
tuir/rtv/main.py

32 lines
1.1 KiB
Python

import argparse
import praw
from utils import curses_session, LoadScreen
from content import SubredditContent
from subreddit import SubredditPage
parser = argparse.ArgumentParser(description='Reddit Terminal Viewer')
parser.add_argument('-s', dest='subreddit', default='front', help='subreddit name')
parser.add_argument('-l', dest='link', help='full link to a specific submission')
group = parser.add_argument_group('authentication (optional)')
group.add_argument('-u', dest='username', help='reddit username')
group.add_argument('-p', dest='password', help='reddit password')
def main(args):
r = praw.Reddit(user_agent='reddit terminal viewer v0.0')
r.config.decode_html_entities = True
if args.username and args.password:
r.login(args.username, args.password)
with curses_session() as stdscr:
loader = LoadScreen(stdscr)
content = SubredditContent(r, subreddit=args.subreddit, loader=loader)
page = SubredditPage(stdscr, content)
page.loop()
if __name__ == '__main__':
args = parser.parse_args()
main(args)