/*
-linksexp -- Texinfo/XBEL/OPML autogeneration from recfile bookmark
+linksexp -- Texinfo/XBEL/OPML/urls autogeneration from recfile bookmark
Copyright (C) 2021 Sergey Matveev <stargrave@stargrave.org>
This program is free software: you can redistribute it and/or modify
func main() {
doXBEL := flag.Bool("xbel", false, "Make XBEL")
doOPML := flag.Bool("opml", false, "Make OPML")
+ doURLS := flag.Bool("urls", false, "Make newsboat urls")
flag.Parse()
r := recfile.NewReader(os.Stdin)
+
+ if *doURLS {
+ for {
+ m, err := r.NextMapWithSlice()
+ if err == io.EOF {
+ break
+ }
+ if err != nil {
+ panic(err)
+ }
+ if m["%rec"] != nil {
+ continue
+ }
+ sort.Strings(m["Category"])
+ cats := strings.Join(m["Category"], " ")
+ for _, f := range m["Feed"] {
+ fmt.Println(f, cats)
+ }
+ }
+ os.Exit(0)
+ }
+
if *doOPML {
data := make([]map[string][]string, 0)
for {
case 0:
fmt.Printf(" @emph{STATIC}\n")
case 1:
- fmt.Printf(" @url{%s, feed}\n", feeds[0])
+ fmt.Printf(
+ " @url{%s, feed}\n",
+ strings.ReplaceAll(feeds[0], "@", "@@"),
+ )
default:
for i, feed := range feeds {
fmt.Printf(" @url{%s, feed%d}\n", feed, i)