diff options
-rwxr-xr-x | sfeed_update | 8 | ||||
-rw-r--r-- | sfeedrc.5 | 15 |
2 files changed, 21 insertions, 2 deletions
diff --git a/sfeed_update b/sfeed_update index 3cf575c..ff9a44a 100755 --- a/sfeed_update +++ b/sfeed_update @@ -55,6 +55,12 @@ convertencoding() { fi } +# parse and convert input, by default XML to the sfeed(5) TSV format. +# parse(name, feedurl, basesiteurl) +parse() { + sfeed "$3" +} + # filter fields. # filter(name) filter() { @@ -115,7 +121,7 @@ feed() { fi rm -f "${tmpfeedfile}.fetch" - if ! sfeed "${basesiteurl}" < "${tmpfeedfile}.utf8" > "${tmpfeedfile}.tsv"; then + if ! parse "${name}" "${feedurl}" "${basesiteurl}" < "${tmpfeedfile}.utf8" > "${tmpfeedfile}.tsv"; then log "${name}" "FAIL (CONVERT)" return fi @@ -1,4 +1,4 @@ -.Dd January 11, 2021 +.Dd January 24, 2021 .Dt SFEEDRC 5 .Os .Sh NAME @@ -86,6 +86,19 @@ To text-encoding. By default the tool .Xr iconv 1 is used. +.It Fn parse "name" "feedurl" "basesiteurl" +Parse and convert RSS/Atom XML to the +.Xr sfeed 5 +TSV format. +.Bl -tag -width Ds +.It Fa name +Name of the feed. +.It Fa feedurl +Url of the feed. +.It Fa basesiteurl +Baseurl of the feed links. +This argument allows to fix relative item links. +.El .It Fn filter "name" Filter .Xr sfeed 5 |