It is currently March 28th, 2024, 8:53 pm

Reading Text and Links in a Text file

Get help with creating, editing & fixing problems with skins
NoGoodName
Posts: 5
Joined: April 3rd, 2018, 8:41 am

Reading Text and Links in a Text file

Post by NoGoodName »

Hello,
who can Help me with my first Skin?
I'm trying to make the output Text of my skin dynamic.
I've Uploaded a Textfile, that gets downloaded by a WebParser measure.
Í want the Skin to read the textfile and define, the format of the text, in the file
and I want to have clickable links in the output.

At the moment I have the skin at least this far to look like I want the final version to look like, but some funktions are missing right now.

if somebody knows a certin Documentary or a tutorial would be awesome :)

It's a little difficult for me to descripe my Problem sorry about that :oops:

I've put the Skin as a Attachment.
u may need it to understand how I'm trying to work with the Textfile.
Skin Code:

Code: Select all

;-------------------------------------------------------------
;Algemeine Einstellungen
;-------------------------------------------------------------
[Rainmeter]
Update=#RssFeedSpeed#
DynamicVariables=1
DynamicWindowSize=1
KeepOnScreen=1
ContextTitle=Aktualisieren
ContextAction=[!Refresh "#CURRENTCONFIG#"]
RightMouseDownAction=[!SkinCustomMenu]
Blur=1
SkinHeight=#SkinH#
SkinWidth=#SkinW#
;-------------------------------------------------------------
;Informationen
;-------------------------------------------------------------
[Metadata]
Name=PC-Pool
Author=Gerrit Kupper
Version=2.2
License=Test

[Variables]
;==============================================================
;SkinSize Settings
;==============================================================
SkinW=510
SkinH=235
;==============================================================
;TextFormat Settings
;==============================================================
fontName=tahoma
textSize=10
colorText=255,255,255,255
Colour=255, 255, 255, 225
StringItem=<string>(.*)</string>.*<link>(.*)</link>.*
;==============================================================
;Umlaute
;==============================================================
ü-klein=[\U+00FC]
;==============================================================
;Border Settings
;==============================================================
BorderWidth=0.3
BorderColor=255,255,255,150
;==============================================================
;RSS Settings
;==============================================================
RssFeedSpeed=20
TotalMove=2380

RSSName=Fachbereich Geowissenschaften - IT-Neuigkeiten
RSSUrl=http://www.geo.fu-berlin.de/Verwaltung/it-support/it-neuigkeiten/index.rss?format=rss

RSSFeed=<title>(.*)</title>.*<link>(.*)</link>.*<item>.*
OriginalX=#SkinW#
Y1=(#SkinH#-20)

;--------------------------------------------------------------
;Styles
;-------------------------------------------------------------
[styleTitle]
StringAlign=Left
StringCase=Upper
StringStyle=Bold
StringEffect=Shadow
FontEffectColor=0,0,0,50
FontColor=#colorText#
FontFace=#fontName#
FontSize=#textSize#
AntiAlias=1
ClipString=1


[styleLeftText]
StringAlign=Left
; Meters using styleLeftText will be left-aligned.
StringCase=None
StringStyle=Normal
StringEffect=Shadow
FontEffectColor=0,0,0,20
FontColor=#colorText#
FontFace=#fontName#
FontSize=#textSize#
AntiAlias=1
ClipString=1
InLineSetting=Underline
InLinePattern=Homepage: (.*)
InLineSetting2=Underline
InLinePattern2=box.fu-berlin.de
InLineSetting3=Color | 255,50,90,255 
InLinePattern3=ACHTUNG! KEINE DATENSICHERUNG!
InLineSetting4=Weight | 700
InLinePattern4=ACHTUNG! KEINE DATENSICHERUNG!
InLineSetting5=Color | 255,50,90,255 
InLinePattern5=WARNING! NO DATA BACKUP!
InLineSetting6=Weight | 700
InLinePattern6=WARNING! NO DATA BACKUP!
InLineSetting7=Weight | 700
InLinePattern7=WARNING! You're Offline!
InLineSetting8=Weight | 700
InLinePattern8=ACHTUNG! Sie sind Offline!
InLineSetting9=Color | 255,50,90,255
InLinePattern9=ACHTUNG! Sie sind Offline!
InLineSetting10=Color | 255,50,90,255
InLinePattern10=WARNING! You're Offline!

[styleRightText]
StringAlign=Right
StringCase=None
StringStyle=Bold
StringEffect=Shadow
FontEffectColor=0,0,0,20
FontColor=#colorText#
FontFace=#fontName#
FontSize=#textSize#
AntiAlias=1
ClipString=1

[styleLeftTextRed]
StringAlign=Left
; Meters using styleLeftText will be left-aligned.
StringCase=None
StringStyle=Bold
StringEffect=Shadow
FontEffectColor=0,0,0,20
FontColor=255,50,90,255
FontFace=#fontName#
FontSize=#textSize#
AntiAlias=1
ClipString=1



[styleRightTextRed]
StringAlign=Right
StringCase=None
StringStyle=Bold
StringEffect=Shadow
FontEffectColor=0,0,0,20
FontColor=255,0,0,255
FontFace=#fontName#
FontSize=#textSize#
AntiAlias=1
ClipString=1


[styleTab]
Meter=Image
SolidColor=0,0,0,0
H=0
W=(#SkinW#-70)
X=0
Y=r

[styleRSS]
X=#OriginalX#
Y=R
FontColor=#Colour#
FontFace=#fontName#
FontSize=8
StringEffect=Shadow
StringStyle=Bold
StringAlign=Left
AntiAlias=1


[styleRSS2]
X=30R
Y=r
FontColor=#Colour#
FontFace=#fontName#
FontSize=8
StringEffect=Shadow
StringStyle=Bold
StringAlign=Left
AntiAlias=1

Hidden=0



[styleSeperator]
SolidColor=255,255,255,15
;-------------------------------------------------------------
;Blur
;-------------------------------------------------------------
[BlurBehind]
 Measure=Plugin
 Plugin=FrostedGlass
 UpdateDivider=-1
 ;Default=1 Determines if the blur is enabled or not
 BlurEnabled=1
;-------------------------------------------------------------
;Check Networkconnection
;-------------------------------------------------------------
[MeasureInternet]
Measure=Plugin
Plugin=CheckNet
ConnectionType=Internet
UpdateRate=5
IfBelowValue=0
IfBelowAction=[!SetOption MeterText-DE MeasureName "MeasureLuaScript-DE-NetworkError"][!SetOption MeterText-EN MeasureName "MeasureLuaScript-EN-NetworkError"]
IfAboveValue=0
IfAboveAction=[!SetOption MeterText-DE MeasureName "MeasureLuaScript-DE"][!SetOption MeterText-EN MeasureName "MeasureLuaScript-EN"]

;-------------------------------------------------------------
;Download and Read Textfile
;-------------------------------------------------------------

[GetTextFile-EN]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=https://userpage.fu-berlin.de/gerritkupper/Test-EN.txt
Download=1
DownloadFile=Test-EN.txt
UpdateRate=2000
UpdateDivider=1
OnDownloadErrorAction=

[GetTextFile-DE]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=https://userpage.fu-berlin.de/gerritkupper/Test-DE.txt
Download=1
DownloadFile=Test-DE.txt
UpdateRate=2000
UpdateDivider=1

[MeasureLuaScript-DE]
Measure=Script
ScriptFile="#@#\LuaTextFile.lua"
FileToRead=#CURRENTPATH#\DownloadFile\Test-DE.txt
UpdateRate=2000
UpdateDivider=-1


[MeasureLuaScript-EN]
Measure=Script
ScriptFile="#@#\LuaTextFile.lua"
FileToRead=#CURRENTPATH#\DownloadFile\Test-EN.txt
UpdateRate=2000
UpdateDivider=-1



[MeasureLuaScript-DE-NetworkError]
Measure=Script
ScriptFile="#@#\LuaTextFile.lua"
FileToRead=#CURRENTPATH#\DownloadFile\NetworkError-DE.txt
UpdateRate=2000
UpdateDivider=-1
[MeasureLuaScript-EN-NetworkError]
Measure=Script
ScriptFile="#@#\LuaTextFile.lua"
FileToRead=#CURRENTPATH#\DownloadFile\NetworkError-EN.txt
UpdateRate=2000
UpdateDivider=-1
;-------------------------------------------------------------
;Mesures for RSSfeed
;-------------------------------------------------------------
[MeasureRSS]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=#RSSUrl#
RegExp="(?siU)#RSSFeed##RSSFeed##RSSFeed##RSSFeed##RSSFeed##RSSFeed##RSSFeed#"
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
UpdateRate=2000
StringIndex=1
Debug=1

[MeasureRSSLink]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=2

[MeasureRSSItem1]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=3

[MeasureRSSLink1]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=4

[MeasureRSSItem2]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=5

[MeasureRSSLink2]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=6

[MeasureRSSItem3]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=7

[MeasureRSSLink3]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=8

[MeasureRSSItem4]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=9

[MeasureRSSLink4]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=10

[MeasureRSSItem5]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=11

[MeasureRSSLink5]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=12


[MeasureRSSItem6]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=13

[MeasureRSSLink6]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=14

[MeasureRSSItem7]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=15

[MeasureRSSLink7]
Measure=Plugin
Plugin=Plugins\WebParser.dll
URL=[MeasureRSS]
Substitute="":"...","&":"&",""":"'","<![CDATA[":"","]]>":"","&#44;":",","&apos;":"'"
StringIndex=16

;=============================================================

[MeasureMove]
Measure=Calc
Formula=Counter%#TotalMove#
AverageSize=1


[NewPosition]
Measure=Calc
Formula=#OriginalX#-MeasureMove


[Motor]
Measure=Calc
Formula=Counter%2
IfBelowValue=1
IfBelowAction=!Execute [!RainmeterMoveMeter [NewPosition] #Y1# MeterRSSItem1]
IfEqualValue=1
IfEqualAction=!Execute [!RainmeterMoveMeter [NewPosition] #Y1# MeterRSSItem1]
DynamicVariables=1
;-------------------------------------------------------------
;Meters 
;-------------------------------------------------------------

[Hintergrund]
Meter=Image
SolidColor=0,0,0,100
ImageCrop=1
H=(#SkinH#-1)
W=(#SkinW#-1)
X=0
Y=0

[Zedat]
;Meter=IMAGE
;SolidColor=255,255,255,1
;ImageName=Zedat.png
;ImagePath=#@#\Bilder\
;ImageCrop=1
;ImageAlpha=255
;X=(#SkinW#-140)
;Y=(#SkinH#-90)
;H=80
;W=130
;AntiAlias=1
;LeftMouseUpAction=[!ActivateConfig "PC-Pool\PC-Pool" "PC-Pool\Offline.ini"]

[MeterBorder]
Meter=Shape
Shape=Rectangle #BorderWidth#, #BorderWidth#, [Hintergrund:W], [Hintergrund:H] | Fill Color 0,0,0,0 | StrokeWidth #BorderWidth# | Stroke Color #BorderColor#
DynamicVariables=1

[Titel] 
Meter=String
MeterStyle=styleTitle
X=20r
Y=9r
Text=Infobox:
;------------------------------------------------------------------
;Tab1 Verschiebt den DE|EN-Schalter auf die rechte Seite des Skins
;------------------------------------------------------------------
[Tab1]
Meter=Image
Meterstyle=styleTab
[Schalter-DE]
Meter=String
Meterstyle=styleTitle
X=3R
Y=r
Text=de
LeftMouseUpAction=[!HideMeter MeterText-EN][!ShowMeter MeterText-DE]
hidden=0

[Trennzeichen]
Meter=String
Meterstyle=styleTitle
X=-5R
Y=r
Text=|
hidden=0

[Schalter-EN]
Meter=String
Meterstyle=styleTitle
X=-5R
Y=r
Text=en
LeftMouseUpAction=[!HideMeter MeterText-DE][!ShowMeter MeterText-EN]
hidden=0

[Unterstrich1]
Meter=Image
SolidColor=255,255,255,80
H=1
W=(#SkinW#-40)
X=20
Y=2R
hidden=0

[MeterText-DE]
Meter=String
MeasureName=MeasureLuaScript-DE
Meterstyle=styleLeftText
W=(#SkinW#-20)
H=(#SkinH#-50)
X=20
Y=10R
hidden=0

[MeterText-EN]
Meter=String
MeasureName=MeasureLuaScript-EN
Meterstyle=styleLeftText
W=(#SkinW#-20)
H=(#SkinH#-50)
X=20
Y=r
hidden=1
[MeterTextTest]
Meter=String
MeasureName=MeasureStringWebParser1-DE
Meterstyle=styleLeftText
LeftMouseDownAction=[]
Y=8
X=20

;-------------------------------------------------------------
[ScrollBG]
Meter=IMAGE
ImageName=Scrollbar.png
ImagePath=#@#\Bilder\
ImageCrop=5
X=0
Y=#Y1#-8
H=30
W=#SkinW#
AntiAlias=1




;-------------------------------------------------------------
;RSS Meters
;-------------------------------------------------------------
[MeterRSSItem1]
Meter=String
MeasureName=MeasureRSSItem1
Meterstyle=styleRSS
LeftMouseDownAction=[MeasureRSSLink1]

[MeterRSSItem2]
Meter=String
MeasureName=MeasureRSSItem2
Meterstyle=styleRSS2
LeftMouseDownAction=[MeasureRSSLink2]

[MeterRSSItem3]
Meter=String
MeasureName=MeasureRSSItem3
Meterstyle=styleRSS2
LeftMouseDownAction=[MeasureRSSLink3]

[MeterRSSItem4]
Meter=String
MeasureName=MeasureRSSItem4
Meterstyle=styleRSS2
LeftMouseDownAction=[MeasureRSSLink4]


[MeterRSSItem5]
Meter=String
MeasureName=MeasureRSSItem5
Meterstyle=styleRSS2
LeftMouseDownAction=[MeasureRSSLink5]

[MeterRSSItem6]
Meter=String
MeasureName=MeasureRSSItem6
Meterstyle=styleRSS2
LeftMouseDownAction=[MeasureRSSLink6]


[MeterRSSItem7]
Meter=String
MeasureName=MeasureRSSItem7
Meterstyle=styleRSS2
LeftMouseDownAction=[MeasureRSSLink7]