revSpeak das wiederholen verbieten

Startseite Foren Deutsches LiveCode-Forum revSpeak das wiederholen verbieten

Ansicht von 26 Antwort-Themen
  • Autor
    Beiträge
    • #19505
      GerryS
      Teilnehmer

      hallo Leute, kann mir jemand sagen, wie ich dem „revSpeak“ das wiederholen verbieten kann? Wenn sie, die Sprecherin, wahrscheinlich zu müde ist, widerholt sie nur 2mal. Bei neuem Start muss ich ganz runterfahren um es ihr zu verbieten. Da die Schleife immer wieder wiederholt wird, ist es ja klar. Aber gibt es trotzdem eine Möglichkeit, ihr das wiederholen der Sätze zu unterdrücken.
      Ich will mir die Zeit vorlesen lassen, ohne immer drauf zu klicken.
      Oder gibt es ein Befehl, welcher von sich aus auf einen Taster klick (oder kurz drückt)?
      ich sag schon mal
      Danke
      GerryS

    • #19507
      Klaus Major
      Verwalter

      Hi Gerry,

      sorry, verstehe nur Bahnhof!?
      Wer macht was wiederholt oder eben nicht?
      Beispiel? Skript? Keks? 😀

      Gruß

      Klaus

    • #19510
      GerryS
      Teilnehmer

      Hallo Klaus, ich wollte nicht so ernst sein.
      Es ist die Sprechende Uhr aus dem Buch. Unter der Zeitangabe steht so alle 5 Minuten (bei mir) der Text von der Uhrzeit. zB: Es ist neun Uhr. Wenn man dann mit der Maus auf den Text klickt, sagt sie die Uhrzeit.
      Ich habe mir aber ein paar Schalter darunter gesetzt, welche einmal wie eine alte Standuhr, Glockenschläge macht, natürlich zu den entsprechenden Zeiten. Da die Glockenschläge zur vollen Stunde natürlich anders waren,
      kann ich sie mit den Schaltern einstellen. Das funktioniert. wenn die Schalter gesetzt sind, hat das weitere
      ja nichts mehr mit der Uhr(Programm) zu tun.
      Nun soll sie mir aber die Uhrzeit sagen, zB: alle viertel Stunde. Ich müsste es hinbekommen, dass ich durch Befehl >kurz< auf das Label, die Schrift also Uhrzeit, klicken könnte.
      gibt es so etwas??
      Es müsste dann gehen.
      Danke

    • #19511
      Klaus Major
      Verwalter

      Das sollte mit SEND klappen.
      Erstelle einen Handler der all das obige macht und rufe ihn alle 15 Minuten auf

      Hinweis:
      Du kannst auch sowas machen -> send „mouseup“ to btn xyz
      falls es das ist, was Du suchst.

    • #19512
      GerryS
      Teilnehmer
      Hallo Kaus,
      
      

      on uhrAktualisieren
      put the long time into fld „uhr“
      put sprachUhrZeit(fld“uhr“) into fld „inWorten“
      send uhrAktualisieren to this stack in 250 Milliseconds
      end uhrAktualisieren`

      das läuft die Uhr alle 250 Millisekunden durch.

      if minute= 10 and sekunde= 2 then
            //revSpeak fld "inWorten"
            //set the hilited of widget  "wann1b" to false
            put "A" into the fld "Zeiten"
            put "Es ist zehn nach "&stundeAlsWort(stunde)& "." after satz      
         end if

      Nach diesem Schema durchläuft die Uhr die Aktualisierung. das ist ungefähr alle 5 Minuten.
      Daraus wird dann die Zeit geschrieben im Label „inWorten“. Das revSpeak spricht das denn leider so 3 mal
      trotzdem der Text nur 1 Sekunde besteht. In dieser Zeit läuft das Ganze 4mal.
      Wenn ich die Zeit, wie ursprünglich, nicht genau einstelle, bleibt die Anzeige auch länger.
      Wenn ich dann mit der Maus auf den Text tippe, wird die Zeit erst beim loslassen, vorgelesen.
      Deswegen meine ich, wenn das anklicken über einen Befehl passiert, könnte es klappen.
      Also, gibt es solch einen Befehl. Der könnt dann anstelle von revSpeak stehen. (in Windows Office gibt es den)
      Und Klaus, hast du so einen auf Lager.

      Was ganz anderes: Ich bin mir das Dictionary nach Windows-Word am übersetzen. Wie bekomme ich dann die vereinzelten, rote Striche wieder weg?

      Danke schon mal im voraus.
      GerryS`

    • #19513
      GerryS
      Teilnehmer

      Hallo Klaus,

      on uhrAktualisieren
      put the long time into fld „uhr“
      put sprachUhrZeit(fld“uhr“) into fld „inWorten“
      send uhrAktualisieren to this stack in 250 Milliseconds
      end uhrAktualisieren

      das ist zum Aktualisieren, also 4 mal in einer Sekunde. Deswegen wird das auch so oft vorgelesen
      was darin steht:

      Eine von 13, also für alle 5 Minuten.
      if minute= 10 then
      //revSpeak fld „inWorten“
      //set the hilited of widget „wann1b“ to false
      put „A“ into the fld „Zeiten“
      put „Es ist zehn nach „&stundeAlsWort(stunde)& „.“ after satz
      end if

      Gibt es einen Befehl, welcher das klicken auf das Feld „inWorten“ kurz ausführt?
      Wenn ich mit der Maus auf das Feld klicke, ist die Sprachausgabe erst, wenn ich sie wieder loslasse. Also beim wieder loslassen.

      Im voraus einmal Danke
      GerryS

    • #19514
      Klaus Major
      Verwalter

      Hi Gerry,

      VIER MAL PRO SEKUNDE? JESSAS!
      DAS halte ich für etwas übertrieben! 😀

      Wie oft willst Du die Zeit denn wirklich vorgelesen bekommen?
      Reicht das nicht alle paar Minuten?

      Gibt es einen Befehl, welcher das klicken auf das Feld „inWorten“ kurz ausführt?
      Wenn ich mit der Maus auf das Feld klicke, ist die Sprachausgabe erst, wenn ich sie wieder loslasse. Also beim wieder loslassen.

      Klingt nach einem mouseUP Handler, ändere den in mouseDOWN um.

      Aber vielleicht solltest Du dir angewöhnen, Handler auszulagern.
      Also anstatt:

      on mouseup
        machdiesesoderjenes
        unddasauchnoch
      end mouseup

      Machst Du es so:

      on mouseup
        mein_handler_der_alles_macht_aber_im_stackskript_steht mit_parameter_vielleicht_noch
      end mouseup

      Im Stack steht dann:

      command mein_handler_der_alles_macht_aber_im_stackskript_steht
        machdiesesoderjenes
        unddasauchnoch
      end mein_handler_der_alles_macht_aber_im_stackskript_steht

      Somit kann der Handler von überall ohne Umwege aufgerufen werden, ohne daß wir etwas SENDen müssten.

      P.S.
      Noch zwei wichtige Sachen:
      1.
      put "A" into THE fld "Zeiten"
      LC Objekte NICHT mit THE ansprechen, das benötigen wir für Custom Properties!
      Also:
      put "A" into fld "Zeiten"
      2.
      Bitte gewöhne Dir in Deinem eigenen Interesse an, die zu SENDenden Befehle im Anführungszeichen zu setzen:
      send "uhrAktualisieren" to this stack in 250 Milliseconds
      Wie ich in einem anderen Thread schon einmal schrieb, mit jeder Version wird die Engine weniger rücksichtsvoll, was den Umgang mit „salopper“ Programmierung angeht. Das bedeutet, daß in einer späteren Version das einmal einen ERROR generieren kann. Dito für 1.

      Ist nur ein gutgemeinter Rat, mit dem ich aber die letzten 20 Jahre mit LC und seinen Vorfahren sehr gut gefahren bin.

      Gruß

      Klaus

    • #19515
      GerryS
      Teilnehmer

      Hallo Klaus,
      ich fange erst an mit dem LiveCode. Das skipt ist aus dem Buch. Wenn die Sachen daraus bei mir funktionieren,
      nimm ich sie aus dem Buch als gegeben.
      Ich fange ja erst an, für mich Änderungen vorzu nehmen.

      Gruß Gerd

    • #19516
      Klaus Major
      Verwalter

      Das ist ja keine Kritik, sondern nur aufrichtige Verwunderung. 😀
      Das Beispiel im Buch war sicher ohne „revspeak“, oder?

      Du kannst ja gerne vier Mal pro Sekunde checken, aber das REVSPEAK würde ich dann nur laufen lassen, wenn es nötig ist. Also wieder irgendwas mit IF THEN…

    • #19517
      GerryS
      Teilnehmer

      Hallo Klaus,
      wie bekommst du die Programme so schön hier rein?
      Muss man da irgendetwas von dem >B…bis TAGS SCHLIESSEN< vorher anklicken? Dann würde ich die entsprechenden
      Sachen hierein kopieren und du wüsstest eher, was ich meine.
      Es würde wenigsten sauber aussehen.
      Die Möglichkeit von „revSpeak“ habe ich ausprobiert, da das gegebene nicht funktioniert.
      Deswegen hätte ich gerne einen Befehl, welcher da „klicken“ soll.

      Danke Gerd

    • #19518
      Klaus Major
      Verwalter

      Hallo Gerd,

      „Programme“ bekomme ich hier auch nicht rein, aber Livecode Skripte/Code. 😎
      Halt mich für pingelig, aber eine korrekte Terminologie ist schon wichtig.

      Das geht wie in einem Textverarbeitungsprogramm!
      Nach dem Einfügen Deiner Skripte hier ERST den Text wieder markieren und DANN
      oben auf CODE klicken, ist ja nun keine Raketenwissenschaft. 🙂

      Gruß

      Klaus

    • #19522
      GerryS
      Teilnehmer

      Danke Klaus,
      Man muss es nur wissen

    • #19534
      GerryS
      Teilnehmer

      Hallo Klaus,
      hier steht es wie die Ausgabe ist:
      on playUhrzeit
      put fld „inWorten“ into satz
      replace „Es ist “ with „Es_ist_“ in satz
      replace “ vor“ with „_vor“ in satz
      replace “ nach“ with „_nach“ in satz
      replace “ vor halb“ with „_vor_halb“ in satz
      replace „.“ with „“ in satz
      repeat vor each word w in satz
      revSpeak fld „10a“
      //if the hilited of widget „wann1b“ then
      play klangpfad&w&“.wav“

      //end if`

      set the itemDelimiter to „:“
      wait until the sound is done
      end repeat
      end playUhrzeit
      das revSpeak steht normal nicht drin. Es war nur ein Versuch.
      Das hier ist auch nur ein Versuch
      Gruß
      Gerd

    • #19535
      GerryS
      Teilnehmer

      Siehst du, bei mir geht da so manches manchmal anders.
      Ich werde mich mal durchboxen.

      Gute Nacht Klaus

    • #19536
      Klaus Major
      Verwalter

      Das müssen wir aber noch ein wenig üben! 😎

      Wichtig, der Code muss natürlich auch schon korrekt in LC formtieret sein!
      Also im Skript Editor einmal auf TAB hauen, dann wird der Handler eingerückt etc.
      und dann erst kopieren und hier einsetzen.

    • #19553
      Klaus Major
      Verwalter

      Noch’n Gedicht ähm. Hinweis:

      ...
      put fld "inWorten" into satz
      # replace "Es ist " with "Es_ist_" in satz
      # replace " vor" with "_vor" in satz
      # replace " nach" with "_nach" in satz
      # replace " vor halb" with "_vor_halb" in satz
      
      # Geht auch einfacher:
      replace SPACE with "_" in satz
      ...
    • #19556
      GerryS
      Teilnehmer

      Hallo Klaus,
      leider kann ich da auch nichts mehr ändern dran.
      Mein Notebook will wahrscheinlich das LiveCode nicht mehr haben. Die letzte Zeit war es schon paarmal, aber
      heute Morgen hat er 2 Mal mittendrin Schluss gemacht. Beim 2.mal ging keine Maus noch Tastatur. Ich musste den
      Strom ausmachen und etwas warten. Die anderen male ging alles aus. Aber jetzt? Die App des Programms war auch nicht mehr da und mit dem neu installieren hat es auch nicht geklappt. Angeblich interner Fehler. Nach dem 6.ten male hat er das Programm installiert. Ich konnte die einzelnen Apps anklicken und sie gingen auch auf
      und funktionierten. ABER kein Oben und seitlich. Kann also nichts mehr machen. Ich komm da nicht mehr dran.
      Die Anleitungen aus dem Dictionary funktionierte so schön. Die Übersetzung ins Deutsche mit allen Bildern !a!!
      Aber da stehts auch nicht drin wie es in so einen Fall wieder in Ordnung kommt.?? Scade
      Gruß Gerd

    • #19557
      Klaus Major
      Verwalter

      …ABER kein Oben und seitlich. Kann also nichts mehr machen. Ich komm da nicht mehr dran.

      Wie, was, wer ist tot?
      Gerd, Deiner Rede Sinn ist leider etwas nebulös. 🙂

    • #19561
      GerryS
      Teilnehmer

      Hallo Klaus,
      ich kann nur noch die Übungsbeispiele spielen. alles andere bekomme ich nicht mehr auf den PC.
      Schade.

      Gruß
      Gerd

    • #19562
      Klaus Major
      Verwalter

      Übungsbeispiele? spielen?

      Verstehe immer noch Bahnhof, also Dir ist Dein Rechner übel abgeschmiert?
      Habe ich das soweit richtig verstanden?
      Und jetzt kannst Du kein LC mehr installieren?

      Also ist das eher ein Windows Problem, richtig?
      Da werden wir Dir wohl nicht so richtig helfen können, fürchte ich.
      Als alter Mac-User wüsste ich auch nicht wie….

    • #19563
      Klaus Major
      Verwalter

      Übungsbeispiele? spielen?

      Verstehe immer noch Bahnhof, also Dir ist Dein Rechner übel abgeschmiert?
      Habe ich das soweit richtig verstanden?
      Und jetzt kannst Du kein LC mehr installieren?

      Also ist das eher ein Windows Problem, richtig?
      Da werden wir Dir wohl nicht so richtig helfen können, fürchte ich.
      Als alter Mac-User wüsste ich auch nicht wie….

    • #19569
      GerryS
      Teilnehmer

      Hallo Klaus,
      Übungsbeispiele sind die Übungen, welche man im Buch durchnimmt als >Übung zum lernen< .
      Dann kannst du mit den fertigen oder den gegebenen Beispielen halt spielen. Speerwerfen, Memo, die Uhr, Würfeln usw.
      ich bekomme die LiveCode-Symbolleiste nicht mehr angezeigt. Ich kann also nichts Neues mehr machen oder andere ummodelnn. Aber ich habe noch die Mails, welche ich beim installieren bekam. Die werde ich mal durchforsten, ob da irgend etwas davon drin steht. Also, bis dann
      Gruß
      Gerd

    • #19570
      Klaus Major
      Verwalter

      Du kannst mal die Voreinstellungen wegschmeissen und LC neu starten.
      Wo die genau bei Dir liegen musst Du LC selber fragen.
      Gib das hier in der Messagebox ein:
      put the filename of stack „revpreferences“

      Und genau diese Datei dann wegwerfen und LC neu starten.
      Dann sollten die TOOL Palette (seitlich) und der Menübalken (oben) wieder auftauchen.
      Bitte ausprobieren und berichten.

    • #19594
      GerryS
      Teilnehmer

      Hallo Klaus,
      das ist ja mein Problem. Seitlich und oben , das ist nicht mehr vorhanden. Weder Messagebox noch sonst was ist vorhanden.

      und die LiveCode-Guides. Auf sie kann zugegriffen werden, indem Sie im Hilfemenü Wörterbuch (API) auswählen oder auf das Wörterbuchsymbol in der LiveCode-Symbolleiste klicken. Da sie nicht mehr vorhanden sind, kann ich auch nicht mehr drauf klicken.

      LiveCode-APIs
      Die LiveCode-Anwendungsprogrammierschnittstelle (API-Referenz) enthält die vollständige Syntax für alle LiveCode-Komponenten, einschließlich LiveCode Script, LiveCode Builder und alle installierten Widgets und Bibliotheken. Wenn Sie LiveCode noch nicht haben, werden Sie wahrscheinlich die meiste Zeit in LiveCode Script verbringen, der Skriptsprache, die bei der Entwicklung von LiveCode-Anwendungen verwendet wird. Die folgenden Beispiele werden der LiveCode-Skript-API entnommen, aber die API-Dokumentation für alle Komponenten verwendet dasselbe Format und Layout.
      Die roten Linien habe ich auch rausbekommen. 3/4 von dem Wörterbuch habe ich schon übersetzt. Mehr war nicht drin. Da hat sich mein PC verabschiedet.

      Gruß Gerd

    • #19595
      Klaus Major
      Verwalter

      Dann such doch mal unter WINDOWS nach der Datei -> revPreferences.rev
      und wirf die weg und versuch es erneut…

      Oder ist Dein PC jetzt ganz tot?

    • #19596
      matthiasr
      Teilnehmer

      Der genaue Pfad zur LC Voreinstellungen ist unter Win meines Wissens

      C:\Users\BENUTZERNAME\AppData\Roaming\RunRev\Preferences

      Ab LC7 heißt die Preference-Datei livecode7.rev

    • #19615
      GerryS
      Teilnehmer

      Hallo, ich habe alles von LiveCode rausgeschmissen und dann neu installiert.
      Okay, ich kann wieder loslegen.
      Danke für eure Hilfen.
      Gruß
      Gerd

Ansicht von 26 Antwort-Themen
  • Du musst angemeldet sein, um auf dieses Thema antworten zu können.