Fehler beim Speichern/Laden von weblink htmlCode?

Begonnen von DerJens, 31 August 2014, 17:02:08

Vorheriges Thema - Nächstes Thema

DerJens

Hallo,

vielleicht kann da einer helfen:

Ich habe bei einem weblink einen etwas längeren htmlCode eingegeben. Das funktioniert soweit, der Code wird angezeigt. Wenn ich die Konfiguration von FHEM abspeichere, sehe ich auch den vollständigen Code in der Konfigurationsdatei. Allerdings wenn ich dann ein shutdown reload anstoße, ist mein Code plötzlich unvollständig. Haben wir hier eine Längenbegrenzung oder was läuft hier nicht richtig?

Es geht um folgenden Schnipsel:
define lcars_header_v1 weblink htmlCode <svg version="1.1" xmlns="http://www.w3.org/2000/svg" height="60" width="1010"><g>\
<rect x ="00" y ="00" width ="60" height ="60" rx ="30" ry ="30" fill="#9999ff"/>\
\
<rect x ="30" y ="00" width ="620" height ="60" rx ="0" ry ="0" fill="#9999ff"/>\
\
<text x="940" y="55"  text-anchor="end" font-size="68" font-family="lcars" fill="#ffcc99">ROOM CONTROL</text>\
\
<rect x ="950" y ="00" width ="60" height ="60" rx ="30" ry ="30" fill="#9999ff"/>\
<rect x ="950" y ="00" width ="30" height ="60" rx ="0" ry ="0" fill="#9999ff"/>\
<rect x ="950" y ="00" width ="10" height ="60" rx ="0" ry ="0" fill="#000000"/>\
</g>\
</svg>


Funktioniert bis zum Neustart. Dann steht da:
define lcars_header_v1 weblink htmlCode <svg version="1.1" xmlns="http://www.w3.org/2000/svg" height="60" width="1010"><g>\
<rect x ="00" y ="00" width ="60" height ="60" rx ="30" ry ="30" fill="


Liebe Grüße
DerJens

betateilchen

Es ist wohl kein Problem der Längenbegrenzung, sondern ein Problem der enthaltenen #-Zeichen.
Daran erkennt perl syntaktisch einen Kommentar und ignoriert jeglichen folgenden Text ab (einschließlich) diesem Zeichen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

DerJens

#2
Tatsächlich, das wird es sein. Hast du eine Idee, wie man das umgehen kann?

Eine Möglichkeit wäre, die Farbangabe in RGB zu machen, damit kann man das #-Zeichen umgehen. Funktioniert, ist aber umständlich.

Kleines Beispiel, liefert identische Ausgabe zum Code in meinem ersten Beitrag und übersteht auch ein shutdown restart:
htmlCode <svg version="1.1" xmlns="http://www.w3.org/2000/svg" height="60" width="1010"><g>
<rect x ="00" y ="00" width ="60" height ="60" rx ="30" ry ="30" fill="rgb(153,153,255)"/>
<rect x ="30" y ="00" width ="620" height ="60" rx ="0" ry ="0" fill="rgb(153,153,255)"/>
<text x="940" y="55"  text-anchor="end" font-size="68" font-family="lcars" fill="rgb(255,204,153)">ROOM CONTROL</text>
<rect x ="950" y ="00" width ="60" height ="60" rx ="30" ry ="30" fill="rgb(153,153,255)"/>
<rect x ="950" y ="00" width ="30" height ="60" rx ="0" ry ="0" fill="rgb(153,153,255)"/>
<rect x ="950" y ="00" width ="10" height ="60" rx ="0" ry ="0" fill="rgb(0,0,0)"/>
</g>
</svg>