Ankündigung

Einklappen
Keine Ankündigung bisher.

Fehler?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    [EibParser] Fehler?

    Hallo,

    GEHT:
    Code:
     
    if systemstart() then\\
     Urlaub=AUS;\\
     Nachtheizen=AUS \\
    endif
    GEHT NICHT:
    Code:
    if systemstart() then\\
     Urlaub=AUS;\\
     Nachtheizen=AUS\\
    endif
    Unterschied ist nur das "AUS\\" mit oder ohne Leerzeichen dazwischen.
    Warum muss da ein Leerzeichen sein?
    ....und versuchen Sie nicht erst anhand der Farbe der Stichflamme zu erkennen, was Sie falsch gemacht haben!

    #2
    Zitat von Uwe! Beitrag anzeigen
    Warum muss da ein Leerzeichen sein?
    Weil die beiden "\\" nach AUS eliminiert werden.
    Der EibParser sieht dann
    Code:
    if systemstart() then Urlaub=AUS;Nachtheizen=AUSendif
    und denkt dann Du hast die Variable AUSendif definiert. Also fehlt ihm das endif - wie die generierte Fehlermeldung sagt.
    offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
    Enertex Produkte kaufen

    Kommentar


      #3
      aber warum werden die "\\" nach "AUS" eliminiert, nach "then" aber nciht? Ich hab noch nicht verstanden, wann ich diese Leerzeichen brauche und wann nicht.

      Vielleicht hab ich's jetzt: Die "\\" werden nach "then" auch eliminiert, aber dafür ist in der Folgezeile ein Leerzeichen am Beginn! Richtig? Die Logik ist also das zwischen Ende 1. und Anfang 2. Zeile mindestens ein Leerzeichen sein muss, egal in welcher Zeile und egal ob vor oder nach dem "\\"?
      ....und versuchen Sie nicht erst anhand der Farbe der Stichflamme zu erkennen, was Sie falsch gemacht haben!

      Kommentar


        #4
        Zitat von Uwe! Beitrag anzeigen
        aber warum werden die "\\" nach "AUS" eliminiert, nach "then" aber nciht? Ich hab noch nicht verstanden, wann ich diese Leerzeichen brauche und wann nicht.
        vor dem "Urlaub" steht ein Leerzeichen. Es sind also bei "\\" beide zeilen zu beachten, dass ist die einfache Regel.
        offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
        Enertex Produkte kaufen

        Kommentar


          #5
          Zitat von enertegus Beitrag anzeigen
          vor dem "Urlaub" steht ein Leerzeichen. Es sind also bei "\\" beide zeilen zu beachten, dass ist die einfache Regel.
          Das heißt, wenn man am Zeilenanfang "einrückt" mit Leerzeichen und nicht
          mit TAB, dann wird das Leerzeichen beachtet (hat man mehrere, dann trotzdem nur eines)
          Da könnte man ja gleich am Zeilenanfang immer ALLES einrücken, da muss man
          dann nicht mehr nachdenken, odrrr?

          Frank
          Warum eine SPS wenns auch KNX gibt (oder war das umgekehrt???)

          Kommentar


            #6
            Zitat von IBFS Beitrag anzeigen
            Das heißt, wenn man am Zeilenanfang "einrückt" mit Leerzeichen und nicht
            mit TAB, dann wird das Leerzeichen beachtet (hat man mehrere, dann trotzdem nur eines)
            Da könnte man ja gleich am Zeilenanfang immer ALLES einrücken, da muss man
            dann nicht mehr nachdenken, odrrr?

            Frank
            Ja, das ist eine Möglichkeit - würde ich aber nicht so machen.
            offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
            Enertex Produkte kaufen

            Kommentar


              #7
              Zitat von enertegus Beitrag anzeigen
              Ja, das ist eine Möglichkeit - würde ich aber nicht so machen.
              Jo, ich würde den Parser ändern Er sollte \\ durch Leerzeichen ersetzen.
              Oder man schreibt Parser/Compiler so um, dass sie Blöcke erkennen und man kein \\ mehr braucht
              Aber natürlich nur mit very low prio
              BR
              Marc

              Kommentar


                #8
                Blöcke

                Den Vorschlag
                Zitat von saft6luck Beitrag anzeigen
                Oder man schreibt Parser/Compiler so um, dass sie Blöcke erkennen und man kein \\ mehr braucht
                finde ich .
                Gruß,
                Hans-Jürgen

                Kommentar


                  #9
                  Zitat von HJH Beitrag anzeigen
                  Den Vorschlag
                  finde ich .
                  Solange gilt:
                  Zitat von saft6luck Beitrag anzeigen
                  Aber natürlich nur mit very low prio
                  offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                  Enertex Produkte kaufen

                  Kommentar


                    #10
                    Hallo liebes EibPc-Team

                    Also das mit dem Zeilenumbruch fand' ich auch nicht optimal gelöst.
                    Ich hab' mich in PHP jetzt schon an die ";" gewöhnt und an Perl sowie JS, wo vieles wieder anders ist.
                    Aber die "\\" waren echt speziell.
                    Habt Ihr gemerkt ich schreibe bereits in der Vergangenheit.
                    Grüsse Bodo
                    Fragen gehören ins Forum, und nicht in mein Postfach;
                    EibPC-Fan; Wiregate-Fan; Timberwolf-Fan mit 30x 1-Wire Sensoren;

                    Kommentar

                    Lädt...
                    X