hallo zusammen! Ich habe mir ein praktisches Skript geschrieben, von dem ich total begeistert bin. Mit diesem Skript kann man das MouselessBrowsing von Firefox komfortabel über Dragon bedienen.mich hat es immer etwas genervt, dass ich Internetseiten mit Formularen, zum Beispiel beim online Banking oder online Shopping nicht so richtig mit Dragon bedienen konnte. Wenn nämlich der Cursor in einem Textfeld war und ich ohne Fokuswechsel einen bestimmten Link aufrufen wollte, so musste ich Immer Show numbers plus zu Hilfe ziehen ( was den zusätzlichen Befehl "Show Numbers" erforderlich machte)denn wenn man das Mouseless Browsing per Voice aus einem Textfeld heraus bedient, so erscheint im Textfeld z.B. "Str 40", aber es wird nicht der Link geöffnet, der sich hinter der 40 verbirgt.*nerv*
mein Skript Funktioniert nun folgendermaßen: Zuerst muss man in Firefox beim MouselessBrowsing einstellen, das man Mouseless Browsing exklusiv über das Numpad bedienen möchte. Mein Skript nutzt dann die Windows Keycodes für das Numpad. man braucht insgesamt 3 Skripte, eines für einstellige Ziffern(test), eines für zweistellige Ziffern(test und eines für dreistellige Ziffern(test. das Skript habe ich "test" genannt, weil Test ein kurzes Wort ist, das man ohne weiteres beim Surfen vor dem Klick eines Links aussprechen kann. hier beispielhaft der Code für einen Link mit einer zweistelligen Ziffer:
Declare Function keybd_event Lib "user32.dll" (ByVal vKey As _
Long, bScan As Long, ByVal Flag As Long, ByVal exInfo As Long) As Long
ich habe natürlich keine Ahnung, ob ich das nicht etwas umständlich programmiert habe. Ich habe mich immer noch nicht so wirklich in VB eingearbeitet wenn ihr also Refactoring- Vorschläge habt, bin ich keinem böse;-)
Ab der Version 11 wird die Navigation in Firefox jedenfalls teilweise über die für den Internet-Explorer bekannten DNS-Befehle (LINK ..., BILD ..., Text eingeben usw.) unterstützt, alternativ und teilweise etwas vollständiger läßt sich Mouseless Browsing aber auch in den neueren FF-Versionen bis zur Ausgabe 46.0 mit untenstehendem Skript verwenden. Die Aussprache der gewünschten Zahl (i.e. der gewünschten ID -Zahl in MouselessBrowsing-Notation) auf der bereisten Internet-Seite ist bereits der Befehl. Dementsprechend ist als Befehlsname die Liste selbst einzutragen
und mit den entsprechenden Zahlen
0 1 2 . . . 999
vollständig zu versehen (für den normalen Gebrauch reicht wahrscheinlich auch eine Liste ). Vgl. Bild.
Alternativ kann man den reinen Zahlen auch noch ein Kennwort voranstellen (z. B. "Number" oder "Numero"
NUMBER
Declare Function keybd_event Lib "user32.dll" (ByVal vKey As _ Long, bScan As Long, ByVal Flag As Long, ByVal exInfo As Long) As Long Const VK_CTRL = 17 Const VK_NUMPAD = 96 Sub Main spoken_id_number = ListVar1 num_digits = Len(spoken_id_number) keybd_event(VK_CTRL,0,0,0) For i = 1 To num_digits single_digit = Mid(spoken_id_number, i, 1) keybd_event(VK_NUMPAD+single_digit,0,0,0) keybd_event(VK_NUMPAD+single_digit,0,2,0) Next keybd_event(VK_CTRL,0,2,0) End Sub
Innerhalb der MB-Einstellungen auch hier auswählen, NUMPAD exklusiv für MB zu reservieren (vgl. Anh.). LISTVAR1 läuft von 0 bis 999, die Aufloesung in Digits führt zu einer schnellen und präzisen Umsetzung. Funktioniert seit jeher tadellos.
MhG Sandra
EDIT 110616 – Die oben vorgestellte Variante erlaubt es, die jeweiligen mit Mouseless Browsing erzeugten IDs über die normale Aussprache von Zahlen aufzurufen. Lautet die ID zum Beispiel 201, formuliert man ganz normal "ZWEIHUNDERTEINS" und nicht "Zwei Null Eins".
Bitte auch die weiter unten nachgetragenen Anhänge III und IV zu denMouselessBrowsing-Einstellungen beachten.
Angefügte Bilder:
Aufgrund eingeschränkter Benutzerrechte werden nur die Namen der Dateianhänge angezeigt Jetzt anmelden! f12t752p16654n420.jpg f12t752p16654n421.jpg f12t752p16654n422.jpg
Hallo Sandra.H.H (und alle, die ihre Kreationen im Forum bereitstellen möchten), es ist wohl heutzutage üblich, schlampig recherchierte, programmierte oder kommentierte Erzeugnisse und Erkenntnisse der geneigten Öffentlichkeit voller Stolz und ungeprüft zu präsentieren - diese Praxis darf aber nicht für unser Forum gelten.
Deshalb, bitte schön: - beschreibt verständlich, wofür die Sprachbefehle gedacht sind, was sie bewirken - gebt einen Befehlsnamen an (als Muster und Vorschlag) - gebt an, für welche Anwendung der Sprachbefehl gilt - und testet den Sprachbefehl mal selber.
Zu SandraH.H.s Lösung:
Da ListVar per definitionem einstellig ist, sind die Zeilen
spoken_id_number = ListVar1 num_digits = Len(spoken_id_number) ... For i = 1 To num_digits
doch offensichtlich glatter Nonsens. Und der Ausdruck VK_NUMPAD+single_digit ist auch nicht ganz korrekt, da VK_NUMPAD numerisch und single_digit Zeichenkette ist (Mid-Funktion). Allerdings funktioniert es trotzdem, warum sei hier nicht erläutert.
Deshalb folgende Korrektur:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Declare Function keybd_event Lib "user32.dll" (ByVal vKey As _ Long, bScan As Long, ByVal Flag As Long, ByVal exInfo As Long) As Long Const VK_CTRL = 17 Const VK_NUMPAD = 96 Sub Main keybd_event(VK_CTRL,0,0,0) For i = 1 To UtilityProvider.ContextValueCount single_digit = CLng(UtilityProvider.ContextValue(i-1)) keybd_event(VK_NUMPAD+single_digit,0,0,0) keybd_event(VK_NUMPAD+single_digit,0,2,0) Next keybd_event(VK_CTRL,0,2,0) End Sub
Für den angestrebten Zweck (dreistellige Zahlen) braucht man die drei Sprachbefehle Test Test Test
Gesprochen werden muss z.B. "Test 1 2 3" und nicht etwa "Test 123" (einhundert ...!).
Obigen Befehlscode kann man nun unverändert für alle drei Befehlsvarianten benutzen. Man schreibt den ersten Befehl und kopiert diesen dann zur zweiten und dritten Variante, lediglich der Befehlsname muss angepasst werden.
Um das Thema abzurunden: Für Mouseless Browsing wären auch ein paar Befehle zur Steuerung (Aktivierung etc,) sinvoll. Aber das überlass ich der Community.
Skript läuft seit den Tagen von Firefox 4 ohne Fehl und Tadel, die Kenntnis von MouselessBrowsing als seit Jahren führendem Addon zur alternativen Steuerung von und Bewegung in Firefox via Keyboard wird vorausgesetzt. Sollten Fragen im Hinblick auf spezielle Menüpunkte von MB bestehen, werden diese nach bestem Wissen und Gewissen und auf Basis der eigenen Arbeitspraxis beantwortet, im Übrigen sei auf die ausführliche Hilfe innerhalb von MB selbst verwiesen. MHG. Sandra
Eine Ergänzung noch für all jene, denen die keyb_event-Funktion aus dem Windows-API zu kryptisch vorkommt. Ich hab auch keine Ahnung, warum der Erst-Verfasser des Skriptes meinte, sie verwenden zu müssen. Man kann statt dessen ganz einfach die Dragon-Anweisung "SendDragonkeys" benutzen. Ich beziehe mich bez. der Einzelheiten auf meinen vorigen Beitrag.
1 2 3 4 5 6 7
Sub Main strZ="" For i = 1 To UtilityProvider.ContextValueCount strZ=strZ & "{NUM" & UtilityProvider.ContextValue(i-1) & "}" Next SendDragonKeys strZ End Sub
Die numerische Tastatur wird bei SendDragonKeys mit {NUM1}... angesprochen (siehe "Scripting für Dragon NaturallySpeaking").
Zitat von P.RochHallo Sandra.H.H (und alle, die ihre Kreationen im Forum bereitstellen möchten), es ist wohl heutzutage üblich, schlampig recherchierte, programmierte oder kommentierte Erzeugnisse und Erkenntnisse der geneigten Öffentlichkeit voller Stolz und ungeprüft zu präsentieren - diese Praxis darf aber nicht für unser Forum gelten.
...
(I) ... LISTVAR1 läuft von 0 bis 999, die Aufloesung in Digits führt zu einer schnellen und präzisen Umsetzung. Funktioniert seit jeher (i.e. seit 2010 auf vielen Rechnern) tadellos. ... Die oben vorgestellte Variante erlaubt es, die jeweiligen mit Mouseless Browsing erzeugten IDs über die normale Aussprache von Zahlen aufzurufen. Lautet die ID zum Beispiel 201, formuliert man ganz normal "ZWEIHUNDERTEINS" und nicht "Zwei Null Eins".
(II) Der Ton macht die Musik.
(III) Die Auflösung der IDs in einzelne Ziffern (201 ist dann "Zwei Null Eins" zu diktieren) funktioniert grundsätzlich auch und ist letztendlich eine Frage der eigenen Präferenz; in Hinblick auf die gelernte Navigation im Internet Explorer, wo Links über die normale Formulierung von Zahlen aufgerufen werden, muß man sich aber jedesmal umstellen. deswegen haben wir seinerzeit der "normalen" Sprechweise den Vorzug geben und sie in unser Skript eingebaut.
Nichts für ungut, Sandra.H.H, in der ursprünglichen Fassung war von der Liste die Rede, was mich zu den Einwänden veranlasste. Die nachträgliche Bearbeitung Ihres Beitrages macht diese Einwände selbstverständlich gegenstandslos. Die generelle Aufforderung für sorgfältige Arbeitsweise halte ich aufrecht. Gruß, Pascal
Den größten Erkenntnisgewinn bringen doch immer die Diskussionen, die sich in evolutiven Schritten bewegen. Die Beifügung der gesammelten Einstellung von Mouseless Browsing selber ist in der Tat absolut sinnvoll, weil man sich bei den zahlreichen Parametern leicht verirrt.
Mit der Summe seiner Möglichkeiten dürfte MB immer noch eine sinnvolle Ergänzung respektive Hilfe zur bequemen Navigation innerhalb von Firefox darstellen, weil sich im Gegensatz zur (deutlich verbesserten) Sprachsteuerung in Firefox mit Dragon NaturallySpeaking wirklich alles über die IDs aufrufen ist, manchmal werden die Seiten aber durch diese Omnipotenz von MB schon einmal unübersichtlich. Einzelne Anzeigeelemente lassen sich allerdings abschalten.
Besonderes Augenmerk innerhalb der Einstellungen von MB verdient das vierte Register (Styles) dahingehend, daß sich die Schriftgröße der angezeigten IDs hierauf die eigenen Bedürfnisse einstellen läßt.
Weil wir die Schriftgröße mit der Standardeinstellung "xx-small" selbst bei einer Monitoreinstellungen von 1280 x 1024 als deutlich zu klein empfunden haben, haben wir den in der ersten Zeile ausgewiesenen Wert auf "small" korrigiert:
Aus gegebenem Anlass sei an dieser Stelle noch einmal die Warnung wiederholt, nicht auf die neue Version 47 von Firefox upzudaten, weil MB mit mit diesem Release offensichtlich inkompatibel ist. Erfahrungsgemäß werden Updates für MB nur in großen Intervallen aufgelegt, sodass leider keine schnelle Besserung in Sicht ist.
Zitat von Sandra.H.HAus gegebenem Anlass sei an dieser Stelle noch einmal die Warnung wiederholt, nicht auf die neue Version 47 von Firefox upzudaten, weil MB mit mit diesem Release offensichtlich inkompatibel ist.
Hallo, die Erfahrung habe ich auch machen muessen. Mich interessiert insbesondere, ob man mit MB auch die Tabs via ID ansteuern kann. Bisher hatte ich kein Glueck.
Könnten Sie mir sagen, mit welcher Firefox / MB Versionen-Kombination Sie da Glueck haben?
DNS 13 Premium auf Windows 10 (64-bit) Logitech PC 960 Stereo Headset USB Intel Core i5-4200U 1.6 GHz - 4 MB L3-Cache - 4 GB RAM
Stimmt, das Problem kennen wir auch; trotz der Optionsauswahl "Show Tab IDs" werden die Zahlen jedenfalls in der letzten verfügbaren MB leider nicht zuverlässig angezeigt. Allerdings sind die jeweiligen IDs technisch hinterlegt, denn die einzelnen Tabs lassen sich (von links nach rechts) mit der NUMPAD-Tastenfolge "01" für den ersten, "02" für den zweiten usw. Tab ansteuern. Mehr als neun Tabs zusammen sind allerdings nicht möglich.
… Nachtrag zur Diskussion um MBrowsing und Firefox 47: der Entwickler hat gestern mitgeteilt, eine überarbeitete Version eingereicht zu haben in der Hoffnung auf schnelle Freigaben durch Mozilla.
Die überarbeitete Version von Mouseless Browsing (0.57) ist seit etwa zwei Wochen "im Handel" und funktioniert reibungslos mit FF 47, allerdings erkennt die automatische Update- Funktion von Firefox ausgerechnet dieses Addon nicht (zuverlässig) automatisch. Deswegen bitte die aktuelle Version über den Versionsverlauf des Addons innerhalb der Mozilla-Galerie aufrufen und von dort aus installieren. Gegebenenfalls das XPI-Modul über einen Rechtsklick der Maus über der Schaltfläche "zu Firefox hinzufügen" manuell herunterladen und installieren.