This commit is contained in:
Michael Lazar
2015-03-10 21:06:21 -07:00
2 changed files with 30 additions and 11 deletions

View File

@@ -8,19 +8,30 @@ import requests
from .errors import SubmissionURLError, SubredditNameError
is_utf8 = True
def clean(unicode_string):
"""
Convert unicode string into ascii-safe characters.
Checks if -a was given, if it was it
converts unicode string into ascii-safe characters.
"""
if not is_utf8:
if six.PY2:
ascii_string = unicode_string.encode('ascii', 'replace')
else:
ascii_string = unicode_string.encode().decode('ascii', 'replace')
if six.PY2:
ascii_string = unicode_string.encode('ascii', 'replace')
ascii_string = ascii_string.replace('\\', '')
return ascii_string
else:
ascii_string = unicode_string.encode().decode('ascii', 'replace')
if six.PY2:
utf8_string = unicode_string.encode('utf-8', 'replace')
else:
utf8_string = unicode_string.encode().decode('utf-8', 'replace')
ascii_string = ascii_string.replace('\\', '')
return ascii_string
utf8_string = utf8_string.replace('\\', '')
return utf8_string
def split_text(big_text, width):

View File

@@ -7,6 +7,8 @@ from .errors import SubmissionURLError, SubredditNameError
from .utils import curses_session, load_config, HELP
from .subreddit import SubredditPage
from .submission import SubmissionPage
import locale
import rtv.content
# Debugging
# import logging
@@ -21,9 +23,9 @@ EPILOG = """
Controls
-----
RTV currently supports browsing both subreddits and individual submissions.
In each mode the controls are slightly different. In subreddit mode you can
browse through the top submissions on either the front page or a specific
subreddit. In submission mode you can view the self text for a submission and
In each mode the controls are slightly different. In subreddit mode you can
browse through the top submissions on either the front page or a specific
subreddit. In submission mode you can view the self text for a submission and
browse comments.
"""
@@ -36,9 +38,11 @@ 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='forces ascii (disables unicode)', action='store_true')
group = parser.add_argument_group(
'authentication (optional)',
'authentication (optional)',
'Authenticating allows you to view your customized front page. '
'If only the username is given, the password will be prompted '
'securely.')
@@ -56,6 +60,10 @@ def main():
if args.subreddit is None:
args.subreddit = 'front'
if args.force_ascii:
rtv.content.is_utf8 = False
locale.setlocale(locale.LC_ALL, '')
try:
reddit = praw.Reddit(user_agent='desktop:https://github.com/michael-lazar/rtv:(by /u/civilization_phaze_3)')
reddit.config.decode_html_entities = True
@@ -73,7 +81,7 @@ def main():
page.loop()
except InvalidUserPass:
print('Invalid password for username: {}'.format(args.username))
print('Invalid password for username: {}'.format(args.username))
except KeyboardInterrupt:
return