It is currently July 17th, 2019, 1:39 pm

illustro Reader skin

Changes made during the Rainmeter 3.0 beta cycle.
User avatar
jsmorley
Developer
Posts: 19287
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

illustro Reader skin

jsmorley » March 17th, 2013, 3:21 pm

The RSS/Atom reader skin has been removed from the default illustro skins and layout on a new installation of Rainmeter. This is due to the pending end of the "Google Reader" service from Google on July 1st. Existing Rainmeter installations will not be effected.

We are exploring alternative approaches, and will create something to replace this skin during the new Rainmeter beta cycle due to start soon.
User avatar
moshi
Posts: 1851
Joined: November 13th, 2012, 9:53 pm

Re: illustro Reader skin

moshi » March 17th, 2013, 5:44 pm

this would be better:

Code: Select all

[Variables]
getItem=(?(?=.*<item>).*<item>(.*)</item>)(?(?=.*<entry>).*<entry>(.*)<entry>)
feedURL=http://rainmeter.net/forum/feed.php

[measureFeed]
Measure=Plugin
Plugin=WebParser.dll
Url=#feedURL#
RegExp="(?siU)(?(?=.*<title>).*<title>(.*)</title>)#getItem##getItem##getItem##getItem##getItem##getItem##getItem##getItem#"
UpdateRate=1500
StringIndex=1
Substitute="":"N/A"




[measureItem1RSSPre]
Measure=Plugin
Plugin=WebParser.dll
Url=[measureFeed]
StringIndex=2
DecodeCharacterReference=1
RegExp="(?siU)(?(?=.*<title>).*<title>(.*)</title>)"

[measureItem1RSS]
Measure=Plugin
Plugin=WebParser.dll
Url=[measureItem1RSSPre]
StringIndex=1
DecodeCharacterReference=1

[measureLink1RSSPre]
Measure=Plugin
Plugin=WebParser.dll
Url=[measureFeed]
StringIndex=2
DecodeCharacterReference=1
RegExp="(?siU)(?(?=.*<link>).*<link>(.*)</link>)"

[measureLink1RSS]
Measure=Plugin
Plugin=WebParser.dll
Url=[measureLink1RSSPre]
StringIndex=1
DecodeCharacterReference=1



[measureItem1AtomPre]
Measure=Plugin
Plugin=WebParser.dll
Url=[measureFeed]
StringIndex=3
DecodeCharacterReference=1
RegExp="(?siU)(?(?=.*<title.*>).*<title.*>(.*)</title>)"

[measureItem1Atom]
Measure=Plugin
Plugin=WebParser.dll
Url=[measureItem1AtomPre]
StringIndex=1
DecodeCharacterReference=1

[measureLink1AtomPre]
Measure=Plugin
Plugin=WebParser.dll
Url=[measureFeed]
StringIndex=3
DecodeCharacterReference=1
RegExp="(?siU)(?(?=.*<link).*<link href="(.*)")"

[measureLink1Atom]
Measure=Plugin
Plugin=WebParser.dll
Url=[measureLink1AtomPre]
StringIndex=1
DecodeCharacterReference=1



[measureItem1]
Measure=Calc
Formula=1
DynamicVariables=1
Substitute="1":"[measureItem1RSS][measureItem1Atom]"

[measureLink1]
Measure=Calc
Formula=1
DynamicVariables=1
Substitute="1":"[measureLink1RSS][measureLink1Atom]"
User avatar
jsmorley
Developer
Posts: 19287
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: illustro Reader skin

jsmorley » March 17th, 2013, 6:01 pm

Clever approach. It would be pretty robust for most common standard feeds.

I think it is a bit complex for use in illustro though. Those skins are meant to be "starter" skins to introduce folks to Rainmeter and as simple skins that people can tear apart to start learning how to create things with the tool. The goal is as much, maybe even more, that it be easy to understand - than that it be highly functional.

I think this is a very cool approach, but I think the sheer number of measures needed to reliably get even one full "item", and the somewhat complex method of using WebParser measures as input to WebParser measures isn't going to be something a new user is going to easily wrap their heads around.

You might want to do a post in Tips and Tricks on this though, I think it is a nice idea that wouldn't occur to most.
User avatar
moshi
Posts: 1851
Joined: November 13th, 2012, 9:53 pm

Re: illustro Reader skin

moshi » March 17th, 2013, 7:13 pm

the only really "easy to understand" option i can think of would be an RSS only reader (and variants of the skin for advanced use). looking forward to see what you guys will do for the final version.
User avatar
moshi
Posts: 1851
Joined: November 13th, 2012, 9:53 pm

Re: illustro Reader skin

moshi » March 17th, 2013, 7:18 pm

jsmorley wrote: You might want to do a post in Tips and Tricks on this though, I think it is a nice idea that wouldn't occur to most.
would need more polish then. considering the Lua/Unicode problem, i should probably do that though.
User avatar
jsmorley
Developer
Posts: 19287
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: illustro Reader skin

jsmorley » March 17th, 2013, 7:33 pm

I think if you look at how FileView works, you can get a hint of the direction our thinking is leaning...

Code: Select all

[MeasureSite]
Measure=Plugin
Plugin=FeedParser
URL=http://rainmeter.net/forum/feed.php
UpdateRate=600
ItemCount=2

[MeasureItem1Title]
Measure=Plugin
Plugin=FeedParser
URL=[MeasureSite]
Type=Title
ItemIndex=1

[MeasureItem1Link]
Measure=Plugin
Plugin=FeedParser
URL=[MeasureSite]
Type=Link
ItemIndex=1

[MeasureItem2Title]
Measure=Plugin
Plugin=FeedParser
URL=[MeasureSite]
Type=Title
ItemIndex=2

[MeasureItem2Link]
Measure=Plugin
Plugin=FeedParser
URL=[MeasureSite]
Type=Link
ItemIndex=2
This is just in the very beginning "idea" stage, but is something we are hoping to explore further.
User avatar
moshi
Posts: 1851
Joined: November 13th, 2012, 9:53 pm

Re: illustro Reader skin

moshi » March 17th, 2013, 7:55 pm

a new plugin? why not, maybe if you also add something like:

Code: Select all

[MeasureItem1Title]
Measure=Plugin
Plugin=FeedParser
URL=[MeasureSite]
Type=JSON
JSONData=title
ItemIndex=1

[MeasureItem1Link]
Measure=Plugin
Plugin=FeedParser
URL=[MeasureSite]
Type=JSON
JSONData=url
ItemIndex=1
it could support JSON feeds as well.

example: http://www.faroo.com/api?q=UFO&start=1&length=5&l=en&src=news&f=json&kwic=false
User avatar
jsmorley
Developer
Posts: 19287
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: illustro Reader skin

jsmorley » March 17th, 2013, 8:08 pm

Probably need to consider both JSON and OPML going forward.
User avatar
moshi
Posts: 1851
Joined: November 13th, 2012, 9:53 pm

Re: illustro Reader skin

moshi » March 17th, 2013, 8:19 pm

i guess you got the types Title, Link, Description and Date.

so it would not need to be Type=JSON but rather Type=Data

and DataType=image would return:

<image>(.*)</image> for RSS
<image.*>(.*)</image> for Atom
"image"="(.*)" for JSON


JSON is really important, at least half of the feeds i use with Evi are JSON-only or at least optional. the JSON feeds sometimes provide more data than their RSS alternatives, have not seen one that would provide less.