scripting: Zahlen rechtsbündig

  • Ich möchte die Werte des Stromzählers rechtsbündig anordnen.

    Mein Plan war, die Zahl in String umzuwandeln und den "Freiraum" vor den Zahl mit Leerzeichen aufzufüllen.

    Leider werden Leerzeichen direkt am Anfang der Zeile in der Anzeige ignoriert. Zwei oder mehr Leerzeichen hintereinander werden auch nur als ein Leerzeichen angezeigt. Andere Zeichen wie Punkt oder Unterstrich werden direkt am Anfang und auch mehrfach angezeigt, sehen aber optisch nicht aus. Auch ist der Punkt von der Breite her schmaler (also proportional) und die Ziffern nichtproportional.

    Des Weiteren werden z.B. bei einer gewünschten 12-stelligen Anzeige des Wertes -123 nur die 8 Punkte für den Freiraum und -1 angezeigt, aber die 23 nicht mehr. Ich habe festgestellt, dass hierfür ssize (bei >D) erhöht werden muss. Standardmäßig beträgt dieser Wert ja schon 19 Zeichen, sodass ich mir das bei 12 Zeichen nicht erklären kann.
    Nachfolgend der Screenshot mit vorweg einigen anderen Formatierungen als Zahl und auch der dazugehörige Code:

    Ziel ist es nun, den Braille Pattern Blank als Füllzeichen zu verwenden. Dieser nimmt genauso viel Platz wie eine Ziffer ein und lässt sich auch am Anfang und auch mehrfach hintereinander anwenden. Nur muss dann ssize noch größer gewählt werden als beim Punkt, was ich nicht nachvollziehen kann.

    Warum ist das alles so? Hat einer eine Erklärung oder vielleicht sogar einen Lösungsansatz parat? Danke.

  • falls dich Nullen nicht stören könntest du die Variable z.b. 5,2 dekarieren. -> 5 Stellen vor dem Komma, 2 danach

    %5,2temp%

    rechtsbündig in Tasmota Standard kenne ich nicht.

    Was aber geht und noch zig andere Vorteile mit sich bringt. Statt ausgabe in >W in einer Unterseite
    >W1 Test

    hier kannst du nun frei html code verwenden.... da steht dir Tür und Tor offen.... inkl. großer hilfe mit chatgpt usw.

  • Die Lösung mit den Nullen vorweg habe ich auch schon ausprobiert. Die Nullen machen die Darstellung etwas unübersichtlicher und zudem wird bei einem negativen Wert das Minus-Zeichen zwischen den Nullen und der eigentlichen Zahl angezeigt (siehe Bild oben).

    Auf der Tasmota Web-UI Hauptseite werden die Zahlenwerte immer automatisch aktualisiert (über Section S bei mir alle 3 Sekunden). Wenn ich das in ChatGPT richtig verstanden habe, muss ich ein Auto-Refresh per Meta-Tag einrichten. Dann wird die komplette Seite immer wieder neu aufgebaut. Ich hatte so etwas schon mal für die Web-UI Hauptseite eingerichtet, da ich auch 4 Grafiken über google charts anzeigen lasse. Das wirkt dann aber alles hektisch. Und für die Grafiken reichen auch längere Intervallzeiten von z.B. 5 Minuten aus.

    Ich würde einfach nur gerne die Anzeige für die Werte platzsparender darstellen, damit die Seite nicht zu lang wird.

    Trotzdem Danke für Deine Hilfe :thumbup::). Falls ich noch eine Lösung finde, werde ich diese hier posten.

  • Moin 2000ede,

    so richtig gibt es ja auch kein Problem. Es ärgert mich nur, dass ich es nicht verstehe, warum es mit den Braille Pattern Leerzeichen nicht funktioniert.

    Mit HTML kenne ich mich nur rudimentär aus und mit Ajax gar nicht.

    Es funktioniert ja gut so wie es nun ist - danke Deiner Hilfe mit websensor53 0 in meiner anderen Forum-Frage. Also bitte keine weitere Energie reinstecken.

    Danke für Deine Unterstützung :)

  • Für die rechtsbündige Anordnung habe ich doch noch eine einfache Lösung mit "text-align" in der W-Section gefunden:

    Das sieht dann so aus:

    Leider vergrößern sich dadurch die Zeilenabstände ein wenig. Dagegen habe ich leider keine Lösung gefunden.