ソースを参照

Implement requested changes

Curtis 4 年 前
コミット
baf5bf89e7
4 ファイル変更8 行追加3 行削除
  1. 0 1
      src/parser.nim
  2. 6 0
      src/parserutils.nim
  3. 1 1
      src/types.nim
  4. 1 1
      src/views/tweet.nim

+ 0 - 1
src/parser.nim

@@ -3,7 +3,6 @@ import strutils, options, tables, times, math
 import packedjson, packedjson/deserialiser
 import types, parserutils, utils
 import experimental/parser/unifiedcard
-import std/strutils
 
 proc parseUser(js: JsonNode; id=""): User =
   if js.isNull: return

+ 6 - 0
src/parserutils.nim

@@ -133,6 +133,12 @@ proc getTombstone*(js: JsonNode): string =
   result = js{"tombstoneInfo", "richText", "text"}.getStr
   result.removeSuffix(" Learn more")
 
+proc getSource*(js: JsonNode): string =
+  let
+    raw_src = js["source"].getStr
+    src = raw_src.substr(raw_src.find('>') + 1, raw_src.rfind('<') - 1)
+  return src
+
 proc extractSlice(js: JsonNode): Slice[int] =
   result = js["indices"][0].getInt ..< js["indices"][1].getInt
 

+ 1 - 1
src/types.nim

@@ -174,8 +174,8 @@ type
     available*: bool
     tombstone*: string
     location*: string
-    stats*: TweetStats
     source*: string
+    stats*: TweetStats
     retweet*: Option[Tweet]
     attribution*: Option[User]
     mediaTags*: seq[User]

+ 1 - 1
src/views/tweet.nim

@@ -344,7 +344,7 @@ proc renderTweet*(tweet: Tweet; prefs: Prefs; path: string; class=""; index=0;
         renderQuote(tweet.quote.get(), prefs, path)
 
       if mainTweet:
-        p(class="tweet-published"): text getTime(tweet) & " · " & tweet.source
+        p(class="tweet-published"): text &"{getTime(tweet)} · {tweet.source}"
 
       if tweet.mediaTags.len > 0:
         renderMediaTags(tweet.mediaTags)