Adapted from #848 to basically copy the reply tag and create it again as a hash tag filter.
Kudos to ryanberg, not me.
will be in use on my website soon (www.dougalmatthews.com) for a demo.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | # OBSOLETED BY http://djangosnippets.org/snippets/1738/
from django.utils.safestring import mark_safe
from django import template
import re
register = template.Library()
@register.filter(name='at_reply')
def twitter_at_reply(tweet):
pattern = re.compile(r"(\A|\W)@(?P<user>\w+)(\Z|\W)")
repl = (r'\1@<a href="http://twitter.com/\g<user>"'
r' title="\g<user> on Twitter">\g<user></a>\3')
return mark_safe(pattern.sub(repl, tweet))
@register.filter(name='hash_tag')
def twitter_hash_tag(tweet):
pattern = re.compile(r"(\A|\W)#(?P<hashtag>[A-Za-z]+)(\Z|\W)")
repl = (r'\1#<a href="http://search.twitter.com/search?q=\g<hashtag>"'
r' title="#\g<hashtag> search Twitter">\g<hashtag></a>\3')
return mark_safe(pattern.sub(repl, tweet))
|
More like this
- find even number by Rajeev529 2 months, 3 weeks ago
- Form field with fixed value by roam 3 months, 2 weeks ago
- New Snippet! by Antoliny0919 3 months, 3 weeks ago
- Add Toggle Switch Widget to Django Forms by OgliariNatan 6 months, 2 weeks ago
- get_object_or_none by azwdevops 10 months ago
Comments
This needs to be adapted for the case of more than one user name or hashtag in the tweet. not had time to do it yet...
#
Please login first before commenting.