sfeed_update/sfeedrc: add url as parameter to the filter() and order() function… | |
git clone git://git.codemadness.org/sfeed | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 96d7afc7d7511f05ba07c5acbb5bbfb2847bc126 | |
parent 21790adad1672689225efe38b6a59494181d323b | |
Author: Hiltjo Posthuma <[email protected]> | |
Date: Fri, 9 Jun 2023 14:40:40 +0200 | |
sfeed_update/sfeedrc: add url as parameter to the filter() and order() function | |
This might make it easier to set filters or ordering by pattern matching on a | |
group of feeds by the feed URL. For example youtube or reddit feeds. | |
Another way which was already possible is prefixing names with for example: | |
"reddit somename" or "yt somename". | |
Diffstat: | |
M README | 2 +- | |
M sfeed_update | 8 ++++---- | |
M sfeedrc.5 | 10 +++++++--- | |
3 files changed, 12 insertions(+), 8 deletions(-) | |
--- | |
diff --git a/README b/README | |
@@ -336,7 +336,7 @@ filtering items per feed. It can be used to shorten URLs, f… | |
advertisements, strip tracking parameters and more. | |
# filter fields. | |
- # filter(name) | |
+ # filter(name, url) | |
filter() { | |
case "$1" in | |
"tweakers") | |
diff --git a/sfeed_update b/sfeed_update | |
@@ -71,7 +71,7 @@ parse() { | |
} | |
# filter fields. | |
-# filter(name) | |
+# filter(name, url) | |
filter() { | |
cat | |
} | |
@@ -83,7 +83,7 @@ merge() { | |
} | |
# order by timestamp (descending). | |
-# order(name) | |
+# order(name, url) | |
order() { | |
sort -t ' ' -k1rn,1 | |
} | |
@@ -124,7 +124,7 @@ _feed() { | |
fi | |
rm -f "${tmpfeedfile}.utf8" | |
- if ! filter "${name}" < "${tmpfeedfile}.tsv" > "${tmpfeedfile}.filter"… | |
+ if ! filter "${name}" "${feedurl}" < "${tmpfeedfile}.tsv" > "${tmpfeed… | |
log_error "${name}" "FAIL (FILTER)" | |
return 1 | |
fi | |
@@ -142,7 +142,7 @@ _feed() { | |
fi | |
rm -f "${tmpfeedfile}.filter" | |
- if ! order "${name}" < "${tmpfeedfile}.merge" > "${tmpfeedfile}.order"… | |
+ if ! order "${name}" "${feedurl}" < "${tmpfeedfile}.merge" > "${tmpfee… | |
log_error "${name}" "FAIL (ORDER)" | |
return 1 | |
fi | |
diff --git a/sfeedrc.5 b/sfeedrc.5 | |
@@ -1,4 +1,4 @@ | |
-.Dd January 18, 2023 | |
+.Dd June 9, 2023 | |
.Dt SFEEDRC 5 | |
.Os | |
.Sh NAME | |
@@ -101,13 +101,15 @@ URL of the feed. | |
Base URL of the feed links. | |
This argument allows to fix relative item links. | |
.El | |
-.It Fn filter "name" | |
+.It Fn filter "name" "url" | |
Filter | |
.Xr sfeed 5 | |
data from stdin and write it to stdout, its arguments are: | |
.Bl -tag -width Ds | |
.It Fa name | |
Feed name. | |
+.It Fa url | |
+URL of the feed. | |
.El | |
.It Fn merge "name" "oldfile" "newfile" | |
Merge | |
@@ -121,13 +123,15 @@ Old file. | |
.It Fa newfile | |
New file. | |
.El | |
-.It Fn order "name" | |
+.It Fn order "name" "url" | |
Sort | |
.Xr sfeed 5 | |
data from stdin and write it to stdout, its arguments are: | |
.Bl -tag -width Ds | |
.It Fa name | |
Feed name. | |
+.It Fa url | |
+URL of the feed. | |
.El | |
.El | |
.Sh EXAMPLES |