summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-07-05sfeed_atom: the updated field is mandatory: use the current time...Hiltjo Posthuma
... if it is missing/invalid.
2020-07-05sfeed_atom: fix timezone, output if timestamp is setHiltjo Posthuma
Timezone should be GMT (as intended), do not convert to localtime.
2020-06-25README: small tweaks and a filter example improvementHiltjo Posthuma
This is a "quick&dirty" regex to block some of the typical 1px width or height tracking pixels.
2020-06-21sfeed_html/sfeed_frames: simplify struct feed allocationHiltjo Posthuma
There's no need for a dynamic struct feed **. The required size is known (argc). Just allocate it in one go.
2020-06-21Makefile: tiny compatibility improvement for tar -cfHiltjo Posthuma
2020-06-10Makefile: pedantic change: use ar -rc instead of ar rcHiltjo Posthuma
2020-06-04sfeed.{1,5}: clarify the timestamp field a bitHiltjo Posthuma
In particular for RSS feeds where a pubDate is optional.
2020-06-04sfeed_atom: make the output more conformHiltjo Posthuma
- Set mandatory entry tags: id, updated. - Change entry published (optional tag) to updated (mandatory). - Add <feed> tags: author name, id, updated, title. Thanks lich for the feedback and testing.
2020-06-01fix typoHiltjo Posthuma
2020-05-28sfeed: simplify/optimize checking end tags while inside a RSS/Atom tagHiltjo Posthuma
Instead of a binary search do set a pointer to the assigned expected end tag. This makes more sense and is also a minor optimization. No behavioural change intended.
2020-05-27util: encodeuri: simplify conditionHiltjo Posthuma
iscntrl is c < ' ' || c == 127 I want to encode a space and everything above 127 also. So this condition can be simplified to this.
2020-05-15README: fix indentation for fdm.conf examplesHiltjo Posthuma
No functional difference, but it should improve readability.
2020-05-13sfeed_gopher: if a gopher url cannot be parsed then show it anyway as a "URL:"Hiltjo Posthuma
This should never be able to happen though in practise because sfeed parses the uri aswell.
2020-05-13sfeed_gopher: do not use URL: prefix for gopher:// urls.Hiltjo Posthuma
Support the Gopher protocol directly and use the specified Gopher type. Idea by adc, thanks!
2020-05-04bump version to 0.9.17Hiltjo Posthuma
2020-05-02style.css: sort attributeHiltjo Posthuma
2020-05-02style.css: improve horizontal scrolling for long titles/small windowsHiltjo Posthuma
2020-05-01README: update tested platformsHiltjo Posthuma
- HPPA in qemu (OpenBSD). - FreeDOS + djgpp (+ wget with networking) in 32-bit mode.
2020-04-27sfeed_mbox: fallback author to feedname, not "unknown"Hiltjo Posthuma
For the author "unknown" is not a good indicator. Just fallback to the feedname if the exact author of the feed item is not known/set by the feed.
2020-04-27sfeed_mbox: remove prefix in subjectHiltjo Posthuma
The prefix in the subject can be too much/redundant if custom labels are used in the mail client for example. Filtering or custom labels can be made using the X-Feedname header. For mutt it can be useful to use the header X-Label and use the %y format specified to indicate the label. The index_format is described in the muttrc man page. An example: set index_format = "%4C %Z %[%a, %b %d %H:%M] %?y?%-15.15y ?%-15.15L (%?l?%4l&%4c?) %s" Other programs have similar headers: Dovecat has "X-Keywords" and Thunderbird "X-Mozilla-Keys".
2020-04-01util: improve/cleanup parseline()Hiltjo Posthuma
- remove a check that has no use/can never happen. - remove the return value as it's unused and the input size is known. - fix an old comment that doesn't reflect what the function does anymore.
2020-03-15sfeed_mbox: time parsing and consistency fixesHiltjo Posthuma
- make converting time error out as the other format tools do also. - remove wrong comment. - make code-style consistent.
2020-03-15man pages (section 1): document exit statusHiltjo Posthuma
Document it so it can be relied upon in scripts.
2020-03-15sfeed_twtxt: fix error message if gmtime() fails, "localtime" -> "gmtime"Hiltjo Posthuma
2020-03-15sfeed_mbox: POSIX defines gmtime_r sets errno, so use err(), not errx()Hiltjo Posthuma
2020-03-11sfeed_web: fix exit status codeHiltjo Posthuma
- Fix a theoretical issue where "found" can overflow and return a zero exit status when there are many feeds found. - When there are no RSS/Atom feeds this is not an error, so return 0. - Style: change unsigned int to int.
2020-03-11README: update tested environmentsHiltjo Posthuma
2020-03-11sfeed_html/sfeed_frames: fix bold markup for lynxHiltjo Posthuma
The previous style was not bold: <b><a href="">some link</a></b> The following link is now bold: <a href=""><b>some link</b></a>
2020-03-10sfeed_html/sfeed_frames: use a <pre> section per feedHiltjo Posthuma
This improves output with Dillo, w3m and possibly other simple browsers. - Dillo has a bug where it resets its block-style after <h2> when it is inside <pre>. Then it ignores newlines (inside <pre>) and the links are inlined. - w3m does not have a (line)margin for h2.
2020-03-10sfeed_plain: optimize utf8-decoding and column position calculationHiltjo Posthuma
Optimize for the common-case: assuming ASCII. The input is assumed to be valid UTF-8 input (output of sfeed). This saves 2 function calls for determining the width of a single ASCII character, which of course is 1. Ranges: < 32 are control-characters and are skipped. < 127 is typical ASCII and is 1 column wide. >= 127 is the normal path (control-character and multi-byte UTF-8). Tested on OpenBSD and Linux with various compilers (clang, gcc, pcc and tcc). On OpenBSD and Linux glibc much improvement. On Linux musl (almost) no change. In a common-case upto 40% performance improvement. In the worst-case negligible performance degration (<1%).
2020-02-23bump version to 0.9.16Hiltjo Posthuma
2020-02-23sfeed_update: don't preserve permissions of tmp files by moving, so copyHiltjo Posthuma
noticed on DragonFlyBSD where it prints a warning when moving the file from /tmp. To reproduce it: touch /tmp/file mv /tmp/file ~/ On other systems this would not print a warning, but it would preserve the group permissions etc.
2020-02-06README: simplify sfeed_archive example using awkHiltjo Posthuma
Also use a more portable date +'%s' (remove -j). NOTE though: date +'%s' is not POSIX, but it is supported in most cases.
2020-02-04sfeed_update: tiny style fix in commentHiltjo Posthuma
2020-02-04man page improvementsHiltjo Posthuma
- sfeedrc.5: use the same order as executed in the sfeed_update file. - sfeedrc.5: reference iconv and curl, which are option, but used by default. - sfeedrc.5: use a .Sh VARIABLES section for sfeedpath and maxjobs. - sfeed_update.1: split config format-specific documentation and reference it. - just use the term "url" instead of "uri". - shorten some texts, increasing readability.
2020-02-01sync README.xml comment about white-space handlingHiltjo Posthuma
2020-01-24cleanup some includesHiltjo Posthuma
2020-01-23improve man pages, some rewordings and add a referenceHiltjo Posthuma
2020-01-18minor style: use plain int for xml_entitytostr()Hiltjo Posthuma
2020-01-18improve XML entity conversionHiltjo Posthuma
- return -1 for invalid XML entities. - separate between NUL (&#0;) and invalid entities: although both are unwanted in sfeed. - validate the number range more strictly and don't wrap to unsigned. entities lik: "&#-1;" are handled as invalid now. "&#;" is also invalid instead of the same as "&#0;".
2020-01-18sfeed_opml_import: use code-style pattern similar to other programsHiltjo Posthuma
2020-01-18sfeed_web: remove unneeded optimizationHiltjo Posthuma
2020-01-18style.css: sort properties alphabeticallyHiltjo Posthuma
2020-01-18bump LICENSE year to 2020Hiltjo Posthuma
2020-01-18improve README a bitHiltjo Posthuma
2020-01-18add sfeed_gopher: generic gopher formatting program, remove sfeed_gphHiltjo Posthuma
2019-11-25bump version to 0.9.15Hiltjo Posthuma
2019-11-24README: add rss2email OPML import exampleHiltjo Posthuma
2019-11-24sfeed_opml_import: improve import with nested <outline>Hiltjo Posthuma
This nested format is used by Mozilla Thunderbird: <outline title=""> <outline type="rss" title="" text="" xmlUrl=""/> </outline> other tests: - newsboat -e uses the title attribute, not text. - rss2email 3.x, r2e opmlexport uses type, text and xmlUrl (correct).
2019-11-24OPML export improvementsHiltjo Posthuma
- set type="rss", this is mandatory for OPML2 (although we use OPML v1). This fixes importing OPML with Mozilla Thunderbird. other: - Do not set the optional htmlUrl. This was (ab)used for the baseurl. - awk: set FS using the awk -F option (no need for OFS here). - awk: remove forced C locale.