import re
import os
+from io import BytesIO
from twitter.util import printNicely
from functools import wraps
from pyfiglet import figlet_format
# Retrieve tweet
tid = t['id']
- text = t['text']
+ text = t.get('full_text', t.get('text'))
screen_name = t['user']['screen_name']
name = t['user']['name']
created_at = t['created_at']
if favorited:
fav = color_func(c['TWEET']['favorited'])(u'\u2605')
- tweet = text.split()
+ tweet = text.split(' ')
+ tweet = [x for x in tweet if x != '']
# Replace url
if expanded_url:
for index in xrange(len(expanded_url)):
else x,
tweet)
# Highlight screen_name
- tweet = lmap(lambda x: cycle_color(x) if x[0] == '@' else x, tweet)
+ tweet = lmap(
+ lambda x: cycle_color(x) if x.lstrip().startswith('@') else x, tweet)
# Highlight link
tweet = lmap(
lambda x: color_func(c['TWEET']['link'])(x)
- if x.startswith('http')
+ if x.lstrip().startswith('http')
else x,
tweet)
# Highlight hashtag
tweet = lmap(
lambda x: color_func(c['TWEET']['hashtag'])(x)
- if x.startswith('#')
+ if x.lstrip().startswith('#')
else x,
tweet)
# Highlight my tweet
for x in tweet
if not any([
x == 'RT',
- x.startswith('http'),
- x.startswith('#')])
+ x.lstrip().startswith('http'),
+ x.lstrip().startswith('#')])
]
# Highlight keyword
tweet = ' '.join(tweet)
+ tweet = '\n '.join(tweet.split('\n'))
if keyword:
roj = re.search(keyword, tweet, re.IGNORECASE)
if roj:
url = 'URL : ' + (color_func(c['PROFILE']['url'])(url) if url else '')
date = parser.parse(created_at)
clock = fallback_humanize(date)
- clock = 'Join at ' + color_func(c['PROFILE']['clock'])(clock)
+ clock = 'Joined ' + color_func(c['PROFILE']['clock'])(clock)
# Format
line1 = u"{u:>{uw}}".format(
Quoting format
"""
# Retrieve info
- screen_name = '@' + tweet['user']['screen_name']
- text = tweet['text']
+ screen_name = tweet['user']['screen_name']
+ text = tweet['text']
+ tid = str( tweet['id'] )
+
# Validate quote format
if '#owner' not in c['QUOTE_FORMAT']:
printNicely(light_magenta('Quote should contains #owner'))
if '#comment' not in c['QUOTE_FORMAT']:
printNicely(light_magenta('Quote format should have #comment'))
return False
+
# Build formater
formater = ''
try:
formater = c['QUOTE_FORMAT']
- formater = screen_name.join(formater.split('#owner'))
- formater = text.join(formater.split('#tweet'))
- formater = u2str(formater)
+
+ formater = formater.replace('#owner', screen_name)
+ formater = formater.replace('#tweet', text)
+ formater = formater.replace('#tid', tid)
+
formater = emojize(formater)
except:
pass