Compare commits

...

2 Commits

Author SHA1 Message Date
pictuga 6021b912ff morss: fix item removal
Usual issue when editing a list while looping over it
2020-07-06 19:25:48 +02:00
pictuga f18a128ee6 Change :first for :newest
i.e. toggle default for the more-obvious option
2020-07-06 19:25:17 +02:00
3 changed files with 9 additions and 9 deletions

View File

@ -91,7 +91,7 @@ The arguments are:
- `debug`: to have some feedback from the script execution. Useful for debugging - `debug`: to have some feedback from the script execution. Useful for debugging
- `force`: force refetch the rss feed and articles - `force`: force refetch the rss feed and articles
- `silent`: don't output the final RSS (useless on its own, but can be nice when debugging) - `silent`: don't output the final RSS (useless on its own, but can be nice when debugging)
- `first`: return the feed items in the order they initially appear in the feed (morss ohterwise shows the newest items first) - `newest`: return the feed items in chronological order (morss ohterwise shows the items by appearing order)
- http server only - http server only
- `callback=NAME`: for JSONP calls - `callback=NAME`: for JSONP calls
- `cors`: allow Cross-origin resource sharing (allows XHR calls from other servers) - `cors`: allow Cross-origin resource sharing (allows XHR calls from other servers)

View File

@ -343,15 +343,15 @@ def FeedGather(rss, url, options):
if options.cache: if options.cache:
max_time = 0 max_time = 0
if options.first: if options.newest:
# :first to just take the first items in the feed (in sequence) # :newest take the newest items
sorted_items = rss.items
else:
# otherwise, take the _newest_, i.e. sort by time
now = datetime.now(tz.tzutc()) now = datetime.now(tz.tzutc())
sorted_items = sorted(rss.items, key=lambda x:x.updated or x.time or now, reverse=True) sorted_items = sorted(rss.items, key=lambda x:x.updated or x.time or now, reverse=True)
else:
# default behavior, take the first items (in appearing order)
sorted_items = list(rss.items)
for i, item in enumerate(sorted_items): for i, item in enumerate(sorted_items):
if time.time() - start_time > lim_time >= 0 or i + 1 > lim_item >= 0: if time.time() - start_time > lim_time >= 0 or i + 1 > lim_item >= 0:
log('dropped') log('dropped')

View File

@ -192,8 +192,8 @@
</select> </select>
link of the link of the
<select> <select>
<option value="">newest</option> <option value="">first</option>
<option value=":first" title="Return the feed items in the order they appear in the feed (morss ohterwise shows the newest items first)">first (?)</option> <option value=":newest" title="Select feed items by publication date (instead of appearing order)">newest (?)</option>
</select> </select>
items and items and
<select> <select>