mirror of
https://github.com/zedeus/nitter
synced 2026-09-05 22:59:31 +00:00
parent
c136e47748
commit
3e290eab6a
1 changed files with 56 additions and 2 deletions
|
|
@ -12,7 +12,7 @@
|
||||||
#elif retweet.len > 0: prefix = &"RT by @{retweet}: "
|
#elif retweet.len > 0: prefix = &"RT by @{retweet}: "
|
||||||
#elif tweet.reply.len > 0: prefix = &"R to @{tweet.reply[0]}: "
|
#elif tweet.reply.len > 0: prefix = &"R to @{tweet.reply[0]}: "
|
||||||
#end if
|
#end if
|
||||||
#var text = stripHtml(tweet.text)
|
#var text = strutils.splitWhitespace(stripHtml(tweet.text)).join(" ")
|
||||||
##if unicode.runeLen(text) > 32:
|
##if unicode.runeLen(text) > 32:
|
||||||
## text = unicode.runeSubStr(text, 0, 32) & "..."
|
## text = unicode.runeSubStr(text, 0, 32) & "..."
|
||||||
##end if
|
##end if
|
||||||
|
|
@ -34,6 +34,12 @@
|
||||||
# end case
|
# end case
|
||||||
# end if
|
# end if
|
||||||
#end if
|
#end if
|
||||||
|
#if result.len == 0 and tweet.articlePreview.isSome:
|
||||||
|
# let art = tweet.articlePreview.get()
|
||||||
|
# if art.title.len > 0:
|
||||||
|
# result = prefix & xmltree.escape(art.title)
|
||||||
|
# end if
|
||||||
|
#end if
|
||||||
#if result.len == 0 and tweet.card.isSome:
|
#if result.len == 0 and tweet.card.isSome:
|
||||||
# let card = tweet.card.get()
|
# let card = tweet.card.get()
|
||||||
# if card.kind notin {hidden, unknown} and card.title.len > 0:
|
# if card.kind notin {hidden, unknown} and card.title.len > 0:
|
||||||
|
|
@ -69,6 +75,8 @@ Twitter feed for: ${desc}. Generated by ${getUrlPrefix(cfg)}
|
||||||
#proc renderRssCard(card: Card; prefs: Prefs; urlPrefix: string): string =
|
#proc renderRssCard(card: Card; prefs: Prefs; urlPrefix: string): string =
|
||||||
#let cardLink = if card.url.startsWith("/"): urlPrefix & card.url else: replaceUrls(card.url, prefs)
|
#let cardLink = if card.url.startsWith("/"): urlPrefix & card.url else: replaceUrls(card.url, prefs)
|
||||||
#let title = xmltree.escape(card.title)
|
#let title = xmltree.escape(card.title)
|
||||||
|
<hr/>
|
||||||
|
<b>Link</b><br>
|
||||||
#if cardLink.len > 0:
|
#if cardLink.len > 0:
|
||||||
<a href="${xmltree.escape(cardLink)}">
|
<a href="${xmltree.escape(cardLink)}">
|
||||||
#end if
|
#end if
|
||||||
|
|
@ -87,11 +95,49 @@ Twitter feed for: ${desc}. Generated by ${getUrlPrefix(cfg)}
|
||||||
#if card.text.len > 0:
|
#if card.text.len > 0:
|
||||||
<p>${xmltree.escape(card.text)}</p>
|
<p>${xmltree.escape(card.text)}</p>
|
||||||
#end if
|
#end if
|
||||||
#if card.dest.len > 0:
|
#if cardLink.len > 0:
|
||||||
|
# let destText = if card.dest.len > 0: xmltree.escape(card.dest) else: xmltree.escape(cardLink)
|
||||||
|
<small><a href="${xmltree.escape(cardLink)}">${destText}</a></small>
|
||||||
|
#elif card.dest.len > 0:
|
||||||
<small>${xmltree.escape(card.dest)}</small>
|
<small>${xmltree.escape(card.dest)}</small>
|
||||||
#end if
|
#end if
|
||||||
#end proc
|
#end proc
|
||||||
#
|
#
|
||||||
|
#proc renderRssArticle(article: ArticlePreview; urlPrefix: string): string =
|
||||||
|
#let link = urlPrefix & "/i/article/" & $article.tweetId
|
||||||
|
<hr/>
|
||||||
|
<b>Article</b><br>
|
||||||
|
<a href="${link}">
|
||||||
|
#if article.coverImage.len > 0:
|
||||||
|
<img src="${urlPrefix}${getPicUrl(article.coverImage)}" style="max-width:250px;" />
|
||||||
|
#end if
|
||||||
|
#if article.title.len > 0:
|
||||||
|
# if article.coverImage.len > 0:
|
||||||
|
<br>
|
||||||
|
# end if
|
||||||
|
<b>${xmltree.escape(article.title)}</b>
|
||||||
|
#end if
|
||||||
|
</a>
|
||||||
|
#if article.previewText.len > 0:
|
||||||
|
<p>${xmltree.escape(article.previewText)}</p>
|
||||||
|
#end if
|
||||||
|
#end proc
|
||||||
|
#
|
||||||
|
#proc renderRssPoll(poll: Poll): string =
|
||||||
|
<hr/>
|
||||||
|
<b>Poll</b>
|
||||||
|
<p>
|
||||||
|
#for i in 0 ..< poll.options.len:
|
||||||
|
# let perc = if poll.votes > 0: poll.values[i] / poll.votes * 100 else: 0.0
|
||||||
|
# let pct = (&"{perc:.0f}").strip(chars={'.'})
|
||||||
|
# let line = pct & "% — " & xmltree.escape(poll.options[i])
|
||||||
|
${line}<br>
|
||||||
|
#end for
|
||||||
|
#let votesStr = insertSep($poll.votes, ',')
|
||||||
|
<i>${votesStr} votes • ${xmltree.escape(poll.status)}</i>
|
||||||
|
</p>
|
||||||
|
#end proc
|
||||||
|
#
|
||||||
#proc getTweetsWithPinned(profile: Profile): seq[Tweets] =
|
#proc getTweetsWithPinned(profile: Profile): seq[Tweets] =
|
||||||
#result = profile.tweets.content
|
#result = profile.tweets.content
|
||||||
#if profile.pinned.isSome and result.len > 0:
|
#if profile.pinned.isSome and result.len > 0:
|
||||||
|
|
@ -114,7 +160,9 @@ Twitter feed for: ${desc}. Generated by ${getUrlPrefix(cfg)}
|
||||||
#let tweet = tweet.retweet.get(tweet)
|
#let tweet = tweet.retweet.get(tweet)
|
||||||
#let urlPrefix = getUrlPrefix(cfg)
|
#let urlPrefix = getUrlPrefix(cfg)
|
||||||
#let text = replaceUrls(tweet.text, prefs, absolute=urlPrefix)
|
#let text = replaceUrls(tweet.text, prefs, absolute=urlPrefix)
|
||||||
|
#if text.len > 0:
|
||||||
<p>${text.replace("\n", "<br>\n")}</p>
|
<p>${text.replace("\n", "<br>\n")}</p>
|
||||||
|
#end if
|
||||||
#if tweet.media.len > 0:
|
#if tweet.media.len > 0:
|
||||||
# for media in tweet.media:
|
# for media in tweet.media:
|
||||||
${renderRssMedia(media, tweet, urlPrefix)}
|
${renderRssMedia(media, tweet, urlPrefix)}
|
||||||
|
|
@ -122,6 +170,12 @@ ${renderRssMedia(media, tweet, urlPrefix)}
|
||||||
#elif tweet.card.isSome and tweet.card.get().kind notin {hidden, unknown}:
|
#elif tweet.card.isSome and tweet.card.get().kind notin {hidden, unknown}:
|
||||||
${renderRssCard(tweet.card.get(), prefs, urlPrefix)}
|
${renderRssCard(tweet.card.get(), prefs, urlPrefix)}
|
||||||
#end if
|
#end if
|
||||||
|
#if tweet.articlePreview.isSome:
|
||||||
|
${renderRssArticle(tweet.articlePreview.get(), urlPrefix)}
|
||||||
|
#end if
|
||||||
|
#if tweet.poll.isSome:
|
||||||
|
${renderRssPoll(tweet.poll.get())}
|
||||||
|
#end if
|
||||||
#if tweet.note.len > 0 and not prefs.hideCommunityNotes:
|
#if tweet.note.len > 0 and not prefs.hideCommunityNotes:
|
||||||
<p><b>Community note:</b> ${replaceUrls(tweet.note, prefs, absolute=urlPrefix)}</p>
|
<p><b>Community note:</b> ${replaceUrls(tweet.note, prefs, absolute=urlPrefix)}</p>
|
||||||
#end if
|
#end if
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue