vixip
このコミットが含まれているのは:
コミット
a1f3ea2eda
|
@ -36,6 +36,12 @@ proc getConfig*(path: string): (Config, parseCfg.Config) =
|
|||
|
||||
replaceYouTube: cfg.get("Preferences", "replaceYouTube", "youtube.owacon.moe"),
|
||||
replaceOdysee: cfg.get("Preferences", "replaceOdysee", "odysee.owacon.moe"),
|
||||
replacePixivA: cfg.get("Preferences", "replacePixivA", "pixiv.owacon.moe/artworks/?id="),
|
||||
replacePixivU: cfg.get("Preferences", "replacePixivU", "pixiv.owacon.moe/users/?id="),
|
||||
replacePixivB: cfg.get("Preferences", "replacePixivB", "pixiv.owacon.moe/users/bookmarks/?id="),
|
||||
replacePixivI: cfg.get("Preferences", "replacePixivI", "pixiv.owacon.moe/users/illusts/?id="),
|
||||
replacePixivM: cfg.get("Preferences", "replacePixivM", "pixiv.owacon.moe/users/manga/?id="),
|
||||
replacePixiv: cfg.get("Preferences", "replacePixiv", "pixiv.owacon.moe"),
|
||||
|
||||
# Config
|
||||
hmacKey: cfg.get("Config", "hmacKey", "secretkey"),
|
||||
|
|
|
@ -15,6 +15,12 @@ let
|
|||
ytRegex = re(r"([A-z.]+\.)?youtu(be\.com|\.be)", {reStudy, reIgnoreCase})
|
||||
igRegex = re"(www\.)?instagram\.com"
|
||||
odRegex = re"(www\.)?(odysee\.com|lbry\.tv|open\.lbry\.com)"
|
||||
pxaRegex = re"(www\.)?(pixiv\.net)/artworks/"
|
||||
pxuRegex = re"(www\.)?(pixiv\.net)/users/"
|
||||
pxbRegex = re"(www\.)?(pixiv\.net)/users/bookmarks/"
|
||||
pxiRegex = re"(www\.)?(pixiv\.net)/users/illusts/"
|
||||
pxmRegex = re"(www\.)?(pixiv\.net)/users/manga/"
|
||||
pxRegex = re"(www\.)?(pixiv\.net)"
|
||||
|
||||
rdRegex = re"(?<![.b])((www|np|new|amp|old)\.)?reddit.com"
|
||||
rdShortRegex = re"(?<![.b])redd\.it\/"
|
||||
|
@ -64,6 +70,24 @@ proc replaceUrls*(body: string; prefs: Prefs; absolute=""): string =
|
|||
if prefs.replaceOdysee.len > 0:
|
||||
result = result.replace(odRegex, prefs.replaceOdysee)
|
||||
|
||||
if prefs.replacePixivA.len > 0:
|
||||
result = result.replace(pxaRegex, prefs.replacePixivA)
|
||||
|
||||
if prefs.replacePixivU.len > 0:
|
||||
result = result.replace(pxuRegex, prefs.replacePixivU)
|
||||
|
||||
if prefs.replacePixivB.len > 0:
|
||||
result = result.replace(pxbRegex, prefs.replacePixivB)
|
||||
|
||||
if prefs.replacePixivI.len > 0:
|
||||
result = result.replace(pxiRegex, prefs.replacePixivI)
|
||||
|
||||
if prefs.replacePixivM.len > 0:
|
||||
result = result.replace(pxmRegex, prefs.replacePixivM)
|
||||
|
||||
if prefs.replacePixiv.len > 0:
|
||||
result = result.replace(pxRegex, prefs.replacePixiv)
|
||||
|
||||
if prefs.replaceTwitter.len > 0 and ("twitter.com" in body or tco in body):
|
||||
result = result.replace(tco, https & prefs.replaceTwitter & "/t.co")
|
||||
result = result.replace(cards, prefs.replaceTwitter & "/cards")
|
||||
|
|
|
@ -115,6 +115,30 @@ genPrefs:
|
|||
"オディシー → Librarian"
|
||||
placeholder: "odysee.owacon.moe"
|
||||
|
||||
replacePixivA(input, "pixiv.owacon.moe/artworks/?id="):
|
||||
"Vixipイラスト"
|
||||
placeholder: "pixiv.owacon.moe/artworks/?id="
|
||||
|
||||
replacePixivU(input, "pixiv.owacon.moe/users/?id="):
|
||||
"Vixipユーザー"
|
||||
placeholder: "pixiv.owacon.moe/users/?id="
|
||||
|
||||
replacePixivB(input, "pixiv.owacon.moe/users/bookmarks/?id="):
|
||||
"Vixipユーザーのブックマーク"
|
||||
placeholder: "pixiv.owacon.moe/users/bookmarks/?id="
|
||||
|
||||
replacePixivI(input, "pixiv.owacon.moe/users/illusts/?id="):
|
||||
"Vixipユーザーのイラスト"
|
||||
placeholder: "pixiv.owacon.moe/users/illusts/?id="
|
||||
|
||||
replacePixivM(input, "pixiv.owacon.moe/users/manga/?id="):
|
||||
"Vixipユーザーの漫画"
|
||||
placeholder: "pixiv.owacon.moe/users/manga/?id="
|
||||
|
||||
replacePixiv(input, "pixiv.owacon.moe"):
|
||||
"Pixiv → vixip"
|
||||
placeholder: "pixiv.owacon.moe"
|
||||
|
||||
iterator allPrefs*(): Pref =
|
||||
for k, v in prefList:
|
||||
for pref in v:
|
||||
|
|
|
@ -272,6 +272,12 @@ type
|
|||
replaceTwitter*: string
|
||||
replaceYouTube*: string
|
||||
replaceOdysee*: string
|
||||
replacePixivA*: string
|
||||
replacePixivU*: string
|
||||
replacePixivB*: string
|
||||
replacePixivI*: string
|
||||
replacePixivM*: string
|
||||
replacePixiv*: string
|
||||
replaceReddit*: string
|
||||
replaceInstagram*: string
|
||||
|
||||
|
|
|
@ -78,7 +78,7 @@ Twitter feed for: ${desc}. Generated by ${cfg.hostname}
|
|||
#end proc
|
||||
#
|
||||
#proc renderTimelineRss*(profile: Profile; cfg: Config; multi=false): string =
|
||||
#let prefs = Prefs(replaceTwitter: cfg.hostname, replaceYouTube: cfg.replaceYouTube, replaceOdysee: cfg.replaceOdysee)
|
||||
#let prefs = Prefs(replaceTwitter: cfg.hostname, replaceYouTube: cfg.replaceYouTube, replaceOdysee: cfg.replaceOdysee, replacePixivA: cfg.replacePixivA, replacePixivU: cfg.replacePixivU, replacePixivB: cfg.replacePixivB, replacePixivI: cfg.replacePixivI, replacePixivM: cfg.replacePixivM, replacePixiv: cfg.replacePixiv)
|
||||
#let urlPrefix = getUrlPrefix(cfg)
|
||||
#result = ""
|
||||
#let handle = (if multi: "" else: "@") & profile.user.username
|
||||
|
@ -110,7 +110,7 @@ ${renderRssTweets(profile.tweets.content, cfg)}
|
|||
#end proc
|
||||
#
|
||||
#proc renderListRss*(tweets: seq[Tweet]; list: List; cfg: Config): string =
|
||||
#let prefs = Prefs(replaceTwitter: cfg.hostname, replaceYouTube: cfg.replaceYouTube, replaceOdysee: cfg.replaceOdysee)
|
||||
#let prefs = Prefs(replaceTwitter: cfg.hostname, replaceYouTube: cfg.replaceYouTube, replaceOdysee: cfg.replaceOdysee, replacePixivA: cfg.replacePixivA, replacePixivU: cfg.replacePixivU, replacePixivB: cfg.replacePixivB, replacePixivI: cfg.replacePixivI, replacePixivM: cfg.replacePixivM, replacePixiv: cfg.replacePixiv)
|
||||
#let link = &"{getUrlPrefix(cfg)}/i/lists/{list.id}"
|
||||
#result = ""
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
@ -128,7 +128,7 @@ ${renderRssTweets(tweets, cfg)}
|
|||
#end proc
|
||||
#
|
||||
#proc renderSearchRss*(tweets: seq[Tweet]; name, param: string; cfg: Config): string =
|
||||
#let prefs = Prefs(replaceTwitter: cfg.hostname, replaceYouTube: cfg.replaceYouTube, replaceOdysee: cfg.replaceOdysee)
|
||||
#let prefs = Prefs(replaceTwitter: cfg.hostname, replaceYouTube: cfg.replaceYouTube, replaceOdysee: cfg.replaceOdysee, replacePixivA: cfg.replacePixivA, replacePixivU: cfg.replacePixivU, replacePixivB: cfg.replacePixivB, replacePixivI: cfg.replacePixivI, replacePixivM: cfg.replacePixivM, replacePixiv: cfg.replacePixiv)
|
||||
#let link = &"{getUrlPrefix(cfg)}/search"
|
||||
#let escName = xmltree.escape(name)
|
||||
#result = ""
|
||||
|
|
新しいイシューから参照