]> Sergey Matveev's repositories - feeder.git/blobdiff - doc/usage.texi
x-urlopen.sh
[feeder.git] / doc / usage.texi
index c99e5a8e1f306c2b9ffc5c61699cf891d3a6ed60..8af779f66c5fcd35fbee28ea2b97fbb954171c4e 100644 (file)
@@ -36,44 +36,39 @@ $ cat feeds/blog.stargrave.org_russian_feed.atom/url
 http://blog.stargrave.org/russian/feed.atom
 @end example
 
-@item Download your feed(s) data
-
-Downloading is implemented in @command{redo}'s
-@file{default.download.do} file. Probably you want to change its default
-@env{$PROXY} value. It uses @command{curl}, that is aware of
-@code{If-Modified-Since} and @code{ETag} headers, compressed content
-encodings and HTTP redirections.
+@file{urls2feeds.zsh} won't touch already existing directories and will
+warn if some of them disappeared from @file{urls}.
 
-You can invoke feed downloading like that:
+@item Download your feed(s) data
 
 @example
-$ redo feeds/blog.stargrave.org_russian_feed.atom/feed.download
+$ cmd/download.sh feeds/blog.stargrave.org_russian_feed.atom
+$ ./feeds-download.zsh # to invoke parallel downloading of everything
 @end example
 
+Probably you want to change its default @env{$PROXY} value. It uses
+@command{curl}, that is aware of @code{If-Modified-Since} and
+@code{ETag} headers, compressed content encodings and HTTP redirections.
 If you want to see verbose output, then set @env{FEEDER_CURL_VERBOSE=1}.
 
-As a rule, you wish to run all feeds downloading in parallel. You can
-use @file{feeds-download.zsh}, that just invokes @command{redo-ifchange}
-with @option{-f} option (forceful rebuild). Why that? Because most
-@command{redo} implementations (that forces target building) do not
-parallelize specified targets build. But you can also use @command{parallel}:
+@item Parse your feeds
 
 @example
-$ parallel "redo @{@}/feed.download" ::: feeds/*
+$ cmd/parse.sh feeds/blog.stargrave.org_russian_feed.atom
+$ ./feeds-parse.zsh # to parse all feeds in parallel
 @end example
 
-@item Parse your feeds
-
-Parsing (and Maildir filling) is implemented in @command{redo}'s
-@file{default.parse.do} file. It calls @command{cmd/feed2mdir/feed2mdir}
-utility, that read @file{feeds/FEED/feed} from stdin, takes Maildir
-directory as its first argument and prints feed's title.
-
-You can use @file{feeds-parse.zsh} helper or invoke @command{parallel}
-as in example above, replacing @code{.download} with @code{.parse}.
+@item Quick overview of the news:
 
 @example
-$ ./feeds-parse.zsh
+$ ./feeds-news.zsh
+habr.com_ru_rss_interesting: 7
+habr.com_ru_rss_news: 3
+lobste.rs_rss: 3
+naked-science.ru_?yandex_feed=news: 1
+planet.fsfe.org_atom.xml: 1
+www.astronews.ru_astronews.xml: 1
+www.darkside.ru_news_rss: 5
 @end example
 
 @item Run Mutt
@@ -120,6 +115,12 @@ And again this is made for convenience. It will mark both new
 (@strong{N}) and old-but-unread (@strong{O}) messages as read. You will
 see left tag-marks near each message to understand what was touched.
 
+@item Press @code{o} to open links and enclosures URLs
+
+Do it in pager mode and you message will be piped to
+@file{cmd/x-urlview.sh}, that will show all @code{X-URL}
+and @code{X-Enclosure} links.
+
 @item Index your messages
 
 @example
@@ -170,7 +171,31 @@ workers. @command{cmd/feed2mdir/feed2mdir} command by default has
 @item If you want to clean download state
 
 @example
-$ redo feeds/FEED/feed.clean
+$ cmd/download-clean.sh feed/FEED
 @end example
 
+@anchor{Enclosures}
+@item Download enclosures
+
+Many feeds include links to so-called enclosures, like audio files for
+podcasts. While you mail is not processed by MUA, its @file{new/}
+messages still there, you can run enclosure downloading process, that
+uses @url{https://www.gnu.org/software/wget/, GNU Wget}. Specify the
+directory where your enclosures should be placed. Each enclosure's
+filename is more or less filesystem-friendly with the current timestamp
+in it.
+
+@example
+$ mkdir path/to/enclosures
+$ ./feeds-encs.zsh path/to/enclosures
+[...]
+traffic.libsyn.com_monsterfeet_grue_018.mp3-20220218-152822
+[...]
+$ file path/to/enclosures/traffic.libsyn.com_monsterfeet_grue_018.mp3-20220218-152822
+path/to/...: Audio file with ID3 version 2.2.0, contains:MPEG ADTS, layer III, v1,  96 kbps, 44.1 kHz, Monaural
+@end example
+
+@command{feeds-encs.zsh} do not parallelize jobs, because enclosure are
+often heavy enough to satiate your Internet link.
+
 @end table