Hallo zusammen
Gibt es bereits ansätze/Lösungen, wie man folgendes Skript
interpretieren / parsen kann?
1
<head>
2
<style>
3
body { background: #A5A5A6; }
4
PanelA
5
{
6
color: #A5A5A6;
7
font: "Verdana";
8
width: 80px;
9
}
10
11
</style>
12
13
14
</head>
15
16
<body>
17
<div class="Panel" style="PanelA">
18
<div Class="Button" style = "PanelB" id="ABC">
19
20
</div>
21
</body>
Es geht mir darum, mich im Skript orientieren zu können und die Struktur
sowie die Parameter wie z.B. style="PanelA" zu interpretieren.
System: STM32F1
Danke schonmal
Nein, sxmlc ist für xml, nicht html. XHTML wäre auf XML basierwndes
HTML, wird aber nur noch selten verwendet. XML und HTML basierten auf
SGML, sind aber stark verschieden.
Du suchst einen HTML Parser und einen CSS Parser.
TestX schrieb:> Einen "virtuellen" Browser per PhantomJS starten und dann per Javascript> im Dokument auf die Elemente zugreifen
Er wills auf nem STM32F1 laufen lassen wenn ich das richtig lese, ich
bezweifel daß man da mal eben solche Geschütze auffahren kann.
"Mal eben" auf keinen Fall...nur dann sieht der TO evtl ein, dass eine
Full-Featured WebEngine im embedded Bereich nicht anwendbar ist..da muss
ein grundlegend anderes Konzept her..nur ohne mehr Infos (wie immer..)
wird das wohl nichts
Es geht darum, eine Beschreibungssprache für embedded Guis zu haben.
Es geht nicht darum, vollständige websites darzustellen. Sondern darum,
etwas bestehendes zu verwenden.
Editoren für html und css gibts wie sand am meer. Weshalb nicht damit
guis designen?
Der c interpreter zeichnet dann zb bei einem div der klasse button einem
button. Farbe etc wird im css definiert.
Fast wie eine webseite aber halt sehr sehr vereinfacht aber mit der
maximalen flexibilität.
Evtl gibt es auch bessere beschreibungssprachen für sowas.
Was sind eure meinungen?
HolgerKraehe schrieb:> Was sind eure meinungen?
Ist das nicht mehr oder weniger 1:1 das Konzept hinter QTQuick / QML,
was auch für Embedded eingesetzt werden kann?
=> Das Rad nicht ohne Grund neu erfinden.
Εrnst B. schrieb:> HolgerKraehe schrieb:> Was sind eure meinungen?>> Ist das nicht mehr oder weniger 1:1 das Konzept hinter QTQuick / QML,> was auch für Embedded eingesetzt werden kann?>> => Das Rad nicht ohne Grund neu erfinden.
Genau deshalb frage ich hier nach.
Ich habe sicher 1-2h recherchiert nach eifach zu integrierenden gui
lösungen im embedded Bereich, welche OHNE F4 und F7 auskommen.
Übrig blieb uGFX uGUI und uTFT
Leider alle wenig befriedigend wobei uGFX wohl noch am brauchbarsten
war.
QTQuick kannte ich noch nicht. Dass muss ich gleich mal noch googlen
QT Quick benötigt open GL unterstützung. QT Lite scheint eine Version zu
sein welche einen 2D Renderer hat, jedoch finde ich keinen code von QT
Lite und auch die demo boards haben einen F7 mit 16MB flash und 16 Mb
RAM
Hallo zusammen
Habe heute mal ein wenige mit dem Lexer angefangen, welcher die Token
erkennen sollte.
Grundlage ist weiterhin das Skript vom ersten post.
Bevor ich nun zu sehr mit dem Coden beginne, möchte ich mal kurz ein
Feedback einholen.
Was meint ihr?
Danke
Das ist schonmal ein guter Ansatz. Aber eventuell solltest du nicht für
jeden möglichen Tag und jedes mögliche Attribut einen neuen Token
einführen, aber das hängt natürlich von den Anforderungen und den
benötigten Infos ab. Um HTML richtig parsen zu können braucht man
eigentlich noch Informationen ob ein Tag selfclosing ist oder nicht oder
jenachdem (z.B. <input>, welches als <input/> interpretiert werden muss,
oder <div/></div>, dass als <div></div> gelesen werden muss, etc.)
Und dann gibt es noch optionale Endtags (<div><p>a<p>b</div> ist das
selbe wie <div><p>a</p><p>b</p></div>), und dann gibt es noch nicht
erlaubte Unterelemente je nach Element...
Ich würde mir ganz ganz am Anfang die Frage stellen, ob es notwendig
ist, die Oberfläche ohne Neu-Flashen des µCs auszutauschen.
Falls nein: Mach das ganze XML-Processing, Layout, ... auf dem
Host-System während des Compilierens.
d.H. Präprozessor der dein Layout-XML zur Compile-Time in C(++)-Code,
ein statisches Array-of-Struct oder sonstwas übersetzt.
Also so ähnlich wie der UIC von QT.
Bin ich altmodisch oder geht es noch anderen hier so daß sie die
Text(!)-Auszeichnugssprache HTML für die denkbar umständlichste und auch
mit Abstand aufgeblasenste Methode überhaupt halten um sie dafür zu
vergewaltigen eine graphische Benutzeroberfläche zu beschreiben und die
dabei entstandene Tag- und Attribut-Suppe dann hinterher wieder in was
handhabbares zu parsen und irgendwie darzustellen? Wo ist der
Pragmatismus geblieben, an welcher Stelle ging er verloren?
HolgerKraehe schrieb:> Es geht darum, eine Beschreibungssprache für embedded Guis zu haben.>> Es geht nicht darum, vollständige websites darzustellen. Sondern darum,> etwas bestehendes zu verwenden.>> Editoren für html und css gibts wie sand am meer. Weshalb nicht damit> guis designen?
Geht doch. Nur passender... QML oder XAML.
XAML gibt's immer noch in Form des .NET Microframeworks für
Mikrocontroller. Seit einiger Zeit auch mit LLVM/native Code
https://github.com/NETMF/llilum (M3/M4)
>> Der c interpreter zeichnet dann zb bei einem div der klasse button einem> button. Farbe etc wird im css definiert.>> Fast wie eine webseite aber halt sehr sehr vereinfacht aber mit der> maximalen flexibilität.>> Evtl gibt es auch bessere beschreibungssprachen für sowas.>> Was sind eure meinungen?
Warum in einem Interpreter jedes mal den ganzen Kram parsen, validieren,
eventuell cachen damit's nicht zu lahm wird etc.? Wenn, dann würde ich
aus den verbreiteten Beschreibungssprachen wie QML, XAML oder HTML was
besser für Mikrocontroller verarbeitbares generieren.
Wenn's XML sein muss: Der XML-Reader des NetMF wäre z.B.
https://github.com/NETMF/netmf-interpreter/tree/03d84fe76e0b666ebec62d17d69c55c45940bc40/CLR/Core/Xml