Merge branch 'master' into unicode_investigation

Conflicts:
	rtv/content.py
	rtv/main.py
	rtv/submission.py
	rtv/subreddit.py
This commit is contained in:
Michael Lazar
2015-03-12 21:29:17 -07:00
7 changed files with 23 additions and 16 deletions

1
.gitignore vendored
View File

@@ -1,2 +1,3 @@
.*
*.pyc
scripts/*

View File

@@ -48,6 +48,7 @@ RTV currently supports browsing both subreddits and individual submissions. In e
:``▲``/``▼`` or ``j``/``k``: Scroll to the prev/next item
:``o``: Open the selected item in the default web browser
:``r`` or ``F5``: Refresh the current page
:``?``: Show the help message
:``q``: Quit
**Subreddit Mode**

View File

@@ -3,6 +3,7 @@ from datetime import datetime
from contextlib import contextmanager
import praw
import six
import requests
from .errors import SubmissionURLError, SubredditNameError
@@ -123,6 +124,7 @@ class BaseContent(object):
sub_author = (comment.submission.author.name if
getattr(comment.submission, 'author') else '[deleted]')
data['is_author'] = (data['author'] == sub_author)
data['flair'] = (comment.author_flair_text if comment.author_flair_text else "")
return data
@@ -147,6 +149,7 @@ class BaseContent(object):
else '[deleted]')
data['permalink'] = sub.permalink
data['subreddit'] = strip_subreddit_url(sub.permalink)
data['flair'] = (sub.link_flair_text if sub.link_flair_text else "")
data['url_full'] = sub.url
data['url'] = ('selfpost' if is_selfpost(sub.url) else sub.url)
@@ -342,11 +345,11 @@ class SubredditContent(BaseContent):
# there is is no other way to check things like multireddits that
# don't have a real corresponding subreddit object.
content = cls(display_name, submissions, loader)
#try:
try:
content.get(0)
#except:
# # TODO: Trap specific errors
# raise SubredditNameError(display_name)
except:
# TODO: Trap specific errors
raise SubredditNameError(display_name)
return content

View File

@@ -45,8 +45,8 @@ def main():
formatter_class=argparse.RawDescriptionHelpFormatter)
parser.add_argument('-s', dest='subreddit', help='subreddit name')
parser.add_argument('-l', dest='link', help='full link to a submission')
parser.add_argument('--force-ascii', dest='force_ascii',
help='disable unicode', action='store_true')
parser.add_argument('--unicode', help='enable unicode (beta)',
action='store_true')
group = parser.add_argument_group(
'authentication (optional)',
@@ -64,7 +64,7 @@ def main():
if getattr(args, key) is None:
setattr(args, key, val)
utils.FORCE_ASCII = args.force_ascii
utils.UNICODE = args.unicode
if args.subreddit is None:
args.subreddit = 'front'

View File

@@ -99,8 +99,7 @@ class SubmissionPage(BasePage):
@staticmethod
def draw_comment(win, data, inverted=False):
import logging
_logger = logging.getLogger(__name__)
n_rows, n_cols = win.getmaxyx()
n_cols -= 1
@@ -114,13 +113,15 @@ class SubmissionPage(BasePage):
attr = curses.A_BOLD
attr |= (Color.BLUE if not data['is_author'] else Color.GREEN)
win.addnstr(row, 1, clean(text), n_cols-1, attr)
text = ' {flair}'.format(**data)
win.addnstr(clean(text), n_cols-win.getyx()[1], curses.A_BOLD | Color.YELLOW)
text = ' {score} {created}'.format(**data)
win.addnstr(clean(text), n_cols - win.getyx()[1])
n_body = len(data['split_body'])
for row, text in enumerate(data['split_body'], start=offset+1):
if row in valid_rows:
win.addnstr(row, 1, clean(text), n_cols-50)
win.addnstr(row, 1, clean(text), n_cols-1)
# Vertical line, unfortunately vline() doesn't support custom color so
# we have to build it one chr at a time.
@@ -174,6 +175,8 @@ class SubmissionPage(BasePage):
attr = curses.A_BOLD | Color.GREEN
text = '{author}'.format(**data)
win.addnstr(row, 1, clean(text), n_cols, attr)
text = ' {flair}'.format(**data)
win.addnstr(clean(text), n_cols-win.getyx()[1], curses.A_BOLD | Color.YELLOW)
text = ' {created} {subreddit}'.format(**data)
win.addnstr(clean(text), n_cols - win.getyx()[1])

View File

@@ -150,3 +150,5 @@ class SubredditPage(BasePage):
win.addnstr(row, 1, clean(text), n_cols-1, curses.A_BOLD)
text = ' {subreddit}'.format(**data)
win.addnstr(clean(text), n_cols - win.getyx()[1], Color.YELLOW)
text = ' {flair}'.format(**data)
win.addnstr(clean(text), n_cols - win.getyx()[1], Color.RED)

View File

@@ -22,10 +22,7 @@ setup(
'Operating System :: POSIX',
'Natural Language :: English',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3.1',
'Programming Language :: Python :: 3.2',
'Programming Language :: Python :: 3.3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3',
'Topic :: Terminals',
'Topic :: Internet :: WWW/HTTP :: Dynamic Content :: Message Boards',
'Topic :: Internet :: WWW/HTTP :: Dynamic Content :: News/Diary',