-
GEBIET DER
ERFINDUNG
-
Die vorliegende Erfindung betrifft
allgemein die computerunterstützte
Dateneingabe und insbesondere ein Verfahren, ein System und eine
Vorrichtung zur computerunterstützten
Texterzeugung und -eingabe unter Verwendung einer Zeigevorrichtung mit
einer Personalcomputervorrichtung sowie computerlesbare Medien mit
ausführbaren
Befehlen zum Unterstützen
der Texterzeugung und -eingabe unter Verwendung einer Zeigevorrichtung.
-
HINTERGRUND
DER ERFINDUNG
-
Die weitverbreitete Verwendung miniaturisierter
Personalcomputervorrichtungen, wie handgehaltener Vorrichtungen
und persönlicher
digitaler Assistenten (PDAs), hat zu einer zunehmenden Verwendung
von Vorrichtungen zum Senden und Empfangen von Text und Daten geführt. Ein
Beispiel für diesen
Trend sind stiftbasierte Computeranwendungen, bei denen Benutzer
Text und Befehle über
einen berührungsempfindlichen
Bildschirm in handgehaltene Personalcomputer eingeben. Wenngleich
solche stiftbasierten Computeranwendungen, insbesondere angesichts
der zunehmenden Leistungsfähigkeit
miniaturisierter Computervorrichtungen, beliebt sind, stellt es
für einen
Benutzer eine Herausforderung dar, Daten in eine Anwendung einzugeben,
die auf einer handgehaltenen Vorrichtung läuft. Es ist bei vielen handgehaltenen
Computern und persönlichen
digitalen Assistenten beispielsweise erforderlich, daß der Benutzer
Daten entsprechend einem vorbestimmten Schriftstil eingibt, wie
es beispielsweise bei den PDAs der PalmPilotTM-Serie
der Fall ist. Andere handgehaltene Vorrichtungen stellen ein Handschrift-Erkennungssystem
bereit, wobei es erforderlich ist, daß der Computer den Handschriftstil
des Benutzers erlernt. Wenngleich diese Dateneingabemechanismen
nützlich
sind, sind sie verhältnismäßig schwer
zu verwenden und komplex zu lernen, und sie können für Fehler anfällig sein,
falls der Benutzer von dem vorbestimmten Schriftstil oder von seinem üblichen
Handschriftstil abweicht.
-
Viele stiftbasierten Computersysteme,
sowohl große
als auch kleine, bieten dem Benutzer die Möglichkeit, Text unter Verwendung
einer auf dem Bildschirm vorhandenen digitalen Tastatur einzugeben.
Auf dem Bildschirm vorhandene digitale Tastaturen sind typischerweise
miniaturisierte Nachbildungen herkömmlicher gegenständlicher
Tastaturen voller Größe, wie
QWERTY-Tastaturen. Viele auf dem Bildschirm vorhandene Tastaturen
haben sich als weniger wirksam für
die Eingabe von Text erwiesen. Wenn eine Zeigevorrichtung in der
Art eines Stifts verwendet wird, muß ein Benutzer Text typischerweise
Zeichen für
Zeichen eingeben, indem er einzelne Zeichenauswahlen von der auf
dem Bildschirm vorhandenen Tastatur eintippt. Dieses "Such-und-Auswahl"-Tippverfahren mit einer einzigen Zeigevorrichtung
ist zeitaufwendig, insbesondere wenn ein Benutzer große Datenmengen
eingibt.
-
Eine andere übliche Herausforderung bei
der Eingabe von Daten in eine Personalcomputervorrichtung mit einer
einzigen Zeigevorrichtung in der Art eines Stifts oder Zeigestifts,
und insbesondere bei der Eingabe von Text, besteht darin, daß jeder
das Wort oder den Ausdruck bildende Buchstabe von Hand eingegeben
werden muß.
Je länger
das Wort oder der Ausdruck ist, desto größer ist der erforderliche Aufwand
für die
manuelle Eingabe.
-
Textvervollständigungssysteme wurden im Bemühen entwickelt,
Benutzer bei der Texteingabe zu unterstützen. Im allgemeinen sagen
diese Systeme eine Wortvervollständigung
auf der Grundlage einer von einem Benutzer eingegebenen Teiltexteingabe
vorher und schlagen diese vor. Diese Systeme ermöglichen es einem Benutzer,
die Teiltexteingabe einzutippen und dann eine vorhergesagte Textvervollständigung
für die
Teiltexteingabe zu akzeptieren. Hierdurch werden die Tastenanschläge vermieden, die
andernfalls erforderlich wären,
um den von einem Benutzer gewünschten
vollständigen
Text zu tippen. Wenngleich diese Textvervollständigungssysteme Benutzern eine
gewisse grundlegende Unterstützung geben,
Text schneller einzugeben als dies erforderlich wäre, falls
jedes Zeichen des gewünschten
Texts unabhängig
getippt werden würde,
bleibt auf dem Fachgebiet ein Bedarf an einem flexibleren Textvervollständigungssystem
für die
Verwendung mit einer einzigen Zeigevorrichtung bestehen. Es wäre auch wünschenswert,
wenn ein solches Textvervollständigungssystem
eine zweckmäßige Auswahltechnik verwenden
würde,
wodurch das zur Eingabe von Text in einen Computer erforderliche
Ausmaß der
Bewegung der Zeigevorrichtung verringert werden würde. Es
wäre weiterhin
wünschenswert,
wenn ein solches System sowohl auf große als auch auf kleine Personalcomputervorrichtungen
anwendbar wäre.
-
Ein anderes auf dem Fachgebiet auftretendes
Problem besteht darin, daß weiche
oder digitale Tastaturen gewöhnlich ständig angezeigt
wurden, so daß sie
dauernd Bildschirmplatz verbrauchten, oder daß sie vom Benutzer von Hand
aufgerufen und abgesetzt werden mußten. Es wäre wünschenswert, wenn eine digitale
Tastatur nach Bedarf automatisch erscheinen und verschwinden könnte.
-
In EP-0 844 571 A2, eingereicht am 21.11.1997,
sind im Oberbegriff der Ansprüche
1 und 18 eine Vorrichtung und ein Verfahren zur Texteingabe für einen
Stifteingabecomputer offenbart. Die Vorrichtung und das Verfahren
zur Texteingabe verwenden Pull-Down-Menüs und Pop-Up-Menüs. Bei der dargestellten
Vorrichtung und beim dargestellten Verfahren drückt der Benutzer auf eine Taste
auf einer weichen Tastatur, und die ausgewählte Taste wird zu einer Wiederauffindungsbedingung
bei der Erzeugung eines Satzes mit der ausgewählten Taste beginnender Kandidatenwörter. Kandidatenwörter werden in
einem Pull-Down-Menü angezeigt,
und falls das gewünschte
Wort vorhanden ist, löst
der Benutzer den Stift von dem Bildschirm, wobei die Kandidaten an
diesem Punkt als ein Pop-Up-Menü angezeigt werden
und das Pull-Down-Menü gelöscht wird.
-
In EP-0 858 023 A2, eingereicht am
10. Februar 1998, ist ein Symboleingabesystem mit einer graphischen
Anzeigefläche,
einer handgehaltenen Fernbefehlseinheit und einem auf der graphischen Anzeigefläche angezeigten
Symboleingabewerkzeug offenbart. Das Symboleingabewerkzeug weist einen
Symboleingabebereich und ein in einem kreisförmigen Bereich, der den Symboleingabebereich wenigstens
teilweise umgibt, angezeigtes Symboldiagramm auf. Das Symboldiagramm
zeigt mehrere Symbole an. Ein sichtbarer Brennpunkt spricht auf vom
Benutzer gegebene Befehle an, so daß der Benutzer den Brennpunkt
auf ein bestimmtes Symbol in dem Symbol diagramm bewegen kann und
ein solches Symbol für
die Eingabe in das Symboleingabesystem auswählen kann. Zu jeder gegebenen
Zeit ist auf der graphischen Anzeigefläche nur ein Teilsatz von Symbolen
sichtbar. Im allgemeinen weist der sichtbare Teilsatz die Symbole
auf, die sich am nächsten
bei der aktuellen Position des Brennpunkts auf dem Symboldiagramm
befinden.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Die vorstehenden und verwandte Wünsche werden
gemäß der vorliegenden
Erfindung adressiert, indem ein neuartiges und nicht offensichtliches Verfahren,
ein neuartiges und nicht offensichtliches System und computerlesbare
Anweisungen für
die computerunterstützte
Texterzeugung und -eingabe unter Verwendung einer Zeigevorrichtung
mit einer Personalcomputervorrichtung bereitgestellt werden.
-
Gemäß einem Aspekt der vorliegenden
Erfindung ist ein Verfahren gemäß Anspruch
1 vorgesehen.
-
Gemäß zumindest bevorzugten Ausführungsformen
kann der Benutzer unter Verwendung eines Dateneingabesystems durch
eine Kombination der Eingabe eines oder mehrerer Zeichen auf einer digital
angezeigten Tastatur mit einer Zeigevorrichtung und der Verwendung
einer Suchliste zum Erhalten einer Liste von Vervollständigungskandidaten Text
schnell eingeben und nach Text suchen. Der Benutzer kann die Suchliste
zu jeder beliebigen Zeit aktivieren, um eine Liste von Vervollständigungskandidaten
zu erhalten, während
er eine Teiltexteingabe mit dem Dateneingabesystem eingibt. Wenn
die Suchliste aktiv ist, wird eine Liste von Vervollständigungskandidaten
auf einer graphischen Benutzerschnittstelle für den Benutzer angezeigt, aus
der der Benutzer auswählen
kann, und der Benutzer kann eine oder mehrere Tätigkeiten ausführen. Der
Benutzer kann die Suchliste deaktivieren und zum Modifizieren der
aktuellen Teiltexteingabe und anderen Texts zurückkehren. Der Benutzer kann
einen der Vervollständigungskandidaten
in der Suchliste auswählen
und den ausgewählten
Vervollständigungskandidaten
verwenden, um die Teiltexteingabe, die der Benutzer gegenwärtig eingibt,
zu ersetzen. Wenn der Benutzer die interaktive Suchliste deaktiviert, kann
er sofort damit fortfahren, zur aktuell eingegebenen Teiltexteingabe
hinzuzufügen
oder diese zu modifizieren, und er kann die Suchliste Wiederaufrufen,
um eine weitere Suche nach Vervollständigungskandidaten auf der
Grundlage der modifizierten Teiltexteingabe vorzunehmen. Im zweiten
Fall wird der ausgewählte
Vervollständigungskandidat
verwendet, um die Teiltexteingabe zu ersetzen, die der Benutzer gegenwärtig eingibt,
und das Dateneingabesystem beginnt mit dem Überwachen auf eine neue Teiltexteingabe
vom Benutzer.
-
Gemäß einer Ausführungsform
kann der Benutzer, wenn die Suchliste aktiv ist, einen der Vervollständigungskandidaten
in der Suchliste verwenden, um eine weitere automatische Suche einzuleiten,
um eine weiter verfeinerte Liste von Vervollständigungskandidaten zu erhalten.
Gemäß dieser
Ausführungsform
sind Mehrebenen-Suchlisten und Mehrebenensuchen verfügbar, um
dabei zu helfen, die Vervollständigung
einer Teiltexteingabe zu beschleunigen. Daher kann der Benutzer
automatisch eine iterative Suche einleiten, bei der ein in der Suchliste
aufgelisteter Vervollständigungskandidat
als die neue Teiltexteingabe verwendet wird, um dynamisch eine neue Liste
von Vervollständigungskandidaten zu
erhalten, die dann in der Suchliste angezeigt wird. Die automatisierte
Fähigkeit
der Verwendung der Suchliste, um eine verfeinerte Liste von Vervollständigungskandidaten
zu erhalten, ermöglicht
es dem Benutzer, Suchergebnisse schnell und gut zu verwenden, die
nur teilweise erfolgreich sind. Wenn die Suchliste durch eine neue
Liste von Vervollständigungskandidaten revidiert
wird, kann der Benutzer einen der Vervollständigungskandidaten in der neuen
Liste auswählen,
oder er kann den iterativen Suchprozeß noch einmal wiederholen,
indem er einen der Vervollständigungskandidaten
in der neuen Liste auswählt
und eine weitere iterative Suche aktiviert. Zusätzlich kann der Benutzer zur
Tastatureingabe mit dem letzten vom Benutzer bei der vorhergehenden
Iteration der Suchliste ausgewählten
Vervollständigungskandidaten
zurückkehren.
Dieses letztgenannte Merkmal bietet dem Benutzer die bequeme Möglichkeit,
die Eingabe des gewünschten
Worts, des gewünschten Ausdrucks
oder der gewünschten
Zeichenfolge unter Verwendung des letzten bei der vorhergehenden
Iteration der interaktiven Suchliste vom Benutzer ausgewählten Vervollständigungskandidaten
automatisch und nahtlos fortzusetzen. Demgemäß kann der Benutzer die aktuelle
Teiltexteingabe des Benutzers schnell und einfach durch einen besonders
erfolgreichen Vervollständigungskandidaten
ersetzen und damit fortfahren, diesen Teilvervollständigungskandidaten
unter Verwendung der Tastatur aufzubauen oder zu modifizieren, während dem
Benutzer gleichzeitig die Flexibilität gegeben wird, die Suchliste
zu jeder beliebigen Zeit wieder einzugeben.
-
Gemäß einem zweiten Aspekt ist
ein System gemäß Anspruch
18 vorgesehen.
-
Gemäß zumindest bevorzugten Ausführungsformen
ist ein Verfahren zum Verarbeiten mit einer Zeigevorrichtung in
eine Personalcomputervorrichtung eingegebenen Texts vorgesehen.
Bei diesem Verfahren wird eine Teiltexteingabe empfangen und verwendet,
um eine dynamisch erzeugte Liste von Vervollständigungskandidaten zu erhalten.
Die Liste der Vervollständigungskandidaten
wird in einer Suchliste innerhalb einer graphischen Benutzerschnittstelle
angezeigt. Es wird ein der Zeigevorrichtung zugeordnetes Benutzereingangssignal
empfangen. Falls das Benutzereingangssignal einem ersten Typ einer
Benutzerauswahl mit der Zeigevorrichtung entspricht, wird die Suchliste
deaktiviert. Falls das Benutzereingangssignal einem zweiten Typ
einer Benutzerauswahl mit der Zeigevorrichtung entspricht, wird
die Teiltexteingabe durch einen Vervollständigungskandidaten aus der
Suchliste ersetzt.
-
Gemäß einer Ausführungsform
wird eine verfeinerte Liste von Vervollständigungskandidaten auf der
Grundlage von einem der Vervollständigungskandidaten aus der
Suchliste dynamisch erhalten, falls das Benutzereingangssignal einem
dritten Typ einer Benutzerauswahl mit der Zeigevorrichtung entspricht.
Die verfeinerte Liste wird zur weiteren Benutzerauswahl in der Suchliste
angezeigt.
-
Gemäß einer bevorzugten Ausführungsform ist
ein Verfahren zur Verarbeitung einer zumindest teilweise mit einer
Zeigevorrichtung in eine Personalcomputervorrichtung eingegebenen
Eingangszeichenkette vorgesehen. Diese Ausführungsform umfaßt das Ausführen einer
Suche nach einem Satz von Vervollständigungskandidaten zum Lokalisieren mehrerer
möglicher
Vervollständigungskandidaten zum
Vervollständigen
der Eingangszeichenkette ansprechend bzw. in Reaktion auf einen
früher
lokalisierten möglichen
Vervollständigungskandidaten oder
ein von einem Benutzer auswählbares
Zeichen. Wenigstens einer der mehreren möglichen Vervollständigungskandidaten
und wenigstens eines der mehreren möglichen Zeichen, die vom Benutzer
auswählbar
sind, werden angezeigt.
-
Gemäß einer bevorzugten Ausführungsform der
vorliegenden Erfindung ist ein Verfahren zur benutzerbasierten Texteingabe
vorgesehen. Mit dieser Ausführungsform
wird ein Satz von Positionskoordinaten für eine Zeigevorrichtung in
bezug auf eine Benutzerschnittstelle überwacht, und eine digitale
Tastatur wird an einem letzten bekannten Koordinatensatz für die Zeigevorrichtung
immer dann auf der Benutzerschnittstelle angezeigt, wenn die digitale
Tastatur für
die Benutzereingabe aktiviert wird.
-
Gemäß zumindest bevorzugten Ausführungsformen
ist ein Verfahren zum Austauschen der Anzeige einer digitalen Tastatur
und einer Suchliste vorgesehen. Die digitale Tastatur wird auf einer
Benutzerschnittstelle angezeigt, wenn ein Benutzer Text Tastenanschlag
für Tastenanschlag
eingibt. Wenn die digitale Tastatur angezeigt wird, wird die Benutzereingabe überwacht.
Falls die Benutzereingabe der Aktivierung der Suchliste entspricht,
wird die digitale Tastatur durch die Suchliste ersetzt. Falls die
Benutzereingabe dem Beenden der Verwendung der einmal aktivierten
Suchliste entspricht, wird die Suchliste durch die digitale Tastatur
ersetzt.
-
Gemäß zumindest bevorzugten Ausführungsformen
wird eine digitale Tastatur so konfiguriert, daß sie mehrere Zeichen aufweist,
die entsprechend einer den mehreren Zeichen zugeordneten vorbestimmten
Häufigkeitsverteilung
vorbestimmten Orten innerhalb eines Layouts der digitalen Tastatur zugewiesen
sind. Die mehreren Zeichen umfassen auf der Grundlage einer vorbestimmten
Häufigkeitsverteilung
weniger häufig
verwendete Zeichen und häufiger
verwendete Zeichen. Die digitale Tastatur wird auf einer graphischen
Benutzerschnittstelle angezeigt, wobei die weniger häufig verwendeten
Zeichen erheblich weiter von der Mitte der digitalen Tastatur angezeigt
werden als die häufiger
verwendeten Zeichen.
-
Gemäß zumindest bevorzugten Ausführungsformen
ist ein System zur computerunterstützten Texterzeugung und -eingabe
vorgesehen. Das System weist eine Eingabeschnittstelle, eine Verarbeitungseinheit
und ein computerlesbares Medium auf. Die Eingabeschnittstelle empfängt Benutzereingangssignale
auf der Grundlage von Tätigkeiten
mit einer Zeigevorrichtung. Das computerlesbare Medium enthält computerlesbare
Befehle, um die Verarbeitungseinheit anzuweisen, die Texterzeugung
und -eingabe auf der Grundlage einer mit der Zeigevorrichtung über die
Eingabeschnittstelle empfangenen Benutzereingabe zu unterstützen. Das
computerlesbare Medium weist Befehle zum Empfangen einer Teiltexteingabe,
zum Erhalten einer dynamisch erzeugten Liste von Vervollständigungskandidaten
auf der Grundlage der Teiltexteingabe, zum Anzeigen der Liste von
Vervollständigungskandidaten
in einer Suchliste auf einer Anzeigevorrichtung und zum Empfangen
eines der Zeigevorrichtung zugeordneten Benutzereingangssignals
von der Eingabeschnittstelle auf. Falls das Benutzereingangssignal einem
ersten Typ einer Benutzerauswahl mit der Zeigevorrichtung entspricht,
werden die computerlesbaren Befehle programmiert, die Suchliste
zu deaktivieren. Falls das Benutzereingangssignal einem zweiten
Typ einer Benutzerauswahl mit der Zeigevorrichtung entspricht, werden
die computerlesbaren Befehle programmiert, die Teiltexteingabe durch
einen Vervollständigungskandidaten
aus der Suchliste zu ersetzen.
-
Andere Aspekte und Merkmale der vorliegenden
Erfindung werden Durchschnittsfachleuten beim Lesen der folgenden
Beschreibung spezifischer Ausführungsformen
der Erfindung zusammen mit der anliegenden Zeichnung verständlich werden.
-
KURZBESCHREIBUNG
DER ZEICHNUNG
-
In der anliegenden Zeichnung, in
der Ausführungsformen
der Erfindung dargestellt sind, zeigt bzw. zeigen
-
1 ein
schematisches Diagramm einer mit einem Dateneingabesystem versehenen
Personalcomputervorrichtung gemäß einer
ersten Ausführungsform
der Erfindung,
-
2 ein
schematisches Diagramm des Dateneingabesystems gemäß der ersten
Ausführungsform,
-
3 eine
schematische Darstellung der Anzeige einer digitalen Tastatur auf
einer graphischen Benutzerschnittstelle innerhalb der Personalcomputervorrichtung
gemäß der ersten
Ausführungsform,
-
4 eine
schematische Darstellung einer Datenstruktur eines Wörterbuchs
gemäß der ersten Ausführungsform,
-
5 eine
schematische Darstellung der austauschbaren Anzeige der digitalen
Tastatur und einer interaktiven Suchliste gemäß der ersten Ausführungsform,
-
5A eine
schematische Darstellung potentieller Vervollständigungskandidaten zum Abrufen und
Anzeigen in der interaktiven Suchliste gemäß einem Verwendungsbeispiel
der ersten Ausführungsform,
-
6 ein
Flußdiagramm,
in dem aus der Perspektive des Benutzers beispielhaft die Verwendung
des Dateneingabesystems gemäß der ersten Ausführungsform
dargestellt ist, die 7 bis 9 Flußdiagramme, in denen der Operationsfluß des Dateneingabesystems
gemäß der ersten
Ausführungsform dargestellt
ist,
-
10 eine
schematische Darstellung einer alternativen Ausführungsform eines digitalen
Tastatur-Layouts,
-
11 eine
schematische Darstellung einer anderen alternativen Ausführungsform
eines digitalen Tastatur-Layouts,
-
12 eine
schematische Darstellung einer anderen alternativen Ausführungsform
eines digitalen Tastatur-Layouts,
-
13 eine
schematische Darstellung einer anderen Konfiguration einer digitalen
Tastatur gemäß einer
Ausführungsform
der vorliegenden Erfindung,
-
14 eine
schematische Darstellung des Layouts für die interaktive Suchliste
gemäß der ersten
Ausführungsform,
die 15 bis 18 schematische Darstellungen
alternativer Layouts für
die interaktive Suchliste gemäß alter nativen
Ausführungsformen
der vorliegenden Erfindung,
-
19 eine
schematische Darstellung einer Konfiguration für die digitale Tastatur und
die interaktive Suchliste gemäß einer
Ausführungsform
der vorliegenden Erfindung,
-
20 eine
schematische Darstellung einer alternativen Konfiguration für die digitale
Tastatur gemäß einer
Ausführungsform
der vorliegenden Erfindung, die 21 bis 22 Flußdiagramme, in denen der Operationsfluß des Dateneingabesystems
gemäß einer
alternativen Ausführungsform
der vorliegenden Erfindung dargestellt ist, die 23 bis 24 Flußdiagramme,
in denen der Operationsfluß des Dateneingabesystems
gemäß einer
alternativen Ausführungsform
der vorliegenden Erfindung dargestellt ist, die 25 bis 26 Flußdiagramme,
in denen der Operationsfluß des
Dateneingabesystems gemäß einer
alternativen Ausführungsform
der vorliegenden Erfindung dargestellt ist, und
-
27 eine
schematische Darstellung einer alternativen Konfiguration für die digitale
Tastatur gemäß einer
Ausführungsform
der vorliegenden Erfindung.
-
Es sei bemerkt, daß für eine einfache
und klare Darstellung in der anliegenden Zeichnung dargestellte
Elemente nicht notwendigerweise maßstäblich eingezeichnet wurden.
Beispielsweise sind die Abmessungen einiger der Elemente aus Klarheitsgründen in
bezug auf diejenigen anderer Elemente übertrieben. Weiterhin wurden,
wo dies als geeignet angesehen wurde, Bezugszahlen und Bezeichnungen
in der Zeichnung wiederholt, um entsprechende oder analoge Elemente
und Merkmale anzugeben.
-
DETAILLIERTE
BESCHREIBUNG
-
Es wird nun detailliert auf Implementationen und
Ausführungsformen
der Erfindung eingegangen, wobei Beispiele davon in der anliegenden
Zeichnung dargestellt sind.
-
Einleitung
-
Gemäß einem Aspekt der vorliegenden
Erfindung kann der Benutzer unter Verwendung eines Dateneingabesystems
durch eine Kombination des Eingebens von einem oder mehreren Zeichen
auf einer digital angezeigten Tastatur mit einer Zeigevorrichtung
und des Verwendens einer interaktiven Suchliste, um dynamisch eine
Liste von Vervollständigungskandidaten
zu erhalten, Text schnell eingeben und nach Text suchen. Der Benutzer
kann die interaktive Suchliste aktivieren, um zu jeder beliebigen Zeit
eine dynamisch erzeugte Liste von Vervollständigungskandidaten zu erhalten,
während
er eine Teiltexteingabe mit dem Dateneingabesystem eingibt. In dieser
Beschreibung bedeutet "Teiltexteingabe" eine Folge von einem
oder mehreren Zeichen, die einen Anfangsteil eines Worts, eines
Ausdrucks oder einer Zeichenfolge bilden. Wenn die interaktive Suchliste aktiv
ist, wird eine dynamisch erzeugte Liste von Vervollständigungskandidaten
auf einer graphischen Benutzerschnittstelle für den Benutzer zur Auswahl
daraus angezeigt. Die Liste von Vervollständigungskandidaten wird durch
ein Kandidatenvorhersagesystem, das Vervollständigungskandidaten auffindet, von
denen es am wahrscheinlichsten ist, daß sie den vom Benutzer gewünschten
Vervollständigungskandidaten
enthalten, aus wenigstens einem Wörterbuch herausgesucht. Die
Kandidatenvorhersage beruht auf statistischen Maßen, die die Einträge innerhalb des
Wörterbuchs
in bezug auf jeden anderen in eine Rangliste einordnen. Wenn die
interaktive Suchliste aktiv ist, kann der Benutzer eine von mehreren
Tätigkeiten
mit dem Dateneingabesystem unter Einschluß der folgenden ausführen:
- (1) Der Benutzer kann die interaktive Suchliste deaktivieren
und zum Modifizieren der aktuellen Teiltexteingabe und anderen Texts
zurückkehren oder
- (2) der Benutzer kann einen der Vervollständigungskandidaten in der interaktiven
Suchliste auswählen
und den ausgewählten
Vervollständigungskandidaten
verwenden, um die Teiltexteingabe zu ersetzen, die der Benutzer
gegenwärtig eingibt.
-
Im ersten Fall kann der Benutzer,
wenn er die interaktive Suchliste deaktiviert, sofort mit dem Hinzufügen zur
aktuellen, gerade eingegebenen Teiltexteingabe oder mit dem Modifizieren
von dieser fortfahren und die interaktive Suchliste wiederaufrufen, um
auf der Grundlage der modifizierten Teiltexteingabe weiter nach
Vervollständigungskandidaten
zu suchen. Im zweiten Fall wird der ausgewählte Vervollständigungskandidat
verwendet, um die Teiltexteingabe zu ersetzen, die der Benutzer
gegenwärtig
eingibt, und das Dateneingabesystem beginnt, auf eine neue Teiltexteingabe
(eines Worts, eines Ausdrucks oder einer Zeichen folge) vom Benutzer
zu überwachen.
-
Gemäß bestimmten Ausführungsformen
der vorliegenden Erfindung, die nachstehend näher erläutert werden, besteht eine
dritte Tätigkeit,
die dem Benutzer zur Verfügung
steht, wenn die interaktive Suchliste aktiviert ist, darin,
- (3) einen der Vervollständigungskandidaten in der interaktiven
Suchliste zu verwenden, um eine weitere automatische Suche einzuleiten,
um eine verfeinerte dynamische Liste von Vervollständigungskandidaten
aus dem Wörterbuch
zu erhalten.
-
Im dritten Fall sind Mehrebenen-Suchlisten und
Suchen verfügbar,
um dabei zu helfen, die Vervollständigung einer Teiltexteingabe
zu beschleunigen. Im letztgenannten Fall kann der Benutzer automatisch
eine iterative Suche einleiten, wobei ein in der interaktiven Suchliste
aufgelisteter Vervollständigungskandidat
als die neue Teiltexteingabe verwendet wird, um dynamisch eine neue
Liste von Vervollständigungskandidaten
zu erhalten, die dann in einer aktualisierten interaktiven Suchliste
angezeigt wird. Die automatische Fähigkeit zur Verwendung der
interaktiven Suchliste zum dynamischen Erhalten einer verfeinerten
Liste von Vervollständigungskandidaten ermöglicht es
dem Benutzer, schnell und gut Suchergebnisse zu verwenden, die nur
teilweise erfolgreich sind. Wenn die interaktive Suchliste mit einer
neuen Liste von Vervollständigungskandidaten
aktualisiert wird, kann der Benutzer einen der Vervollständigungskandidaten
in der neuen Liste auswählen
oder den iterativen Suchprozeß wiederholen,
indem einer der Vervollständigungskandidaten
in der neuen Liste ausgewählt
wird und eine weitere iterative Suche aktiviert wird. Zusätzlich kann
der Benutzer mit dem letzten vom Benutzer bei der vorhergehenden
Iteration der interaktiven Suchliste ausgewählten Vervollständigungskandidaten
zur Tastatureingabe zurückkehren.
Dieses letztgenannte Merkmal bietet dem Benutzer die Annehmlichkeit,
daß er
unter Verwendung des letzten vom Benutzer bei der vorhergehenden
Iteration der interaktiven Suchliste ausgewählten Vervollständigungskandidaten
automatisch und nahtlos mit der Eingabe des gewünschten Worts, Ausdrucks oder
der gewünschten
Zeichenfolge fortfahren kann. Demgemäß kann der Benutzer schnell
und leicht seine aktuelle Teiltexteingabe durch einen teilweise
erfolgreichen Vervollständigungskandidaten ersetzen
und damit fortfahren, auf diesen Teil-Vervollständigungskandidaten unter Verwendung
der Tastatur aufzubauen oder ihn zu modifizieren, während dem
Benutzer gleichzeitig die Flexibilität gegeben wird, zu einer beliebigen
Zeit wieder auf die interaktive Suchliste zuzugreifen.
-
Wie in dieser Beschreibung weiterhin
erörtert wird,
können
vom Benutzer auch andere Tätigkeiten ausgeführt werden,
wenn die interaktive Suchliste aktiv ist.
-
Betriebsumgebung
-
1 zeigt
ein schematisches Diagramm einer Personalcomputervorrichtung 10 zur
Texteingabe gemäß einer
ersten Ausführungsform
der Erfindung. Die in 1 dargestellte
Personalcomputervorrichtung 10 enthält wenigstens eine Verarbeitungseinheit 12 (in
der Art einer CPU oder eines ähnlichen
Prozessors oder Mehrfachprozessors), die durch einen Bus mit einem
computerlesbaren Medium 16 verbunden ist. Das computerlesbare
Medium 16 stellt einen Speicher für Software und Daten bereit,
die innerhalb der Personalcomputervorrichtung 10 vorhanden sind.
Das computerlesbare Medium 16 kann einen oder mehrere Typen
computerlesbarer Medien, einschließlich eines flüchtigen
Speichers in der Art eines Direktzugriffsspeichers (RAM) und eines
nichtflüchtigen
Speichers in der Art einer Festplatte oder eines Nurlesespeichers
(ROM) aufweisen. Vorzugsweise weist das computerlesbare Medium 16 eine
Kombination eines flüchtigen
und eines nichtflüchtigen Speichers
auf. Gemäß der ersten
Ausführungsform enthält das computerlesbare
Medium 16 ein Betriebssystem, ein Dateneingabesystem 26 und
eine Anwendung 27 in der Art eines Textverarbeitungssystems,
die auf eine benutzerbasierte Texteingabe anspricht. Das computerlesbare
Medium 16 kann auch alternative oder andere Anwendungen
in der Art eines Browsers oder eines Mikrobrowsers, eine E-Mail-Anwendung
und/oder anderer Endbenutzeranwendungen speichern.
-
Das Betriebssystem kann, abhängig von
der verwendeten Personalcomputervorrichtung, ein beliebiges von
mehreren wohlbekannten Betriebssystemen sein. Für handgehaltene Vorrichtungen
kann das Betriebssystem PalmOSTM, Windows
CETM oder ein gleichwertiges Betriebssystem
sein. Für
größere Systeme,
beispielsweise bei Arbeitsstationen oder Desktop-Computern, kann ein robusteres Betriebssystem,
wie beispielsweise Windows 95TM, Windows 98TM, Windows NTTM,
Windows 2000TM, MacOSTM, UNIX,
Linux oder dergleichen, verwendet werden. Für die Zwecke der ersten Ausführungsform
ist das Betriebssystem PalmOSTM.
-
Das Dateneingabesystem 26 wird
als Software implementiert, die auf der Verarbeitungseinheit 12 läuft, um
eine computerunterstützte
Texterzeugung und -eingabe für
den Benutzer zu unterstützen, wenngleich
bei anderen Alternativen das Dateneingabesystem 26 in Form
computerlesbarer Befehle in Firmware oder in Hardwarekomponenten
eingebettet implementiert werden kann. Gemäß der ersten Ausführungsform
werden elektronische Texte und Dokumente von der Anwendung 27 erzeugt
und unterhalten, und der Benutzer autorisiert und editiert den elektronischen
Text und die Dokumente mit dem Dateneingabesystem 26, das über eine
Anwenderprogrammschnittstelle (API) mit der Anwendung 27 kommuniziert.
Dies ermöglicht
es, daß das
Dateneingabesystem 26 tragbar ist, so daß es von
einer oder mehreren Anwendungen verwendet werden kann, um eine Text-
und Dateneingabe vom Benutzer zu empfangen. Als eine Alternative
kann das Dateneingabesystem 26 in einen Teil einer Anwendung
integriert werden.
-
Die Personalcomputervorrichtung 10 weist eine
Graphikanzeigevorrichtung 15 und eine Hardware-Eingabeschnittstelle 17 auf,
die auf eine Benutzereingabe von einer Zeigevorrichtung anspricht.
In dieser Beschreibung bedeutet der Begriff "Zeigevorrichtung" eine Eingabevorrichtung, die es einem
Benutzer erlaubt, eine Auswahl unter einer oder mehreren Wahlmöglichkeiten
zu treffen (eine benutzerbasierte Auswahl). Einige Zeigevorrichtungen
ermöglichen
es einem Benutzer, durch Zeigen auf eine gewünschte Wahlmöglichkeit
benutzerbasierte Auswahlen zu treffen, und sie schließen beispielsweise einen
Stift, einen Zeigestift oder einen Finger ein. Allgemeiner schließen Zeigevorrichtungen,
die in der Lage sind, benutzerbasierte Auswahlen zu unterstützen, beispielsweise
die vorstehenden Zeigevorrichtungen, die für das Zeigen geeignet sind,
sowie andere Eingabevorrichtungen, wie eine Maus, einen Trackball
oder dergleichen, ein.
-
Die Graphikanzeigevorrichtung 15 ist über eine
Videoanzeigeschaltung 13 mit der Verarbeitungseinheit 12 verbunden
und wird von dieser gesteuert. Die Graphikanzeigevorrichtung 15 kann
eine CRT, eine Flüssigkristallanzeige
oder eine gleichwertige Computeranzeige sein.
-
Gemäß der ersten Ausführungsform
ist die Personalcomputervorrichtung 10 ein persönlicher
digitaler Assistent, bei dem die Graphikanzeigevorrichtung 15 und
die Hardware-Eingabeschnittstelle 17 in Form
eines berührungsempfindlichen
Bildschirms 14 kombiniert sind, der sowohl als eine Graphikanzeige 15 als
auch eine Eingabeschnittstelle dient, die dazu in der Lage ist,
ansprechend auf eine Berührung
von einer Zeigevorrichtung in der Art eines Stifts oder eines Zeigestifts
Koordinatenpositionssignale zu erzeugen. Fachleute werden verstehen,
daß die
Personalcomputervorrichtung 10 in der folgenden Diskussion
nur zu Erläuterungszwecken
als ein persönlicher digitaler
Assistent dargestellt ist und daß die Erfindung auch mit anderen
Personalcomputervorrichtungen unter Einschluß handgehaltener Vorrichtungen, von
Personalcomputern und von anderen Mikroprozessor-basierten elektronischen
Vorrichtungen, von Mobiltelefonen, Internetgeräten und eingebetteten Vorrichtungen
mit einer geeigneten Graphikanzeige und einer Eingabeschnittstelle,
die auf eine Benutzereingabe über
einen Stift, einen Zeigestift, einen Finger, eine Maus oder eine
gleichwertige Zeigevorrichtung anspricht, welche es dem Benutzer
ermöglicht, eine
Wahlmöglichkeit
von vielen auszuwählen,
verwirklicht werden kann. Andere Typen gleichwertiger Personalcomputervorrichtungen,
auf die die Merkmale und Aspekte der vorliegenden Erfindung anwendbar
sind, umfassen beispiels weise ein Internetgerät, das über eine Fernsteuerung gesteuert
wird (wobei ein Internetdienst beispielsweise über eine Set-Top-Box und eine
Fernsteuerung durch ein Fernsehgerät betrieben wird). Bei anderen
Ausführungsformen
kann die Hardware-Eingabeschnittstelle 17 ein Digitalisiertablett,
eine druckempfindliche Eingabefläche
oder eine Näherungserfassungs-Eingabefläche sein.
Es sei auch bemerkt, daß die
Personalcomputervorrichtung 10 durch eine interne Leistungsquelle
(18) oder eine externe Leistungsquelle versorgt werden
kann.
-
Wie in 2 dargestellt ist, weist das Dateneingabesystem 26 computerlesbare
Befehle für
eine digitale Tastatur 28, ein Kandidatenvorhersagesystem 32,
ein Wörterbuch 20 und
eine interaktive Suchliste 30 auf. Die digitale Tastatur 28 bildet
eine Schnittstelle, über
die der Benutzer Text und Daten in die Personalcomputervorrichtung 10 eingeben
kann (1). Wenn der
Benutzer Zeichen über
die digitale Tastatur 28 eingibt, um ein Wort, einen Ausdruck oder
eine Zeichenfolge zu konstruieren, werden die vom Benutzer eingegebenen
Zeichen in einer Suchzeichenkette als eine Teiltexteingabe gespeichert. Die
Suchzeichenkette wird vom Kandidatenvorhersagesystem 32 verwendet,
um das Wörterbuch 20 auf Vervollständigungskandidaten
zu durchsuchen, die mit der aktuellen Teiltexteingabe beginnen,
die in der Suchzeichenkette gespeichert ist. Die interaktive Suchliste 30 wird
verwendet, um zur Benutzerauswahl die Liste vom Kandidatenvorhersagesystem 32 aufgefundener
Vervollständigungskandidaten
anzuzeigen. Gemäß der ersten
Ausführungsform
unterstützt
das Dateneingabesystem 26 eine auf Gesten bzw. Handbewegungen
beruhende Benutzereingabe für
die Auswahl von Vervollständigungskandidaten aus
der interaktiven Suchliste 30, wie nachstehend in näheren Einzelheiten
beschrieben wird.
-
Digitale Tastatur
-
Wie in 3 dargestellt ist, wird ein Bild der digitalen
Tastatur 28 auf einer graphischen Benutzerschnittstelle 34 innerhalb
des Bildschirmbereichs des berührungsempfindlichen
Bildschirms 14 angezeigt, sobald das Dateneingabesystem 26 initialisiert
worden ist und für
das Empfangen einer Eingabe vom Benutzer bereit ist. Die digitale
Tastatur 28 enthält mehrere
Tasten, von denen jede wenigstens einem Zeichen aus einem Zeichensatz
zugeordnet ist. Wenn beispielsweise das englische Alphabet oder ein
das englische Alphabet enthaltender Zeichensatz verwendet wird,
kann jede Taste auf der digitalen Tastatur 28 einen oder
mehrere Buchstaben aus dem englischen Alphabet enthalten. Es sei
bemerkt, daß nur
beispielhaft auf das englische Alphabet Bezug genommen wird, und
daß die
digitale Tastatur 28 so konfiguriert werden kann, daß sie beliebige
Sätze von
Zeichen enthält
und anzeigt, die der Benutzer dann auswählen und verwenden kann, um
Text in die Personalcomputervorrichtung 10 einzugeben.
Die Begriffe "Zeichensatz" und "Satz von Zeichen" bezeichnen in dieser
Beschreibung einen Satz, der mehrere Buchstaben, Zahlen und/oder
typographische Symbole enthält.
Beispiele von Zeichensätzen umfassen
ein oder mehrere Alphabete einer geschriebenen Sprache (beispielsweise
Englisch, Französisch,
Deutsch, Spanisch, Chinesisch oder Japanisch) und binär codierte
Zeichensätze,
wie ASCII (American Standard Code for Information Interchange),
EBCDIC (Extended Binary Coded Decimal Interexchange Code) und BCD
(Binary Coded Decimal), sind jedoch nicht auf diese beschränkt.
-
Gemäß der ersten Ausführungsform
zeigt die digitale Tastatur 28 digitale Tasten an, die
Zeichen des englischen Alphabets zusammen mit aus dem ASCII-Zeichensatz
ausgewählten
speziellen Zeichen enthalten. Wörter,
Ausdrücke
und Zeichenfolgen können
durch einfache Verwendung der Zeigevorrichtung in ein elektronisches
Dokument oder einen elektronischen Text eingetippt werden, um in
der Folge jede Taste für
das gewünschte
Wort, den gewünschten
Ausdruck oder die gewünschte
Zeichenfolge auszuwählen.
Wie später
erörtert
wird, kann der Benutzer auch die digitale Tastatur 28 verwenden, um
eine automatische Suche nach Vervollständigungskandidaten einzuleiten,
um Wörter,
Ausdrücke und/oder
Zeichenfolgen automatisch schneller und flexibler einzugeben. Wie
in dieser Beschreibung später
auch erörtert
wird, können
an der digitalen Tastatur 28 mehrere Erweiterungen implementiert werden,
um die Fähigkeit
des Benutzers weiter zu verbessern, Text unter Verwendung einer
Zeigevorrichtung schnell, wirksam und flexibel eingeben zu können.
-
Wörterbuch
-
2 zeigt
eine beispielhafte Datenstruktur für das Wörterbuch 20. Vorzugsweise
enthält
das Wörterbuch 20 wie
gemäß der ersten
Ausführungsform
Vervollständigungskandidaten
mit Gewichtswerten zum relativen Einordnen von Vervollständigungskandidaten
in eine Rangliste. Das Wörterbuch 20 enthält mehrere
Einträge,
wobei jeder Eintrag ein Vervollständigungskandidatenfeld 22 zum
Speichern eines Vervollständigungskandidaten
und ein Gewichtsfeld 24 zum Speichern eines dem in einem
entsprechenden Vervollständigungskandidatenfeld 22 gespeicherten
Vervollständigungskandidaten
zugeordneten Zahlenwerts aufweist. Jeder in dem Wörterbuch 20 gespeicherte
Vervollständigungskandidat stellt
ein Wort, einen Ausdruck oder eine Zeichenfolge in einer bestimmten
Sprache dar. Zeichenfolgen können
Wortfortsetzungen einschließen,
sind jedoch nicht darauf beschränkt.
Wortfortsetzungen stellen den Anfangsteil eines Worts, jedoch nicht
ein ganzes Wort dar. Gemäß der ersten
Ausführungsform,
bei der das Wörterbuch
auf amerikanischem Englisch beruht, können Wortfortsetzungen beispielsweise solche üblichen
Wortvorsilben, wie "com", "con", "dis", "expl", "inter", "mis", "para", "pre", "syn", "tele", "trans" und "univers" einschließen, sind
jedoch nicht darauf beschränkt.
Durch Erhalten einer Liste von Vervollständigungskandidaten, welche übliche Wortvorsilben
einschließen
kann, wird der Benutzeraufwand in bezug auf die Anzahl der zum Erzeugen
eines gewünschten
Texteintrags erforderlichen Schritte verringert. Weiterhin werden
bestimmte Zeichenkombinationen, wie Wortvorsilben, zwischen mehreren Vervollständigungskandidaten
gemeinsam verwendet, wodurch das Lernen der Orte von Vervollständigungskandidaten
innerhalb von Unterebenen der interaktiven Suchliste 30 beschleunigt
werden kann, wenn eine Mehrebenensuche (also eine iterative Suche)
verfügbar
ist.
-
Jedes Gewichtsfeld 24 speichert
einen Gewichtswert zum Einordnen des zusammen mit anderen Vervollständigungskandidaten
in dem Wörterbuch 20 im
entsprechenden Vervollständigungskandidatenfeld 22 gespeicherten
entsprechenden Vervollständigungskandidaten
in einer Rangliste. Der in einem Gewichtsfeld 24 gespeicherte
Gewichtswert kann auf einer von vielen Metriken beruhen. Jedes Gewichtsfeld 24 kann
beispielsweise einen Wert enthalten, der einen den Häufigkeitsgrad
der Verwendung des im entsprechenden Vervollständigungskandidatenfeld 22 ge speicherten
Vervollständigungskandidaten
in bezug auf die anderen Vervollständigungskandidaten in dem Wörterbuch 20 darstellt.
Als ein anderes Beispiel können
die Gewichtsfelder 24 Zahlenwerte enthalten, die darauf
beruhen, welches Wort oder welcher Ausdruck vor dem im entsprechenden Vervollständigungskandidaten
gespeicherten Vervollständigungskandidaten
kam, welche auf einer Analyse eines großen Textkörpers beruhen. Jedes Gewichtsfeld 24 kann
auch durch ein oder mehrere verwandte Felder ergänzt werden.
-
Kandidatenvorhersagesystem
-
Mit bezug auf 2 sei bemerkt, daß das Kandidatenvorhersagesystem 32 programmiert
wird, um das Wörterbuch 20 dynamisch
auf Vervollständigungskandidaten
zu durchsuchen, die mit der vom Benutzer eingegebenen Teiltexteingabe
beginnen. Das Kandidatenvorhersagesystem 32 gewinnt Vervollständigungskandidaten
aus dem Wörterbuch 20, indem
es bestimmt, welche Wörterbucheinträge wahrscheinlicher
diejenigen sind, die der Benutzer einzutippen versucht. Gemäß der ersten
Ausführungsform
werden die Vervollständigungskandidaten anhand
des Wörterbuchs 20 auf
der Grundlage im Gewichtsfeld 24 für jeden Eintrag gespeicherter
Häufigkeitswerte
erhalten. Gemäß der ersten
Ausführungsform
werden Vervollständigungskandidaten
mit den höchsten
Gewichtswerten gewonnen. Die Häufigkeitswerte
stellen die Häufigkeit
der Verwendung der Einträge
in bezug auf jeden anderen dar. Diese Häufigkeitswerte können auf
der Grundlage einer Analyse eines großen Textkörpers bestimmt werden, oder
sie können
auf der Grundlage der Verwendung von Wörtern, Ausdrücken und/oder
Zeichenfolgen des spezifischen Benutzers durch das Dateneingabesystem 26 dynamisch
erzeugt oder modifiziert werden. Es können auch andere statistische
Maßnahmen
verwendet werden, um das Kandidatenvorhersagesystem 32 zu
verbessern, wie das Einordnen von Informationen in eine Rangliste
oder das Identifizieren der Häufigkeit,
mit der ein Eintrag in dem Wörterbuch 20 beliebigen
der anderen Einträge
in dem Wörterbuch 20 folgt.
-
Vorzugsweise gewinnt das Kandidatenvorhersagesystem 32 alle
möglichen
Vervollständigungskandidaten
unter Beschränkung
auf eine oder mehrere vorbestimmte Metriken. Gemäß der ersten Ausführungsform
ist die Gesamtzahl der gewonnenen Vervollständigungskandidaten durch eine
vorbestimmte maximale Anzahl anzeigbarer Vervollständigungskandidaten
begrenzt. Die maximale Anzahl vom Kandidatenvorhersagesystem 32 gewonnener Vervollständigungskandidaten
ist vorzugsweise eine kleine, jedoch erhebliche Anzahl, die ausreichend, um
dem Benutzer so viele mögliche
Kandidaten wie möglich
zur Verfügung
zu stellen, ohne den Benutzer mit einer übermäßigen Anzahl von Kandidaten
zu sättigen
und ohne die Fähigkeit
des Benutzers übermäßig zu beeinträchtigen,
die ausgewählten
Kandidaten schnell zu betrachten und schnell aus ihnen auszuwählen. Die
maximale Anzahl von Vervollständigungskandidaten
ist vorzugsweise auch groß,
um dem Benutzer eine Vielzahl von Vervollständigungskandidaten (falls verfügbar) zur
Auswahl bereitzustellen, um ein zu hohes Ausmaß einer Mehrebenensuche zum
Vervollständigen
einer Teiltexteingabe zu vermeiden. Im Fall der ersten Ausführungsform
ist die maximale Anzahl der anzeigbaren Vervollständigungskandidaten
auf fünf
gelegt. Das Dateneingabesystem 26 kann vom Benutzer konfiguriert
werden, um eine größere oder
kleinere Anzahl von Vervollständigungskandidaten
zu präsentieren.
Vorzugs weise sind die Vervollständigungskandidaten
in einer Konfiguration anzeigbar, die vom Benutzer ausgewählt werden
kann. Indem die Anzahl der anzeigbaren Vervollständigungskandidaten zu einem
vom Benutzer konfigurierbaren Merkmal gemacht wird, werden erweiterte
Fähigkeiten
zur computerunterstützten
Texterzeugung und Eingabe mit dem Dateneingabesystem 26 bereitgestellt.
-
Interaktive
Suchliste
-
Die interaktive Suchliste 30 empfängt vom Kandidatenvorhersagesystem 32 aus
dem Wörterbuch 20 herausgesuchte
Vervollständigungskandidaten
und präsentiert
dem Benutzer eine Liste dieser Vervollständigungskandidaten. Die interaktive
Suchliste 30 kann dem Benutzer, abhängig davon, mit welchen Optionen
das Dateneingabesystem 26 programmiert wurde und welche
dieser Optionen vom Benutzer ausgewählt wurden, in einer Vielzahl
verschiedener Arten angezeigt werden, wie später in dieser Beschreibung
erörtert
wird. Gemäß der ersten Ausführungsform
wird die interaktive Suchliste 30 auf dem berührungsempfindlichen
Bildschirm 14 als eine interaktive vertikale Liste von
Vervollständigungskandidaten
angezeigt. Wie nachstehend weiter beschrieben wird, ist die interaktive
Suchliste 30 programmiert, um Mehrebenensuchen zu unterstützen, so daß der Benutzer
schnell einen Vervollständigungskandidaten
von einer Ebene von Suchergebnissen verwenden kann, um tiefer in
das Wörterbuch 20 vorzudringen
und einen engeren Satz von Vervollständigungskandidaten zu gewinnen.
-
Gemäß der ersten Ausführungsform
werden die digitale Tastatur 28 und die interaktive Suchliste 30 auch
austauschbar auf der graphischen Benutzerschnittstelle 34 angezeigt,
wie in 5 weiter dargestellt
ist. Wenn die digitale Tastatur 28 und die interaktive
Suchliste 30 austauschbar sind, kann der Benutzer leicht
und schnell zwischen dem Eingeben von Zeichen oder einer anderen
Modifizierung einer Teiltexteingabe von der digitalen Tastatur 28 und
der Verwendung der interaktiven Suchliste 30 wechseln,
um die Eingabe von Wörtern,
Ausdrücken
und/oder Zeichenfolgen schnell und flexibel zu vervollständigen. Wenn
die digitale Tastatur 28 und die interaktive Suchliste
austauschbar sind, teilen sich das Bild der digitalen Tastatur 28 und
das Bild der interaktiven Suchliste 30 im wesentlichen
die gleiche Anzeigefläche
auf der graphischen Benutzerschnittstelle 34. Das Dateneingabesystem 26 für die erste
Ausführungsform
ist vorzugsweise programmiert, um, abhängig von der vom Benutzer durch
die Zeigevorrichtung bereitgestellten Eingabe, automatisch zwischen der
digitalen Tastatur 28 und der interaktiven Suchliste 30 zu
wechseln. Dieses letztgenannte Merkmal minimiert das Stören der
Konzentration des Benutzers auf den Dateneingabeprozeß, weil
die Aufmerksamkeit des Benutzers sowohl für die digitale Tastatur 28 als
auch für
die interaktive Suchliste 30 auf denselben Bereich der
graphischen Benutzerschnittstelle 34 konzentriert bleibt.
Durch das Austauschen der Anzeige der digitalen Tastatur 28 und
der interaktiven Suchliste 30 innerhalb der graphischen
Benutzerschnittstelle 34 wird ein raumwirksames Layout
für die
Verwendung des Dateneingabesystems 26 auf dem berührungsempfindlichen
Bildschirm 14 bereitgestellt. Durch die Austauschbarkeit
der digitalen Tastatur 28 und der interaktiven Suchliste 30 können auch
Handbewegungen minimiert werden, wenn der Benutzer zwischen der
Verwendung der digitalen Tastatur 28 und der interaktiven
Suchliste 30 umschaltet, ohne daß die Zeigevorrichtung zu einem
anderen Teil des berührungsempfindlichen
Bildschirms 14 bewegt werden muß (oder allgemeiner, ohne daß die Zeigevorrichtung
zu einem anderen Teil der Hardware-Eingabeschnittstelle bewegt werden
muß).
Diese Anordnung kann für
kleinere Personalcomputervorrichtungen, wie PDAs oder andere handgehaltene Vorrichtungen,
oder in Fällen,
in denen der vom Dateneingabesystem 26 verwendete Platz
auf der graphischen Benutzerschnittstelle 34 minimiert
werden muß,
besonders nützlich
sein.
-
Die interaktive Suchliste 30 ermöglicht es dem
Benutzer, die Eingabe von Wörtern,
Ausdrücken und/oder
Zeichenfolgen schneller und flexibler zu vervollständigen,
als dies andernfalls möglich
wäre, falls
der Benutzer jedes einzelne Zeichen der gewünschten Eingabe einfach eintippen
müßte.
-
Überblick über die
Methodologie
-
Die auf eine Personalcomputervorrichtung 10 gemäß der ersten
Ausführungsform
angewendete Grund-Dateneingabemethodologie gemäß der vorliegenden Erfindung
wird nun beschrieben. Nachstehend wird auf die 1 bis 5 Bezug
genommen.
-
Gemäß der ersten Ausführungsform
interagiert der Benutzer über
den berührungsempfindlichen
Bildschirm 14 unter Verwendung eines Stifts als Zeigevorrichtung
mit der Personalcomputervorrichtung 10. Es ist jedoch zu
verstehen, daß die
folgende Methodologie auch mit verschiedenen anderen Zeigevorrichtungen,
wie einem Zeigestift, einem Finger, einem Trackball oder einer Maus,
verwendet werden kann. Falls eine Maus oder eine gleichwertige Zeigevorrichtung
an Stelle eines Stifts, eines Zeigestifts oder eines Fingers verwendet
wird, sollte für
die erste Ausführungsform
die Tätigkeit
des Drückens
einer Maustaste als dem Berühren
des berührungsempfindlichen
Bildschirms 14 oder der Berührungsauflage mit einem Zeigestift,
einem Stift oder einem Finger gleichwertig angesehen werden, und
es sollte gleichzeitig das Lösen
einer heruntergedrückten
Maustaste als dem Abheben des Zeigestifts, des Stift, des Fingers
oder einer anderen Zeigevorrichtung von dem berührungsempfindlichen Bildschirm 14 (oder
einer Berührungsauflage
oder einer druckempfindlichen Auflage) gleichwertig angesehen werden.
-
Beim Dateneingabesystem 26 gemäß der ersten
Ausführungsform
sind für
den Benutzer zwei Primäreingabemodi
verfügbar,
nämlich
ein Tastaturmodus und ein Suchmodus. Im Tastaturmodus kann der Benutzer
durch einfaches Zeigen auf Tasten auf der digitalen Tastatur 28 mit
der Zeigevorrichtung und Auswählen
von diesen Text Zeichen für
Zeichen (oder Tastenanschlag für
Tastenanschlag) eingeben. Bei jeder Auswahl einer Taste auf der
digitalen Tastatur 28 werden die eine oder die mehreren
Zeichen, die jeder Taste zugeordnet sind, zur Anwendung 27 weitergeleitet,
um sie in Text, beispielsweise ein Dokument oder ein Dateneingabefeld,
einzugeben. Im Suchmodus kann der Benutzer Vervollständigungskandidatenvorschläge für das Vervollständigen eines Worts,
eines Ausdrucks oder einer Zeichenfolge suchen und unter diesen
auswählen,
wie nachstehend näher
beschrieben wird.
-
Wenn der Benutzer gemäß der ersten
Ausführungsform
mit der Eingabe eines Worts, eines Ausdrucks oder einer Zeichenfolge
unter Verwendung der digitalen Tastatur 28 beginnt, beginnt
das Kandidatenvorhersagesystem 32 automatisch damit, das
Wörterbuch 20 nach
Kandidatenwörtern,
-ausdrücken
und/oder -zeichenfolgen zu durchsuchen, deren Eingabe der Benutzer
versuchen kann. Die vom Kandidatenvorhersagesystem 32 ausgeführte Durchsuchung
des Wörterbuchs 20 beginnt
automatisch ansprechend auf die vom Benutzer eingegebene entstehende
Zeichenfolge. Dies erfolgt durch Durchsuchen des Wörterbuchs 20 nach
Vervollständigungskandidaten,
die mit dem oder den Anfangszeichen beginnen, die der Benutzer eingegeben
hat (also der Teiltexteingabe). Die vom Benutzer mit der Zeigevorrichtung
von Hand eingegebenen Anfangszeichen werden als eine Suchzeichenkette
zwischengespeichert. Die Suchzeichenkette wird vom Kandidatenvorhersagesystem 32 zum
Durchsuchen des Wörterbuchs 20 nach
potentiellen Vervollständigungskandidaten
verwendet. Das Kandidatenvorhersagesystem 32 ruft Vervollständigungskandidaten auf
der Grundlage davon ab, welche Einträge in das Wörterbuch 20 am wahrscheinlichsten
den Vervollständigungskandidaten
enthalten, den der Benutzer einzutippen versucht.
-
Die vom Kandidatenvorhersagesystem 32 aus
dem Wörterbuch 20 abgerufenen
Vervollständigungskandidaten
werden der interaktiven Suchlistenlogik zugeführt, die das Erzeugen der interaktiven Suchliste 30 bewirkt.
Weil jede neue Liste von Vervollständigungskandidaten von dem
Kandidatenvorhersagesystem 32 erzeugt wird, erzeugt die
interaktive Suchlistenlogik eine revidierte Liste von Vervollständigungskandidaten,
wenn der Benutzer mit der digitalen Tastatur 28 Zeichen
zur Teiltexteingabe hinzufügt
oder Zeichen mit der digitalen Tastatur 28 aus der Teiltexteingabe
löscht.
Ob die interaktive Suchliste 30 auf der graphischen Benutzerschnittstelle 34 angezeigt
wird, hängt
jedoch davon ab, ob die interaktive Suchliste 30 aktiviert
worden ist oder nicht. Gemäß der ersten
Ausführungsform
kann der Benutzer die interaktive Suchliste 30 aktivieren,
indem er einen vorbestimmten Verzögerungszeitraum L1 mit der
Zeigevorrichtung an einer Auswahl verweilt, die durch Herunterdrücken einer
Taste auf der digitalen Tastatur 28 vorgenommen wird, die
ein oder mehrere Zeichen enthält.
Die Zeitdauer, während
derer der Benutzer bei der ausgewählten Taste verweilen muß, ist eine
vom Benutzer konfigurierbare Option. Typischerweise ist die gewählte Verzögerung kürzer als eine
Sekunde, wenngleich die Verzögerung
auch als jeder beliebige vom Benutzer gewünschte Zeitraum konfiguriert
werden kann. Sobald der Benutzer den Verzögerungszeitraum L1 auf einer
ausgewählten Taste
verweilt, wird die interaktive Suchliste 30 aktiv. Wenn
die interaktive Suchliste 30 aktiviert wird, ändert sich
der Eingabemodus für
das Dateneingabesystem 26 vom Tastaturmodus zum Suchmodus. Wenn
zusätzlich
die interaktive Suchliste 30 gemäß der ersten Ausführungsform
aktiviert wird, wird das Bild der digitalen Tastatur 28 von
der graphischen Benutzerschnittstelle 34 gelöscht und
durch ein Bild der interaktiven Suchliste 30 ersetzt.
-
Wenngleich die interaktive Suchliste 30 gemäß der ersten
Ausführungsform
kontinuierlich aktualisiert wird, kann sie gemäß einer alternativen Konfiguration
erzeugt werden, sobald der Benutzer die interaktive Suchliste 30 aktiviert,
indem er auf einer ausgewählten
Taste auf der digitalen Tastatur 28 verweilt. Bei dieser
alternativen Konfiguration wird die interaktive Suchliste 30 jedesmal
dann revidiert, wenn der Benutzer eine neue oder modifizierte interaktive Suchliste 30 aufruft.
-
Sobald der Benutzer die Anzeige der
eine Liste von Vervollständigungskandidaten
enthaltenden interaktiven Suchliste 30 aktiviert hat, bietet
das Dateneingabesystem 26 dem Benutzer die Flexibilität, unter
Verwendung der Zeigevorrichtung mit einer von mehreren Operationen
fortzufahren. Wenn die interaktive Suchliste 30 angezeigt
wird und aktiv ist, kann der Benutzer beliebige der folgenden Aktionen ausführen:
- (1) Der Benutzer kann die interaktive Suchliste 30 deaktivieren
und zum Modifizieren der aktuellen Teiltexteingabe und anderen Texts
zurückkehren oder
- (2) der Benutzer kann einen der Vervollständigungskandidaten in der interaktiven
Suchliste 30 auswählen
und den ausgewählten
Vervollständigungskandidaten
verwenden, um die Teiltexteingabe zu ersetzen, die der Benutzer
gegenwärtig eingibt,
oder
- (3) der Benutzer kann einen der Vervollständigungskandidaten in der interaktiven
Suchliste 30 verwenden, um eine weitere automatische Suche einzuleiten,
um dynamisch eine verfeinerte Liste von Vervollständigungskandidaten
aus dem Wörterbuch 20 zu
erhalten, oder
- (4) der Benutzer kann durch die in der interaktiven Suchliste 30 angezeigten
Vervollständigungskandidaten
rollen oder diese zyklisch durchlaufen, einen Vervollständigungskandidaten
zur Zeit auswählen
oder die Auswahl eines Vervollständigungskandidaten
zur Zeit aufheben, wenn der Benutzer entscheidet, welcher der Vervollständigungskandidaten
(falls überhaupt)
verwendet wird, im die aktuelle Teiltexteingabe zu vervollständigen oder
das weitere Suchen einzuleiten, oder
- (5) der Benutzer kann für
einen beliebigen Zeitraum auf eine "tote Zone" innerhalb der graphischen Benutzerschnittstelle 34 weisen
oder in dieser verweilen, ohne eine weitere Tätigkeit durch das Dateneingabesystem 26 auszulösen, um
eine Pause einzulegen und zu überlegen,
ob die Verwendung der angezeigten interaktiven Suchliste 30 fortgesetzt
werden soll oder ob eine der anderen vorstehend angeführten Operationen
ausgeführt
werden soll.
-
Die Tätigkeit des Benutzers mit der
Zeigevorrichtung erzeugt Benutzereingabesignale, die vom Dateneingabesystem 26 überwacht
und analysiert werden, um den Typ der vorgenommenen Benutzerauswahl
oder Tätigkeit
zu bestimmen. Welche Operation vom Dateneingabesystem 26 ausgeführt wird, sobald
die interaktive Suchliste 30 aktiviert wurde, hängt davon
ab, welche Tätigkeit
der Benutzer mit der Zeigevorrichtung ausführt.
-
Falls der Benutzer keinen der in
der interaktiven Suchliste 30 präsentierten Vervollständigungskandidaten
auswählen
möchte
und weitere Zeichen eingeben möchte
oder die Teiltexteingabe von der digitalen Tastatur 28 auf
andere Weise modifizieren möchte,
kann der Benutzer bei aktiver und auf der graphischen Benutzerschnittstelle 34 angezeigter
interaktiver Suchliste 30 die Zeigevorrichtung abheben,
ohne eine erhebliche Bewegung auszuführen, oder er kann die Zeigevorrichtung
abheben, nachdem er sie zu einer toten Zone gezogen oder zurückgeführt hat.
Diese beiden Tätigkeiten
veranlassen die Hardware-Eingabeschnittstelle 17, ein Benutzereingabesignal
zu erzeugen, das als ein Hinweis für das Dateneingabesystem 26 dient,
daß der
Benutzer die interaktive Suchliste 30 deaktivieren möchte und
zum manuellen Modifizieren der aktuellen Teiltexteingabe mit der
digitalen Tastatur 28 zurückkehren möchte. Wenn die interaktive
Suchliste 30 gemäß der ersten Ausführungsform
deaktiviert wird, wird das Bild der interaktiven Suchliste 30 von
der graphischen Benutzerschnittstelle 34 gelöscht und
durch das Bild der digitalen Tastatur 28 ersetzt, die zur
weiteren Verwendung durch den Benutzer aktiviert wird. Dies ermöglicht es
dem Benutzer, im Tastaturmodus unproblematisch zur Verwendung der
digitalen Tastatur 28 zurückzukehren, ohne daß er die
Zeigevorrichtung auf einen anderen Ort richten müßte. Sobald der Tastaturmodus
aktiv ist, kann der Benutzer das Suchen mit der interaktiven Suchliste 30 wieder
einleiten, um weitere Vervollständigungskandidaten
zu erhalten, indem er wiederum mit der Zeigevorrichtung auf einer nachfolgend
ausgewählten
Taste (oder einem nachfolgend ausgewählten Zeichen) auf der digitalen
Tastatur 28 verweilt.
-
Der Vervollständigungskandidat aus der interaktiven
Suchliste 30 wird vom Benutzer durch Erzeugen einer Geste
mit der Zeigevorrichtung ausgewählt.
Für die
Zwecke dieser Beschreibung bezeichnet der Begriff "Geste" eine Bewegung mit
einer Zeigevorrichtung, wenn sich die Zeigevorrichtung in einem
aktiven Zustand befindet. Im allgemeinen können Gesten bildende Bewegungen
linear oder in einem anderen vom Computer erkennbaren Muster erfolgen.
Für die
in den 1 bis 5 dargestellte erste Ausführungsform
und für
Variationen davon ist eine Geste eine Bewegung mit der Zeigevorrichtung
in einer bestimmten Richtung für
wenigstens eine minimale Strecke, wenn sich die Zeigevorrichtung
in einem aktiven Zustand befindet. Die minimale Strecke wird vom
Dateneingabesystem 26 gemäß der ersten Ausführungsform
verwendet, um kleine, unerhebliche Gesten mit der Zeigevorrichtung
zu ignorieren. Hierdurch werden falsche Auswahlen infolge unbeabsichtigter
Bewegungen mit der Zeigevorrichtung minimiert.
-
Gemäß der ersten Ausführungsform
befindet sich die Zeigevorrichtung in einem aktiven Zustand, wenn
sie auf dem berührungsempfindlichen
Bildschirm 14 gehalten wird. Bei alternativen Variationen der
Graphikanzeigevorrichtung 15 und der Hardware-Eingabeschnittstelle 17 können andere
Bedingungen verwendet werden, um zu identifizieren, wann sich die
Zeigevorrichtung in einem aktiven Zustand befindet, und sie werden
als gleichwertig angesehen. Bei einer druckempfindlichen Auflage
befindet sich die Zeigevorrichtung beispielsweise in einem aktiven
Zustand, wenn sie entweder in Kontakt mit der druckempfindlichen
Auflage steht oder zumindest mit einem meßbaren Druckbetrag auf die
druckempfindliche Auflage gedrückt
wird. Wenn die Zeigevorrichtung eine Maus ist, ist sie alternativ
in einem aktiven Zustand, wenn eine Taste auf der Maus gedrückt wird.
-
Das Dateneingabesystem 26 überwacht
die mit der Zeigevorrichtung ausgeführten Gesten, um zu bestimmen,
wann und ob ein Vervollständigungskandidat
in der interaktiven Suchliste 30 ausgewählt worden ist. Gemäß der ersten
Ausführungsform
tut das Dateneingabesystem 26 dies durch Überwachen der
aktuellen Positionskoordinaten der Zeigevorrichtung auf dem berührungsempfindlichen
Bildschirm 14 in bezug auf einen Ursprungspunkt, der erzeugt wird,
wenn die Zeigevorrichtung zuerst die interaktive Suchliste 30 aktiviert.
Die aktuellen Positionskoordinaten der Zeigevorrichtung werden überwacht,
solange die Zeigevorrichtung in Kontakt mit dem berührungsempfindlichen
Bildschirm 14 bleibt. Wenn die aktuellen Positionskoordinaten
empfangen werden, erzeugt das Dateneingabesystem 26 einen
Vektor unter Verwendung der aktuellen Positionskoordinaten der Zeigevorrichtung
und des Ursprungspunkts. Dieser Vektor wird vom Dateneingabesystem 26 verwendet,
um zu bestimmen, ob und wann ein bestimmter Vervollständigungskandidat
in der interaktiven Suchliste 30 ausgewählt worden ist. Das Dateneingabesystem 26 ist
programmiert, um bestimmte Vektortypen bestimmten Einträgen in der
interaktiven Suchliste 30 zuzuordnen. Jedem Eintrag in
der interaktiven Suchliste 30 können ein oder mehrere vorbestimmte
Vektoren zugeordnet sein. Wenn der vom Benutzer gebildete Vektor
mit einem solchen vorbestimmten Vektor übereinstimmt, erkennt das Dateneingabesystem 26,
daß der
Benutzer den im entsprechenden Eintrag der interaktiven Suchliste 30 angezeigten
Vervollständigungskandidaten
auswählt. Falls
das Dateneingabesystem 26 bestimmt, daß der von der Geste des Benutzers
gegenwärtig
erzeugte Vektor einem der Vervollständigungskandidaten in der interaktiven
Suchliste 30 zugeordnet ist, wird der zugeordnete Vervollständigungskandidat
aus der interaktiven Suchliste 30 ausgewählt. Wenn
ein Vervollständigungskandidat
aus der interaktiven Suchliste 30 ausgewählt wird,
wird die bestimmte Auswahl dem Benutzer vorzugsweise durch das Dateneingabesystem 26 angezeigt,
indem der ausgewählte
Vervollständigungskandidat
in der interaktiven Suchliste 30 hervorgehoben wird.
-
Gemäß der ersten Ausführungsform
ist das Dateneingabesystem 26 programmiert, zu fordern, daß der Benutzer
mit der Zeigevorrichtung in Richtung eines oder auf einen Vervollständigungskandidaten
in der interaktiven Suchliste 30 weist, um diesen Vervollständigungskandidaten
auszuwählen.
Die Geste braucht nur über
eine minimale Strecke ausgeführt
zu werden. Bei einer anderen Anordnung ist die vom Benutzer ausgeführte Bewegung
jedoch relativ, wenn ein Benutzer unter Verwendung von Gesten mit der
Zeigevorrichtung Auswahlen aus der interaktiven Suchliste 30 vornimmt.
Bei diesem "relativen" Modus einer gestenbasierten
Kandidatenauswahl braucht der Benutzer nur in eine Richtung zu weisen,
der vom Dateneingabesystem 26 ein gewünschter Vervollständigungskandidat
zugeordnet ist, ohne daß sich die
Zeigevorrichtung notwendigerweise zu dem oder auf den Abschnitt
der graphischen Benutzerschnittstelle 34 bewegt, wo der
Vervollständigungskandidat angezeigt
wird. In diesem Fall entsprechen die vorbestimmten Vektoren, die
vom Dateneingabesystem 26 Einträgen in der interaktiven Suchliste 30 zugeordnet wurden,
eindeutige Gesten mit der Zeigevorrichtung, jedoch nicht notwendigerweise
Gesten, die auf einen oder zu einem bestimmten Eintrag in der interaktiven Suchliste 30 gerichtet
sind. Bei diesem relativen Auswahlmodus werden Gesten mit der Zeigevorrichtung verwendet,
um selbst dann unter den Vervollständigungskandidaten auf der
interaktiven Suchliste 30 auszuwählen, falls der Benutzer nicht
mit der Zeigevorrichtung auf einen oder zu einem bestimmten Vervollständigungskandidaten
innerhalb der interaktiven Suchliste 30 weist. In diesem
Fall braucht der Benutzer die Zeigevorrichtung nicht auf einen oder
zu einem festen Ort innerhalb der interaktiven Suchliste 30 zu
bewegen, um einen bestimmten Vervollständigungskandidaten auszuwählen. Durch
Zuordnen einer Geste zu einem bestimmten Vervollständigungskandidaten
in der interaktiven Suchliste 30 in der vorstehenden Weise
wird der Bewegungsumfang minimiert, der erforderlich ist, um mit
der Zeigevorrichtung Auswahlen aus der interaktiven Suchliste 30 vorzunehmen,
und es wird dem Benutzer dadurch die Flexibilität gegeben, Vervollständigungskandidaten mit
Gesten auszuwählen,
die nicht notwendigerweise auf einen oder zu einem der gewünschten
Vervollständigungskandidaten
gerichtet sind.
-
Sobald der Benutzer einen Vervollständigungskandidaten
aus der interaktiven Suchliste 30 ausgewählt hat,
stehen ihm mehrere Optionen zur Verfügung. Falls der Vervollständigungskandidat
den Eintrag darstellt, den der Benutzer zum Text hinzufügen möchte, kann
er den ausgewählten
Vervollständigungskandidaten
zum Einfügen
in den Text annehmen, indem er die Zeigevorrichtung in weniger als
einem vorbestimmten Grenzzeitbetrag L2 vom berührungsempfindlichen Bildschirm 14 abhebt,
während er
den bestimmten Vervollständigungskandidaten ausgewählt hält. Dieses
letztgenannte Ereignis erzeugt ein Benutzereingabesignal, welches
das Dateneingabesystem 26 anweist, jedes Suchen auf der Grundlage
der Teiltexteingabe zu beenden und der Anwendung 27 zu
signalisieren, den ausgewählten Vervollständigungskandidaten
zu verwenden, um die Teiltexteingabe permanent zu ersetzen. Wenn
der ausgewählte
Vervollständigungskandidat
verwendet wird, um die Teiltexteingabe an diesem Punkt permanent
zu ersetzen, wird die interaktive Suchliste 30 von der
graphischen Benutzerschnittstelle 34 gelöscht, und
das Bild der digitalen Tastatur 28 wird reaktiviert, so
daß es
bereit ist, den nächsten
Tastenanschlag von der Zeigevorrichtung zu empfangen. Mit der so
vervollständigten
Teiltexteingabe beginnt das Dateneingabesystem 26 erneut
auf Texteingaben vom Benutzer zu überwachen.
-
Falls der Benutzer Auswahlen ändern möchte, kann
er sich durch die in der interaktiven Suchliste 30 angezeigte
Liste von Vervollständigungskandidaten
bewegen, indem er mit der Zeigevorrichtung auf einen anderen Vervollständigungskandidaten
in der interaktiven Suchliste 30 weist. Falls der Benutzer unsicher
ist, welchen Vervollständigungskandidaten er
verwenden soll oder eine Pause einlegen möchte, um zu überlegen,
ob er im Suchmodus fortsetzen möchte
oder ob er zum Tastaturmodus zurückkehren möchte, kann
er einen beliebigen Zeitraum auf eine "tote Zone" innerhalb der graphischen Benutzerschnittstelle 34 weisen
oder darin verweilen, ohne eine weitere Tätigkeit durch das Dateneingabesystem 26 auszulösen. Gemäß der ersten
Ausführungsform
beginnt das Dateneingabesystem 26, wenn die interaktive
Suchliste 30 zuerst aktiviert wird, indem bei einer Taste
auf der digitalen Tastatur 28 verweilt wird, die Länge des
Vektors zu überwachen,
den der Benutzer danach erzeugt, um zu bestimmen, wann und ob der
Benutzer einen bestimmten Vervollständigungskandidaten aus der
interaktiven Suchliste 30 auswählt oder wann der Benutzer
eine andere anerkannte Operation, wie das Bewegen der Zeigevorrichtung
zu einer toten Zone, ausführt.
Falls das Dateneingabesystem 26 feststellt, daß die Länge des von
den aktuellen Positionskoordinaten und dem Ursprungspunkt erzeugten
Vektors kleiner oder gleich einer vorbestimmten Länge ist,
nimmt das Dateneingabesystem 26 an, daß sich die Zeigevorrichtung
in einer toten Zone auf der graphischen Benutzerschnittstelle 34 befindet.
Wenn sich die Zeigevorrichtung in einer toten Zone befindet, hat
der Benutzer die Freiheit, zu pausieren, ohne eine weitere Operation
durch das Dateneingabesystem 26 zu aktivieren und ohne
die interaktive Suchliste 30 zu löschen. Hierdurch wird dem Benutzer
die Möglichkeit
gegeben, zu pausieren und zu überlegen,
welches seine nächste
Operation sein wird. Andere tote Zonen können in die graphische Benutzer schnittstelle 34 innerhalb
des Dateneingabesystems 26 programmiert werden, in die
sich der Benutzer mit der Zeigevorrichtung bewegen kann, um die
Fähigkeit
des Benutzers weiter zu verbessern, in verschiedenen Teilen der graphischen
Benutzerschnittstelle 34 zu verweilen. Falls vom Dateneingabesystem 26 herausgefunden wird,
daß der
durch eine Geste erzeugte Vektor eine vorbestimmte Länge übersteigt,
prüft das
Dateneingabesystem 26, ob der bestimmte erzeugte Vektor
einem der Vervollständigungskandidaten
in der interaktiven Suchliste 30 oder einer Operation auf
dem Bildschirm in der Art alternativer oder zusätzlicher toter Zonen zugeordnet
ist.
-
Falls der auf der interaktiven Suchliste 30 ausgewählte Vervollständigungskandidat
nur einen Teil der Eingabe darstellt, die der Benutzer zum Text hinzufügen möchte, kann
der Benutzer den ausgewählten
Vervollständigungskandidaten
verwenden, um eine weitere Suche nach einer weiter verfeinerten Liste
von Vervollständigungskandidaten
aus dem Wörterbuch 20 dynamisch
einzuleiten. Die Fähigkeit zum
dynamischen Suchen nach einer weiter verfeinerten Liste von Vervollständigungskandidaten
auf der Grundlage eines ausgewählten
Vervollständigungskandidaten
wird in dieser Beschreibung auch als eine iterative Suche bezeichnet.
Dieses iterative Suchwerkzeug wird von der interaktiven Suchliste 30 bereitgestellt,
wenn die interaktive Suchliste 30 aktiv ist und eine Liste
potentieller Vervollständigungskandidaten
anzeigt, aus denen der Benutzer auswählen kann. Eine iterative Suche
wird gemäß der ersten Ausführungsform
vom Benutzer ausgelöst,
indem er einen Vervollständigungskandidaten
in der interaktiven Suchliste 30 länger als den vorbestimmten Grenzzeitbetrag
L2 ausgewählt
hält. Die
automatisierte Möglichkeit,
die interaktive Suchliste 30 zum weiteren Durchsuchen des
Wörterbuchs 20 zu
verwenden, ermöglicht
es dem Benutzer, Suchergebnisse, die nur teilweise erfolgreich sind,
gut zu verwenden. Wenn der Benutzer einen in der interaktiven Suchliste 30 ausgewählten Vervollständigungskandidaten
länger
als den vorbestimmten Grenzzeitbetrag L2 aufrechterhält, bestimmt
das Dateneingabesystem 26, daß die Benutzereingabe einer
Benutzerauswahl entspricht, um eine neue Suche unter Verwendung
des ausgewählten
Vervollständigungskandidaten
als Basis für
die neue Suche einzuleiten. Wenn dies geschieht, erhält das Kandidatenvorhersagesystem 32 dynamisch
auf der Grundlage des ausgewählten
Vervollständigungskandidaten
eine verfeinerte Liste von Vervollständigungskandidaten. Wie in 5A dargestellt ist, liefert
die verfeinerte Liste von Vervollständigungskandidaten auf der
Grundlage einer spezifischeren Suchzeichenkette eine engere Liste
von Vervollständigungskandidaten
(also den ausgewählten
Vervollständigungskandidaten).
Das iterative Suchen ermöglicht
das Ausführen
von Mehrebenensuchen mit der interaktiven Suchliste 30,
so daß die
Benutzer schnell einen Vervollständigungskandidaten
von einer Ebene von Suchergebnissen verwenden können, um für einen engeren Satz von Vervollständigungskandidaten
tiefer in das Wörterbuch 30 vorzudringen.
-
Gemäß der ersten Ausführungsform
kann das iterative Suchen eingeleitet werden, wenn ein Vervollständigungskandidat
in der interaktiven Suchliste 30 nur einen ersten Teil
(also einen Anfangsteil) des Eintrags darstellt, den der Benutzer
zum Text hinzufügen
möchte.
-
Sobald das Kandidatenvorhersagesystem 32 die
verfeinerte Liste von Vervollständigungskandidaten
erhalten hat, wird die interaktive Suchliste 30 mit der
verfeinerten Liste von Vervollständigungskandidaten
wieder angezeigt. Wenn die interaktive Suchliste 30 wieder
angezeigt wird, werden die vom Dateneingabesystem 26 zum
Verfolgen aus Gesten mit der Zeigevorrichtung erzeugter Spurvektoren
verwendeten Ursprungspunktkoordinaten zu dem Zeitpunkt, zu dem der
ausgewählte
Vervollständigungskandidat
zum Einleiten der iterativen Suche verwendet wird, auf die Positionskoordinaten
der Zeigevorrichtung gelegt. Mit der wieder angezeigten interaktiven
Suchliste 30 kann der Benutzer einen der Vervollständigungskandidaten
in der verfeinerten Liste aussuchen, indem er die Zeigevorrichtung
abhebt, nachdem der bestimmte Vervollständigungskandidat durch eine
Geste ausgewählt
wurde, oder der Benutzer kann den iterativen Suchprozeß weiter
wiederholen, indem er einen der Vervollständigungskandidaten in der verfeinerten
Liste auswählt
und bei diesem bestimmten für
den vorbestimmten Grenzzeitbetrag L2 ausgewählten Vervollständigungskandidaten
verweilt. Wenn die verfeinerte Liste von Vervollständigungskandidaten
angezeigt wird, kann der Benutzer auch die Zeigevorrichtung abheben,
ohne daß irgendein
von der iterativen Suche erhaltener Vervollständigungskandidat ausgewählt wird.
Bei dieser letztgenannten Tätigkeit
bleibt die Suchzeichenkette auf dem letzten vom Benutzer bei der
vorhergehenden Iteration der interaktiven Suchliste 30 ausgewählten Vervollständigungskandidaten
gelegt und wird das Dateneingabesystem 26 in den Tastaturmodus
zurückgeführt. An
diesem Punkt wird die interaktive Suchliste 30 von der
graphischen Benutzerschnittstelle 34 gelöscht, wird
die digitale Tastatur 28 wieder angezeigt und sendet das
Dateneingabesystem 26 den zuletzt vom Benutzer aus der
interaktiven Suchliste 30 ausgewählten Vervollständigungskandidaten
zur Eingabe in den Text zur Anwendung 27, wodurch der Inhalt
der gegenwärtig
vom Benutzer entwickelten Teiltexteingabe ersetzt wird. Es können dann
neue Zeichen hinzugefügt
werden. Als eine Variation kann der Benutzer dann unter Verwendung der
digitalen Tastatur 28, falls gewünscht, die Anwendung 27 anweisen,
die Eingabe der modifizierten Teiltexteingabe durch Auswählen einer
auf der digitalen Tastatur 28 angezeigten oder dieser zugeordneten Funktionstaste
in den Text aufzuheben.
-
Beispiel
-
Die 6 und 6A zeigen ein Beispiel 100 aus
der Perspektive des Benutzers im Hinblick auf die Arbeitsweise und
die Flexibilität
des Dateneingabesystems 26 für die erste Ausführungsform
in den 1 bis 5. Für das in den 6 und 6A dargestellte Beispiel
sei angenommen, daß der
Benutzer das Wort "endlessly" eingeben möchte und
in Block 102 damit beginnt, den Buchstaben "e" auf der digitalen Tastatur 28 einzugeben.
Zum Aktivieren der interaktiven Suchliste 30 verweilt der
Benutzer wenigstens den vorbestimmten Grenzzeitbetrag L1 auf dem Buchstaben "e", wodurch automatisch in Block 104 das
Kandidatenvorhersagesystem 32 ausgelöst wird, um eine Liste von
Vervollständigungskandidaten
zu erhalten, die dem Benutzer dann in der interaktiven Suchliste 30 angezeigt
werden. Abhängig
vom Inhalt des Wörterbuchs 20 und
von dem zum Einordnen innerhalb des Wörterbuchs 20 gespeicherter
Vervollständigungskandidaten
in einer Rangliste verwendeten Rangsystem, ist der gewünschte Vervollständigungskandidat "endlessly" möglicherweise
nicht eine der in der anfänglichen
interaktiven Suchliste 30 angezeigten Wahl möglichkeiten.
Für den
Moment sei jedoch angenommen, daß das Wort "end" einer
der in der anfänglichen
interaktiven Suchliste 30 angezeigten Vervollständigungskandidaten
ist. Der Benutzer kann durch eine Geste in Block 108 den
Vervollständigungskandidaten "end" auswählen und
ihn zum automatischen Einleiten einer weiteren Durchsuchung des
Wörterbuchs 20 verwenden,
um eine Liste mit Prioritäten
versehener Vervollständigungskandidaten
abzurufen, die alle mit der Vorsilbe "end" beginnen.
Wie erörtert
wurde, wird diese iterative Suchtechnik mit der Zeigevorrichtung
durch einfaches Verweilen während
der Auswahl eines Vervollständigungskandidaten
(in diesem Fall des Worts "end") in der interaktiven
Suchliste 30 für
den vorbestimmten Grenzzeitbetrag L2 in Block 116 ausgeführt, wodurch
automatisch eine neue Suche unter Verwendung des ausgewählten Vervollständigungskandidaten
als Grundlage für
diese Suche eingeleitet wird. Falls der gewünschte Vervollständigungskandidat "endlessly" in der aktualisierten
interaktiven Suchliste 30 auftritt, kann der Benutzer sofort
das gewünschte
Vervollständigungswort
hinzufügen,
indem er es (in Block 120) aus der interaktiven Suchliste 30 auswählt und
die Zeigevorrichtung in weniger als dem vorbestimmten Grenzzeitbetrag
L2 abhebt.
-
Falls die in Block 104 dargestellte
interaktive Suchliste 30 nicht die Vorsilbe "end" oder eine andere Vorsilbe,
die den Benutzer dazu führt,
schnell das gewünschte
Wort "endlessly" unter Verwendung
des Dateneingabesystems 26 einzugeben, aufweist, hat der
Benutzer die Option, die Zeigevorrichtung in Block 106 von
dem berührungsempfindlichen
Bildschirm 14 abzuheben, ohne einen der Vervollständigungskandidaten
auszuwählen.
Durch diesen Typ einer Benutzereingabe wird dem Dateneingabesystem 26 mit geteilt,
die interaktive Suchliste 30 von dem Bildschirm zu löschen und
die digitale Tastatur 28 wieder zu aktivieren und anzuzeigen.
Es sei bemerkt, daß bei
der letztgenannten Operation die Suchzeichenkette weiterhin die
Teiltexteingabe enthält,
die der Benutzer mit der digitalen Tastatur 28 erzeugt
hat (in diesem Fall enthält
die Suchzeichenkette nur den Buchstaben "e").
-
Zur weiteren Erläuterung der Flexibilität des vorliegenden
Dateneingabesystems 26 sei bemerkt, daß wenn der Teilvervollständigungskandidat "end" zum Einleiten einer
weiteren Suche verwendet wird und die neue Liste von Vervollständigungskandidaten
das Wort "endlessly" in der Liste von
Vervollständigungskandidaten
nicht enthält,
der Benutzer wählen
kann, das Aufbauen des Teilvervollständigungskandidaten "end" fortzusetzen, indem
er die Zeigevorrichtung von dem berührungsempfindlichen Bildschirm 14 abhebt,
ohne daß irgendwelche
der Vervollständigungskandidaten
in der neuen Liste ausgewählt
werden, und die Eingabe von Zeichen von der digitalen Tastatur 28 fortsetzen
kann. In diesem Beispiel ersetzt der Teilvervollständigungskandidat "end" permanent die Teiltexteingabe,
die der Benutzer mit der digitalen Tastatur 28 im elektronischen Text
des Benutzers erzeugt hat, wird die Suchzeichenkette gelöscht und
wird jede neue Benutzereingabe automatisch als Teil einer neuen
Teiltexteingabe behandelt.
-
Es sei in bezug auf das vorstehend
Erwähnte insbesondere
bemerkt, daß der
Benutzer die letzten Schritte ausführen kann, um einen Teilvervollständigungskandidaten
durch Eingeben in die restlichen Buchstaben am Ende des Teilvervollständigungskandidaten
zu vervollständigen.
Falls beispielsweise der Teilvervollständigungskandidat "endless" aufgefunden wurde,
kann der Benutzer einfach auf der digitalen Tastatur 28 die
Buchstaben "1" und "y", gefolgt von einem Leerzeichen (oder
der Eingabeende-Funktionstaste) anschlagen, um dem Dateneingabesystem 26 den
Abschluß der
aktuellen Texteingabe mitzuteilen. Selbst wenn demgemäß im Wörterbuch 20 ein
vollständiges
Wort, ein vollständiger
Ausdruck oder eine vollständige
Zeichenfolge nicht gefunden wird, kann die Verwendung des Dateneingabesystems 26 zum
Auffinden eines Teilvervollständigungskandidaten
dazu führen,
daß weniger
Zeit und Anstrengungen aufgewendet werden als wenn der Benutzer
jeden Buchstaben des gewünschten
Worts, des gewünschten
Ausdrucks oder der gewünschten Zeichenfolge
einfach eingetippt hätte.
-
Gemäß einer alternativen Ausführungsform wird
das Dateneingabesystem 26 mit der Fähigkeit programmiert, eine
automatische Suche selbst wiedereinzuleiten, sobald die Anwendung 27 vom
Dateneingabesystem 26 angewiesen wurde, die Teiltexteingabe
in dem Text permanent durch einen Teilvervollständigungskandidaten zu ersetzen.
Bei dieser Alternative wird die Suchzeichenkette auf den Teilvervollständigungskandidaten
gelegt, wenn der Teilvervollständigungskandidat
die Teiltexteingabe in dem elektronischen Text des Benutzers ersetzt.
Der Benutzer kann dann zu jeder beliebigen Zeit zur automatischen
Sucheinrichtung des Dateneingabesystems 26 zurückkehren,
indem er einen vorbestimmten Grenzzeitbetrag L1 auf einer Taste
auf der digitalen Tastatur 28 verweilt. Falls die Teilvervollständigungsauswahl "end" beispielsweise bereits
verwendet wurde, um eine weitere Suche einzuleiten, und der Benutzer
die Zeigevorrichtung dann abhebt, ohne einen der Vervollständigungskandidaten
in der neuen Liste von Vervollständigungskandidaten
auszuwählen,
kann der Benutzer dann, beispielsweise durch Berühren des Buchstabens "1" auf der digitalen Tastatur 28 für einen
ausreichenden Zeitraum, zu einer automatischen Suche mit dem Dateneingabesystem 26 zurückkehren,
um eine Suche auf der Grundlage der Vorsilbe "endl" einzuleiten.
Die Teiltexteingabe "endl" wird dann vom Kandidatenvorhersagesystem 32 verwendet,
um eine Liste von Vervollständigungskandidaten
zu erhalten, die dann in der interaktiven Suchliste 30 angezeigt
werden. Falls der gewünschte
Vervollständigungskandidat "endlessly" in der neuen Liste
von Vervollständigungskandidaten auftritt,
kann der Benutzer diesen Kandidaten dann auswählen und ihn durch Auswählen dieses
Kandidaten zum Text hinzufügen
und die Zeigevorrichtung abheben, bevor der Grenzzeitbetrag L2 erreicht
wurde. Falls der gewünschte
Vervollständigungskandidat
nicht in der interaktiven Suchliste 30 auftritt, kann der
Benutzer die Zeigevorrichtung einfach ohne Auswählen von einem der Vervollständigungskandidaten abheben
und das Aufbauen auf die Teiltexteingabe "endl" fortsetzen,
indem er weitere Zeichen über
die digitale Tastatur 28 eingibt. Sobald das gewünschte Wort
vollständig
ist, wählt
der Benutzer zum Löschen der
Suchzeichenkette und zum Anweisen des Dateneingabesystems 26,
jede neue Benutzereingabe als Teil einer neuen Teiltexteingabe bei
dieser Alternative zu behandeln, eine Taste oder Funktion von der
digitalen Tastatur 28 aus, die programmiert ist, um anzugeben,
daß die
Eingabe dieser ursprünglichen
Teiltexteingabe beendet ist, wie im nachstehenden Abschnitt eingehender
erörtert
wird.
-
Erzwingen
des Endes einer Teiltexteingabe
-
Wie anhand des vorstehenden Beispiels
ersichtlich ist, geschieht es gelegentlich, daß bei der Eingabe eines Worts,
eines Ausdrucks oder einer Zeichenfolge durch den Benutzer diese
nicht im Wörterbuch 20 auftreten.
Falls der Benutzer in diesem Fall die interaktive Suchliste 30 aktiviert
hat, ist sie leer, sobald er genug Zeichen für das Kandidatenvorhersagesystem 32 eingegeben
hat, um zu bestimmen, daß das
Wörterbuch 20 keine
Wörter,
Ausdrücke
oder Zeichenfolgen aufweist, die Vervollständigungskandidaten für die gegenwärtig vom
Benutzer eingegebene Teiltexteingabe sein könnten. Wenn dies der Fall ist
oder wenn der Benutzer die Eingabe eines Worts, eines Ausdrucks
oder einer Zeichenfolge durch Eingabe auf der digitalen Tastatur 28 vervollständigt, muß es das
Dateneingabesystem 26 wissen, wenn die vom Benutzer erzeugte
aktuelle Teiltexteingabe abgeschlossen wurde oder wenn eine andere
Teiltexteingabe begonnen hat. Falls der Benutzer einen Vervollständigungskandidaten
aus der interaktiven Suchliste 30 gemäß der ersten Ausführungsform
ausgewählt
und angenommen hat, wird das Dateneingabesystem 26 programmiert,
zu erkennen, daß der
Benutzer die aktuelle Teiltexteingabe abgeschlossen hat, und es
initialisiert automatisch, so daß das nächste von der digitalen Tastatur 28 ausgewählte Zeichen
als ein Anfangszeichen für eine
neue Teiltexteingabe behandelt wird. Falls der Benutzer jedoch eine
Teiltexteingabe vervollständigt, die
nicht im Wörterbuch 20 gefunden
wurde, und die Teiltexteingabe durch einfaches Eingeben von Zeichen
von der digitalen Tastatur 28 vervollständigt, weiß es das Dateneingabesystem 26 möglicherweise nicht,
wenn die aktuelle Teiltexteingabe abgeschlossen ist und wenn die
nächste
Teiltexteingabe begonnen hat. Um bei der Identifikation zu helfen,
ob ein Benutzer eine Eingabe eines Worts, eines Ausdrucks oder einer
Zeichenfolge abgeschlossen hat, kann das Dateneingabesystem 26 programmiert
werden, auf ein vom Benutzer über
die digitale Tastatur 28 eingegebenes "Suchendesignal" zu überwachen. Gemäß der ersten
Ausführungsform
wird ein Suchendesignal vom Dateneingabesystem 26 empfangen,
wenn eine Taste oder Funktionstaste, die programmiert wurde, um
einen expliziten "Suchendebefehl" auszudrücken, von
der digitalen Tastatur 28 ausgewählt wurde. Alternativ kann
das Dateneingabesystem 26 programmiert werden, um einen
impliziten Suchendebefehl zu erkennen, beispielsweise wenn eine
Leertaste auf der digitalen Tastatur 28 ausgewählt wird.
Es können
auch andere nichtalphabetische Zeichen verwendet werden, um einen
impliziten Suchendebefehl bereitzustellen.
-
Systemablauf
-
In der nachstehenden Diskussion wird
die von dem auf der Verarbeitungseinheit 12 laufenden Dateneingabesystem 26 ausgeführte Verarbeitung
in näheren
Einzelheiten beschrieben. Für
diese Erörterung
wird auf die 7 bis 9 Bezug genommen, welche
logische Flußdiagramme
sind, die den Operationsablauf des Dateneingabesystems 26 veranschaulichen.
Die Beschreibung des in den 7 bis 9 dargestellten computerimplementierten
Prozesses erfolgt mit Bezug auf die Personalcomputervorrichtung 10 und
das Dateneingabesystem 26, die in den 1 bis 5 dargestellt
sind.
-
Das Dateneingabesystem 26 wird
in Block 202 initialisiert. Dieses umfaßt das Initialisieren von Variablen
und Hinweiszeichen, die innerhalb des Dateneingabesystems 26 verwendet
werden, um den Zustand der Benutzereingabe, der Verarbeitung und der
Benutzerausgabe zu verfolgen. Dieses umfaßt auch das Initialisieren
der Benutzerschnittstelle für das
Dateneingabesystem 26 unter Einschluß des Ladens und Einrichtens
der digitalen Tastatur 28 für die Anzeige, des Auswählens des
vom Dateneingabesystem 26 zu verwendenden Wörterbuchs 20,
des Identifizierens des Typs der für die Texteingabe zu verwendenden
Zeigevorrichtung und des Einrichtens aller benutzerdefinierter Konfigurationen
für die
Anzeige und die Verwendung der digitalen Tastatur 28 sowie
der interaktiven Suchliste 30. Sobald das Dateneingabesystem 26 unter
Einschluß der
digitalen Tastatur 28 initialisiert worden ist, wird die
Benutzerschnittstelle für
das Dateneingabesystem 26 dann in Block 204 auf
dem berührungsempfindlichen
Bildschirm 14 angezeigt. In ihrer grundlegendsten Form weist
die zunächst
angezeigte Benutzerschnittstelle die digitale Tastatur 28 auf.
Die Benutzerschnittstelle kann auch eine oder mehrere Werkzeugleisten
oder einen oder mehrere Anzeigekästen
für die
Anzeige des aktuellen Werts der Suchzeichenkette und des aktuellen
Inhalts der interaktiven Suchliste 30 aufweisen. Wenn die
Schnittstelle initialisiert wurde und auf dem berührungsempfindlichen
Bildschirm 14 angezeigt wird, wartet das Dateneingabesystem 26 in Block 206 auf
eine Benutzereingabe von der Zeigevorrichtung. Sobald in Block 206 eine
Benutzereingabe empfangen wurde, bestimmt das Dateneingabesystem 26 in
Block 208, ob die in Block 206 vom Dateneingabesystem 26 empfangene
Benutzereingabe irgendwelchen der auf der digitalen Tastatur 28 angezeigten
Zeichen entspricht. Falls in Block 208 herausgefunden wird,
daß die
Benutzereingabe einem auf der digitalen Tastatur 28 angezeigten
Zeichen entspricht, wird dieses Zeichen in Block 210 zur
Suchzeichenkette hinzugefügt.
Wie zuvor angegeben wurde, wird die Suchzeichenkette vom Kandidatenvorhersagesystem 32 verwendet,
um das Wörterbuch 20 auf
mögliche
Vervollständigungskandidaten
zu durchsuchen. Gemäß der ersten
Ausführungsform ruft
das Kandidatenvorhersagesystem 32 kontinuierlich eine Liste
von Vervollständigungskandidaten
aus dem Wörterbuch 20 ab,
wenn sich der Inhalt der Suchzeichenkette ändert. Wenn der Benutzer die
gerade eingerichtete aktuelle Teiltexteingabe modifiziert, wird
der Inhalt der Suchzeichenkette modifiziert und vom Kandidatenvorhersagesystem 32 in
Block 212 verwendet, um eine neue Liste von Vervollständigungskandidaten
aus dem Wörterbuch 20 zu
erhalten.
-
Die Arbeitsweise des Kandidatenvorhersagesystems 32 für die erste
Ausführungsform
wird in 9 weiter erläutert. Wie
in 9 dargestellt ist, ruft
das Kandidatenvorhersagesystem 32 für die erste Ausführungsform
den ersten und den letzten Eintrag aus dem Wörterbuch 20 ab, die
mit dem Inhalt der Suchzeichenkette beginnen. Der erste und der letzte
abgerufene Eintrag werden dann zum Definieren einer Suchspanne verwendet.
Falls die Suchspanne größer als
die Anzahl der Vervollständigungskandidaten
ist, zu deren Anzeige das Dateneingabesystem 26 programmiert
ist, werden die Vervollständigungskandidaten
innerhalb der Suchspanne mit den höchsten entsprechenden Gewichtswerten
(beispielsweise Frequenzwerten) bis zur maximalen Anzahl zulässiger Vervollständigungskandidaten
abgerufen, welche in der interaktiven Suchliste 30 angezeigt
werden können.
Die vom Kandidatenvorhersagesystem 32 auf diese Weise abgerufenen
Vervollständigungskandidaten
werden dann zu einer Liste von Vervollständigungskandidaten zusammengestellt,
die zur Anzeige in der interaktiven Suchliste 30 verwendet
wird. Im Fall der ersten Ausführungsform ist
hiermit sehr wenig Verarbeitung verbunden, weil die Liste der Vervollständigungskandidaten
immer dann aktualisiert wird, wenn die gegenwärtig vom Benutzer entwickelte Teiltexteingabe
modifiziert wird. Wie zuvor angegeben wurde, kann die eine Liste
von Vervollständigungskandidaten
enthaltende interaktive Suchliste 30 jedoch gemäß einer
alternativen Ausführungsform
erzeugt werden, sobald der Benutzer das Aktivieren der interaktiven
Suchliste 30 aufruft, indem er auf einer Taste auf der
digitalen Tastatur 28 verweilt (also nach Block 214).
-
Sobald der Suchzeichenkette in Block 210 ein
Zeichen hinzugefügt
wurde, bestimmt das Dateneingabesystem 26 in Block 214,
ob die Zeigevorrichtung von dem berührungsempfindlichen Bildschirm 14 innerhalb
des vorbestimmten Grenzzeitbetrags L1 gelöst worden ist. Falls das Dateneingabesystem 26 herausfindet,
daß die
Zeigevorrichtung innerhalb des Grenzzeitbetrags L1 gelöst worden
ist, kehrt die Verarbeitung zu Block 206 zurück, wo das
Dateneingabesystem 26 auf eine weitere Benutzereingabe
wartet. Dies erlaubt es dem Benutzer, die digitale Tastatur 28 zum
Ausschreiben eines Teils oder der gesamten gewünschten Texteingabe durch kurzes
Anschlagen von Tasten auf der digitalen Tastatur 28 Tastenanschlag
für Tastenanschlag
zu verwenden. Falls das Dateneingabesystem 26 andererseits
in Block 214 bestimmt, daß die Zeigevorrichtung nicht
innerhalb des Grenzzeitbetrags L1 gelöst wurde, bestimmt das Dateneingabesystem 26 in
Block 216, ob die Liste der Vervollständigungskandidaten (die in
der Zeichnung auch als eine Kandidatenliste bezeichnet wird und
eingezeichnet ist) leer ist. Falls in Block 216 herausgefunden
wird, daß die
Kandidatenliste leer ist, hat das Kandidatenvorhersagesystem 32 in
dem Wörterbuch 20 keine
Vervollständigungskandidaten gefunden,
die die vom Benutzer entwickelte Teiltexteingabe möglicherweise
vervollständigen.
In diesem Fall kehrt die Verarbeitung zu Block 206 zurück. Aus der Perspektive
des Benutzers kann der Benutzer mit oder ohne aus dem Wörterbuch 20 herausgesuchter möglicher
Kandidaten die gewünschte
Texteingabe durch Fortsetzen des Eintippens der restlichen Zeichen
von der digitalen Tastatur 28 vervollständigen oder die entwickelte
Teiltexteingabe unter Verwendung anderer Funktionstasten, die auf
der Benutzerschnittstelle verfügbar
sind, auf andere Weise modifizieren (beispielsweise durch Aufheben
der aktuellen Teiltexteingabe oder durch einen Rückschritt um ein oder mehrere
Zeichen in der Teiltexteingabe). Falls andererseits in Block 216 herausgefunden
wird, daß die
Liste der Vervollständigungskandidaten
nicht leer ist, wird die digitale Tastatur 28 in Block 218 deaktiviert,
und die interaktive Suchliste 30, die die in Block 212 erhaltene
Kandidatenliste enthält,
wird innerhalb der interaktiven Suchliste 30 in Block 222 auf
dem berührungsempfindlichen
Bildschirm 14 angezeigt, und das Dateneingabesystem 26 wartet
in Block 224 auf eine weitere Benutzereingabe.
-
Es sei daran erinnert, daß der Benutzer
das Dateneingabesystem 26 verwenden kann, um eine von mehreren
Tätigkeiten
auszuführen,
sobald er die Anzeige der interaktiven Suchliste 30 aktiviert
hat, die eine Liste von Vervollständigungskandidaten enthält. Der
Benutzer kann die interaktive Suchliste 30 deaktivieren
und zum Modifizieren oder Editieren der aktuellen Teiltexteingabe
zurückkehren,
indem er die Zeigevorrichtung ohne eine erhebliche Bewegung vom
berührungsempfindlichen
Bildschirm 14 abhebt. Falls diese Tätigkeit in Block 226 erfaßt wird,
wird die Kandidatenliste gelöscht,
und der Inhalt der Suchzeichenkette wird in Block 262 gespeichert.
Die Verarbeitung kehrt dann zu Block 204 zurück, wo der
Benutzer die aktuelle Teiltexteingabe unter Verwendung der digitalen
Tastatur 28 weiter modifizieren kann.
-
Falls andererseits die in Block 224 empfangene
Benutzereingabe in Block 226 als eine Geste bzw. Handbewegung
identifiziert wird, wird die Geste in Block 228 analysiert,
um zu bestimmen, ob sie einem in der interaktiven Suchliste 30 angezeigten
Vervollständigungskandidaten
zugeordnet ist. Falls herausgefunden wird, daß die Geste einem Vervollständigungskandidaten
in der interaktiven Suchliste 30 zugeordnet ist, wird dieser
Vervollständigungskandidat
in Block 230 aus der interaktiven Suchliste 30 ausgewählt. Wenn
in Block 230 ein Vervollständigungskandidat in der interaktiven
Suchliste 30 ausgewählt
wird, wird der ausgewählte
Vervollständigungskandidat
vorzugsweise auf irgendeine Weise für den Benutzer hervorgehoben
oder auf andere Weise unterstrichen.
-
Wenn in Block 230 ein Vervollständigungskandidat
ausgewählt
wird, wird ein Zeitgeber T2 gestartet. Der Zeitgeber T2 wird gemäß der ersten
Ausführungsform
verwendet, um zu überwachen,
wie lange der ausgewählte
Vervollständigungskandidat vom
Benutzer ausgewählt
bleibt. Es sei daran erinnert, daß der Benutzer einen der Vervollständigungskandidaten
in der interaktiven Suchliste 30 auswählen kann und den ausgewählten Vervollständigungskandidaten
entweder verwenden kann, um die gegenwärtig vom Benutzer eingegebene
Teiltexteingabe zu ersetzen, oder den ausgewählten Vervollständigungskandidaten
verwenden kann, um eine weitere automatische Suche einzuleiten,
um eine weiter verfeinerte Liste von Vervollständigungskandidaten aus dem
Wörterbuch 20 zu
erhalten. Gemäß der ersten
Ausführungsform
wird der Zeitgeber T2 verwendet, um zwischen diesen letztgenannten
zwei Typen von Operationen zu unterscheiden, welche der Benutzer
unter Verwendung des ausgewählten
Vervollständigungskandidaten
mit der Zeigevorrichtung einleiten kann. Es sei bemerkt, daß falls
nicht herausgefunden wird, daß die
in Block 228 analysierte Geste dem Vervollständigungskandidaten
zugeordnet ist, die Verarbeitung zu Block 224 zurückkehrt,
wo das Dateneingabesystem 26 auf eine weitere Benutzereingabe
von der Zeigevorrichtung für
die Analyse in Block 226 wartet.
-
Sobald ein Vervollständigungskandidat
in Block 230 aus der interaktiven Suchliste 30 ausgewählt worden
ist, überwacht
das Dateneingabesystem 26 in Block 232 den Zeitgeber
T2 und überwacht auf
eine weitere Benutzereingabe. Falls das Dateneingabesystem 26 in
Block 236 eine weitere Benutzereingabe von der Zeigevorrichtung
erfaßt,
hat der Zeitgeber T2 den vorbestimmten Grenzzeitbetrag L2 nicht überschritten,
und die Benutzereingabe wird in Block 238 analysiert, um
zu bestimmen, ob der Benutzer eine Geste oder ein Abheben mit der
Zeigevorrichtung eingeleitet hat. Falls in Block 238 ein
Abheben erfaßt
wird, dient dieses Ereignis dem Dateneingabesystem 26 als
ein Hinweis darauf, daß der ausgewählte Kandidat
in der interaktiven Suchliste 30 vom Benutzer angenommen worden
ist, wobei in diesem Fall an Stelle der potentiellen Texteingabe der
Vervollständigungskandidat
zum Text hinzugefügt
wird und die Suchzeichenkette in Block 240 gelöscht wird.
Sobald ein ausgewählter
Vervollständigungskandidat
in Block 240 zum Text hinzugefügt worden ist, kehrt das Dateneingabesystem 26 zu Block 204 zurück, wo die
initialisierte Benutzerschnittstelle auf dem berührungsempfindlichen Bildschirm 14 angezeigt
wird, und das Dateneingabesystem 26 wartet dann in Block 206 auf
eine weitere Benutzereingabe. Alle neuen vom Dateneingabesystem 26 empfangenen
Zeichen werden dann als Teil einer neuen Teiltexteingabe behandelt.
-
Falls andererseits in Block 238 eine
Geste erfaßt
wird, wird die Geste in Block 242 analysiert, um zu bestimmen,
ob sie einem anderen Vervollständigungskandidaten
in der interaktiven Suchliste 30 zugeordnet ist, und falls
die Antwort der Analyse von Block 242 "JA" ist, ändert das
Dateneingabesystem 26 die Auswahl des Vervollständigungskandidaten aus
der interaktiven Suchliste 30 und startet den Zeitgeber
T2 in Block 244 neu. Das Dateneingabesystem 26 fährt dann
in Block 232 mit dem Überwachen
des Zeitgebers T2 und der Benutzereingabe in Block 234 fort.
Aus der Perspektive des Benutzers wird ein anderer Vervollständigungskandidat
aus der Liste von Vervollständigungskandidaten
hervorgehoben. Falls in Block 238 eine Geste erfaßt wird,
jedoch in Block 242 nicht herausgefunden wird, daß die Geste
einem anderen Kandidaten zugeordnet ist, bestimmt das Dateneingabesystem 26 in
Block 246, ob die Geste einer toten Zone auf der Benutzerschnittstelle
zugeordnet ist. Wie erörtert
wurde, werden tote Zonen verwendet, um es dem Benutzer zu ermöglichen,
die Auswahl eines ausgewählten
Vervollständigungskandidaten
aufzuheben und um eine Pause einzulegen, damit der Benutzer überlegen
kann, welche weitere Tätigkeit
er ausführen
möchte.
Tote Zonen sind besonders nützlich,
wenn ein Zeitgeber in der Art des Zeitgebers T2 als Auslösemechanismus
verwendet wird, um zu bestimmen, wann ein ausgewählter Vervollständigungskandidat
zum Einleiten einer weiteren automatischen Durchsuchung des Wörterbuchs 20 zu
verwenden ist. Falls in Block 246 herausgefunden wird,
daß eine
Geste einer toten Zone zugeordnet ist, wird die Auswahl des aktuell
ausgewählten
Vervollständigungskandidaten
aus der interaktiven Suchliste 30 in Block 248 aufgehoben,
wird der Zeitgeber T2 deaktiviert und wartet das Dateneingabesystem 26 in Block 256 auf
eine weitere Benutzereingabe. Andernfalls kehrt die Verarbeitung
zu Block 232 zurück.
-
Falls in Block 232 herausgefunden
wird, daß der
Zeitgeber T2 zu irgendeiner Zeit den vorbestimmten Grenzzeitbetrag
L2 überschritten
hat, dient dieses Ereignis als ein Hinweis für das Dateneingabesystem 26,
daß der
ausgewählte
Kandidat zu verwenden ist, um eine weitere automatische Suche einzuleiten,
wobei die Verarbeitung in diesem Fall zu Block 250 übergeht,
wo die Suchzeichenkette gleich dem ausgewählten Vervollständigungskandidaten gesetzt
wird und in Block 252 eine neue Liste von Vervollständigungskandidaten
aus dem Wörterbuch 20 erhalten
wird. Diese neue Liste von Vervollständigungskandidaten wird dann
in Block 254 in der interaktiven Suchliste 30 angezeigt,
und das Dateneingabesystem 26 wartet dann in Block 256 auf
eine weitere Benutzereingabe. Die in Block 256 empfangene Benutzereingabe
wird in Block 258 analysiert, und falls in Block 258 das
Dateneingabesystem 26 bestimmt, daß die Benutzereingabe einer
Geste mit der Zeigevorrichtung entspricht, wird die Geste in Block 260 analysiert,
um festzustellen, ob die von der Zeigevorrichtung erzeugte Geste
irgendwelchen der Vervollständigungskandidaten
aus der in der interaktiven Suchliste 30 angezeigten neuen
Liste von Vervollständigungskandidaten
zugeordnet ist. Falls die Geste andererseits einem Vervollständigungskandidaten
in der interaktiven Suchliste 30 zugeordnet ist, kehrt
das Dateneingabesystem 26 zu Block 230 zurück, wo der
zugeordnete Vervollständigungskandidat
ausgewählt
wird, der Zeitgeber T2 neu gestartet wird und das Dateneingabesystem 26 dann überwacht,
um wie zuvor herauszufinden, ob der Benutzer den ausgewählten Vervollständigungskandidaten verwendet,
um die Teiltexteingabe entweder zu ersetzen oder eine weitere automatische
Suche einzuleiten. Es sei bemerkt, daß wenn die neue Liste von Vervollständigungskandidaten
in der interaktiven Suchliste 30 in Block 254 angezeigt
wird und das Dateneingabesystem 26 in Block 256 auf
eine Benutzereingabe wartet, die Zeigevorrichtung in Kontakt mit dem
berührungsempfindlichen
Bildschirm 14 bleibt. Diese Situation ähnelt derjenigen in den Blöcken 222 und 224 mit
der Ausnahme, daß die
interaktive Suchliste 30 aktualisiert worden ist, so daß sie eine
neue Liste von Vervollständigungskandidaten
enthält,
aus denen der Benutzer auswählen
kann.
-
Merkmale des
Dateneingabesystems
-
Das Dateneingabesystem 26 kann
eine Vielzahl von Merkmalen und Aspekten zum weiteren Verbessern
der Funktionalität
und Flexibilität
der Texteingabe für
den Benutzer aufweisen, wenn eine einzige Zeigevorrichtung verwendet
wird. Weiterhin bildet jedes der folgenden Merkmale und jeder der
folgenden Aspekte einzeln eine vorteilhafte Erweiterung und ist
eine Ausführungsform
der vorliegenden Erfindung. Diese zusätzlichen Merkmale und Aspekte
der vorliegenden Erfindung werden nun nachstehend beschrieben. Viele
der nachstehend beschriebenen Merkmale und Aspekte können auch
in Kombination mit verschiedenen Typen von Suchlisten, die Vervollständigungskandidaten
enthalten, einschließlich
Einzelebenen- und Mehrebenen-Suchlisten, angewendet werden.
-
Wie zuvor, können die folgenden Merkmale und
Aspekte auf viele Typen von Personalcomputervorrichtungen angewendet
werden, und sie können als
computerlesbare Anweisungen in einem oder mehreren Typen computerlesbarer
Medien gespeichert werden.
-
Mitteilung
des aktiven Eingabemodus
-
Gemäß einer alternativen Ausführungsform ist
das Dateneingabesystem 26 programmiert, um dem Benutzer
den aktiven Eingabemodus mitzuteilen. Bei dieser Variation ist das
Dateneingabesystem 26 programmiert, um auf der graphischen
Benutzerschnittstelle 34 einen expliziten Hinweis auf den
gegenwärtig
aktiven Eingabemodus anzuzeigen (wie in den Blöcken 218 und 240 aus
den 23 und 24 dargestellt ist). Bei
dieser Variation werden zwei Eingabemodi mit dem Dateneingabesystem 26 verfolgt, nämlich (1)
ein Tastaturmodus zum Angeben, daß die digitale Tastatur 28 aktiv
ist, und (2) ein Suchmodus zum Angeben, daß die automatische Suche mit
der interaktiven Suchliste 30 aktiv ist. Das Anzeigen eines
expliziten Hinweises auf den aktuellen Eingabemodus für das Dateneingabesystem 26 auf
der graphischen Benutzerschnittstelle 34 wird durch Anzeigen
verschiedener Farbsignale (oder Signalsätze) auf der graphischen Benutzerschnittstelle 34,
abhängig
davon, welcher Eingabemodus gegenwärtig aktiv ist, erreicht. Alternativ
können
spezifische Bildzeichen jedem Eingabemodus zugewiesen werden und auf
der graphischen Benutzerschnittstelle 34 angezeigt werden,
wenn der entsprechende Eingabemodus aktiv ist. Dadurch, daß dem Benutzer
des Eingabemodus mit einem oder mehreren expliziten Indikatoren
auf der graphischen Benutzerschnittstelle 34 der Eingabemodus
mitgeteilt wird, wird das Risiko minimiert, daß der Benutzer die Übersicht
darüber
verliert, ob er sich im Tastaturmodus oder im Suchmodus befindet,
und es wird dadurch die Einfachheit der Verwendung des Dateneingabesystems 26 erhöht. Dies
kann besonders nützlich
sein, wenn sowohl die digitale Tastatur 28 als auch die
interaktive Suchliste 30 gleichzeitig auf der graphischen
Benutzerschnittstelle 34 angezeigt werden.
-
Mitteilung
von Vervollständigungskandidaten
-
Falls die interaktive Suchliste 30 weniger
als die vorbestimmte maximale Anzahl von anzeigbaren Vervollständigungskandidaten
aufweist, dient dies als ein Hinweis für den Benutzer, daß die gegenwärtig angezeigte
interaktive Suchliste 30 alle Vervollständigungskandidaten in dem Wörterbuch 20 enthält, die
mit der Teiltexteingabe beginnen, welche der Benutzer eingegeben
hat. Falls die interaktive Suchliste 30 jedoch voll ist,
wenn sie vom Benutzer aktiviert wird, ist es anhand der Betrachtung
der interaktiven Suchliste 30 nicht klar, ob im Wörterbuch 20 irgendwelche
anderen potentiellen Vervollständigungskandidaten
für die
aktuelle Teiltexteingabe vorhanden sein können. Um diesen Zweifel zu
beseitigen und ausdrücklich
anzugeben, ob es weitere mögliche
Vervollständigungskandidaten
gibt, und falls dies der Fall ist, wie viele, wird das Dateneingabesystem 26 gemäß einem
anderen Aspekt programmiert, auf der graphischen Benutzerschnittstelle 34 die
Anzahl der potentiellen Vervollständigungskandidaten in dem Wörterbuch 20 anzuzeigen,
die Anfangszeichen aufweisen, welche mit der aktuellen Teiltexteingabe übereinstimmen.
Die Anzahl der potentiellen Vervollständigungskandidaten wird vom
Dateneingabesystem 26 angezeigt und aktualisiert, wenn
die digitale Tastatur 28 verwendet wird, und immer dann, wenn
die interaktive Suchliste 30 mit neuen Vervollständigungskandidaten
aktiviert oder aktualisiert wird (wie beispielsweise in den Blöcken 213A und 254 aus
den 21 und 22 dargestellt ist). Alternativ kann
das Dateneingabesystem 26 programmiert werden, um auf der
graphischen Benutzerschnittstelle 34 einen graphischen
Hinweis darauf anzuzeigen, ob sich im Wörterbuch 20 zusätzlich zu
den in der interaktiven Suchliste 30 angezeigten Kandidaten
zusätzliche
Vervollständigungskandidaten
befinden, die Anfangszeichen aufweisen, die mit der aktuellen Teiltexteingabe übereinstimmen.
Hierbei wird wiederum der graphische Hinweis vom Dateneingabesystem 26 angezeigt
und aktualisiert, wenn die digitale Tastatur 28 verwendet
wird, und immer dann, wenn die interaktive Suchliste 30 aktiviert
wird oder mit neuen Vervollständigungskandidaten
aktualisiert wird. Dieses Mitteilungsmerkmal erleichtert es dem
Benutzer zu wissen, selbst bevor versucht wird, die interaktive Suchliste 30 zu
verwenden, wann eine automatische Suche eine Liste möglicher
Vervollständigungskandidaten
(oder eine verfeinerte Liste) auffinden kann. Mit diesem fortgeschrittenen
Mitteilungsmerkmal kann der Benutzer besser entscheiden, wann er
mit dem Hinzufügen
weiterer Zeichen zur Teiltexteingabe mit der digitalen Tastatur 28 fortfahren
soll und wann er die interaktive Suchliste 30 aktivieren
und verwenden soll.
-
Merkmale der
digitalen Tastatur
-
Mit der digitalen Tastatur 28 kann
eine Vielzahl von Merkmalen implementiert werden, um die Fähigkeit
des Benutzers weiter zu verbessern, Text mit dem Dateneingabesystem 26 einzugeben.
Bei einer Variation kann die digitale Tastatur 28 programmiert
werden, um in einem häufigkeitsverteilten
Layout angezeigt zu werden. Beim häufigkeitsverteilten Layout
wird das wohlbekannte Prinzip ausgenutzt, daß bestimmte Zeichen in einem
Zeichensatz häufiger
verwendet werden als andere Zeichen innerhalb desselben Zeichensatzes.
Beispielsweise kann die digitale Tastatur die in einem häufigkeitsverteilten Layout
auf der Grundlage einer Analyse eines großen Textkörpers angezeigten Buchstaben
des englischen Alphabets enthalten. Es ist natürlich zu verstehen, daß die Zeichen
oder Symbole in einem speziellen Zeichensatz, abhängig von
der Probenpopulation der zum Einordnen dieser Zeichen in einer Rangliste in
bezug zueinander innerhalb eines bestimmten Zeichensatzes verwendeten
Daten, verschiedene relative Häufigkeiten
aufweisen können.
Es sei bemerkt, daß wenn
das Dateneingabesystem 26 verwendet wird, die Häufigkeit
eingegebener Zeichen von derjenigen bei traditionellen Systemen
verschieden sein kann, bei denen Text Zeichen für Zeichen eingegeben wird.
Diese allgemeinen Prinzipien werden verwendet, um ein häufigkeitsverteiltes
Layout für
die digitale Tastatur zu erzeugen.
-
Gemäß einer Ausführungsform
der digitalen Tastatur mit einem häufigkeitsverteilten Layout
ist die digitale Tastatur so programmiert, daß sie mehrere Zeichen aufweist,
die entsprechend einer den mehreren Zeichen zugeordneten vorbestimmten
Häufigkeitsverteilung
vorbestimmten Orten innerhalb des Layouts für die digitale Tastatur zugeordnet
sind. Die mehreren auf der digitalen Tastatur angezeigten Zeichen
umfassen weniger häufig
verwendete Zeichen und häufiger
verwendete Zeichen auf der Grundlage der vorbestimmten Häufigkeitsverteilung.
Gemäß dieser
Ausführungsform
wird die digitale Tastatur auf einer graphischen Benutzerschnittstelle
angezeigt, wobei die weniger häufig
verwendeten Zeichen erheblich weiter von der Mitte der digitalen
Tastatur angezeigt werden als die häufiger verwendeten Zeichen.
Ein Beispiel dieses Typs einer digitalen Tastatur ist allgemein
in 3 dargestellt, wobei
die "Leertaste" jedoch im äußeren Ring
statt dichter zur Mitte der digitalen Tastatur 28 angeordnet
wurde. Ein Beispiel der digitalen Tastatur 28 mit einem
häufigkeitsverteilten
Layout, wobei sich die Leertaste in der Nähe der Mitte befindet, ist
in 10 dargestellt.
-
Es ist beim häufigkeitsverteilten Layout
bevorzugt, daß das
Bild der digitalen Tastatur 28, wenn es im wesentlichen
kreisförmig
oder elliptisch ist, eine erste Gruppe am häufigsten verwendeter Zeichen (also
die am gebräuchlichsten
verwendeten Zeichen) aufweist, die sich im wesentlichen in der Nähe der Mitte
der digitalen Tastatur 28 befinden, wobei wenigstens eine
Gruppe weniger häufig
verwendeter Zeichen (in bezug auf die erste Gruppe) weiter von der
Mitte der Tastatur entfernt angezeigt wird als die Zeichen der ersten
Gruppe. Wie in 3 dargestellt ist,
ist die digitale Tastatur 28 vorzugsweise so konfiguriert,
daß sie
in einem häufigkeitsverteilten
Layout angezeigt wird, das mehrere in Ringen angeordnete Zeichen
aufweist. Wenn die Zeichen auf der digitalen Tastatur 28 in
Ringen angeordnet sind, können
die Zeichen in einem bestimmten Ring so angeordnet werden, daß sie in
etwa den gleichen Abstand von der Mitte der digitalen Tastatur 28 aufweisen,
wodurch eine gewisse Gleichmäßigkeit
für die
zur Eingabe von Text erforderlichen Bewegungen bereitgestellt wird.
Dies kann auch für
bestimmte Anordnungen nützlich
sein, beispielsweise wenn die digitale Tastatur 28 programmiert
wird, so daß sie
dynamisch repositionierbar ist, wie nachstehend näher erörtert wird.
-
Bei den in den 3 und 10 dargestellten Tastatur-Layouts befindet
sich wenigstens ein am häufigsten verwendetes
Zeichen eines vorgewählten Zeichensatzes
oder Teilsatzes (in der Art eines Teilsatzes oder des ASCII-Zeichensatzes) im
wesentlichen in der oder in der Nähe der Mitte der digitalen Tastatur 28.
Wie auch dargestellt ist, befinden sich die am nächsthäufigsten verwendeten Zeichen
innerhalb eines Zwischenrings, und die am wenigsten häufig verwendeten
Zeichen des Zeichensatzes sind in einem äußeren Ring der digitalen Tastatur 28 verteilt.
Wenn sich die am häufigsten
verwendeten Zeichen in der oder in der Nähe der Mitte der digitalen Tastatur 28 befinden,
ist der Grad der mit einer Zeigevorrichtung erforderlichen Bewegung
zur Auswahl innerhalb des Zwischenrings oder des inneren Rings der
digitalen Tastatur 28 angezeigter Zeichen minimiert. Zusätzlich bietet
das Anordnen von Zeichen auf der digitalen Tastatur 28 in
in etwa konzentrischen Ringen nach ihrer Verwendungshäufigkeit
einen leichten und wirksamen Mechanismus zum Auffinden von Zeichen
und zum Eingeben von Daten unter Verwendung einer Zeigevorrichtung.
-
Wenn Ringe in Verbindung mit der
digitalen Tastatur 28 verwendet werden, ist zu verstehen,
daß die
Anordnungen der Zeichen innerhalb jedes Rings in keiner Weise auf
das in den 3 oder 10 dargestellte Layout beschränkt sind.
Beispielsweise können
die Zeichen innerhalb eines bestimmten Rings alphabetisch im Uhrzeigersinn
(oder entgegen dem Uhrzeigersinn) organisiert bzw. angeordnet sein. Eine
Herausforderung bei vielen Tastaturentwürfen besteht darin, daß sie Zeit
zum Lernen benötigen. Die
vorstehende geordnete Organisation vergrößert die Möglichkeit, den Ort auf der
digitalen Tastatur 28 angezeigter Zeichen schnell zu lernen
und in Erinnerung zu rufen, weil Benutzer bereits mit dieser Verteilung
im Uhrzeigersinn vertraut sind. Bei einer anderen Variation können die
Zeichen in einer Hälfte eines Rings
(beispielsweise der oberen Hälfte)
in einer Richtung (beispielsweise im Uhrzeigersinn) alphabetisch
geordnet sein, und alle Zeichen in der anderen Hälfte desselben Rings (beispielsweise
der unteren Hälfte)
können
in der anderen Richtung (entgegen dem Uhrzeigersinn) alphabetisch
geordnet sein. Diese Organisationstypen innerhalb der Ringe können es
einem Benutzer auch ermöglichen,
es schneller zu lernen, ein auf der digitalen Tastatur 28 angezeigtes gewünschtes
Zeichen zu lokalisieren.
-
Mehrere andere Merkmale der digitalen
Tastatur 28 können
auch variieren. Allgemein können sich
der Typ der angezeigten und verfügbaren
Zeichen, der Typ und die Anzahl der auf bestimmten Tasten der digitalen
Tastatur 28 angezeigten Zeichen, die Fontgröße jedes
angezeigten Zeichens und der Wert, der zu verarbeiten ist, wenn
eine bestimmte Taste berührt
(oder ausgewählt)
wird, von Tastatur zu Tastatur ändern.
Um eine Überfrachtung
zu minimieren, kann die digitale Tastatur 28 auch ohne
die Tasten auf der digitalen Tastatur 28 bezeichnende Graphiken
angezeigt werden. Für
kreisförmige
oder ringartige Tastatur-Layouts können sich auch mehrere andere
Eigenschaften, einschließlich
der Anzahl der das Tastatur-Layout ausmachenden Ringe, der Anzahl
der in jedem Ring und in der Tastatur insgesamt angezeigten Tasten
und der Dicke oder Breite jedes Rings, ändern.
-
Bei einer anderen Variation kann
das Layout der digitalen Tastatur 28 vom Benutzer durch
ein anderes Tastatur-Layout dynamisch ersetzt werden. Dieses Merkmal
kann besonders vorteilhaft sein, wenn es erwünscht ist, es einem Benutzer
zu ermöglichen,
schnell zwischen mehreren Tastatur-Layouts zu wechseln (beispielsweise
zwischen den Tastatur-Layouts in den 10, 11 und 12), wie in dem Fall, in dem der berührungsempfindliche
Bildschirm 14 verhältnismäßig klein
ist oder die Anzahl der zum Eingeben von Daten erforderlichen Zeichen
den zur Anzeige der digitalen Tastatur 28 innerhalb eines Orts
des berührungsempfindlichen
Bildschirms 14 erforderlichen Platzes übersteigt. Dadurch, daß dem Benutzer
die Möglichkeit
gegeben wird, zwischen mehreren Tastatur-Layouts zu wechseln, wird
ihm ein erhebliches Maß an
Flexibilität
bei der Eingabe von Zeichen mit dem Dateneingabesystem 26 bereitgestellt.
Wenn mehrere Tastatur-Layouts vorhanden sind, können sie zusätzlich in
verschiedene Unterklassen von Zeichen organisiert werden. Beispielsweise
kann ein Standard-Tastatur-Layout alphabetische Zeichen enthalten.
Ein zweites Tastatur-Layout kann numerische Zeichen enthalten. Ein
drittes Tastatur-Layout kann Spezialzeichen enthalten. Das Kopieren
von Zeichensätzen
in logische Untergruppen und das Organisieren dieser Untergruppen
auf mehreren Tastatur-Layouts gibt dem Benutzer die Möglichkeit,
zwischen verschiedenen Typen von Tastatur-Layouts zu navigieren,
wenn dies erwünscht
ist. Vorzugsweise kann der Benutzer ein bestimmtes Tastatur-Layout unter Verwendung
von einem oder mehreren Hot-Keys aktivieren, die jeweils wenigstens
einem der verfügbaren
Tastatur-Layouts zugeordnet sind. Ein Hot-Key kann eine beliebige,
der digitalen Tastatur 28 zugeordnete Taste oder Funktion sein,
die die Anzeige einer alternativen Tastatur-Layouts auslöst. Wenn ein einem bestimmten
Tastatur-Layout zugeordneter Hot-Key durch den Benutzer von der
digitalen Tastatur 28 ausgewählt wird, wird der aktuell
angezeigte Tastatur-Layout durch das dem ausgewählten Hot-Key zugeordnete Tastatur-Layout
ersetzt.
-
Bei einer anderen Variation kann
auf eine Anzahl verschiedener verwandter Symbole oder Zeichen durch
eine Taste auf der digitalen Tastatur 28 zugegriffen werden.
Wenn der Benutzer beispielsweise eine Interpunktionstaste berührt, kann
eine Anzahl verschiedener Interpunktionsmarkierungen angezeigt werden,
und der Benutzer kann eine dieser Wahlmöglichkeiten durch Ausführen einer
Gestik auswählen,
um das gewünschte
Symbol oder das gewünschte
Zeichen auszuwählen.
-
Wörterbuchmerkmale
-
Gemäß einem anderen Aspekt der
vorliegenden Erfindung können
mehrere Wörterbücher in dem
computerlesbaren Medium 16 (1)
gespeichert werden, wobei jedes Wörterbuch Vervollständigungskandidaten
mit zugeordneten Gewichtswerten enthält, um eine Rangordnung der
Vervollständigungskandidaten
aufzustellen. Die Gewichtswerte können beispielsweise entsprechend
dem Gebrauch in einer bestimmten Sprache oder einem bestimmten Verwendungsfeld
(beispielsweise Ingenieurswesen, allgemeines Geschäftswesen,
Recht, Buchführung) oder
einer speziellen Anwendung des Benutzers gewichtete Verwendungshäufigkeitswerte
darstellen. Bei mehreren Wörterbüchern kann
ein Benutzer leicht zwischen Sprachsätzen oder Sprach-Teilsätzen oder
Wörterbüchern für eine bestimmte
Anwendung wechseln.
-
Bei einer Variation kann das Dateneingabesystem 26 (beispielsweise
in den 1 bis 5) mehrere gleichzeitige
zugängliche
Wörterbücher enthalten, die
der Benutzer einzeln aktivieren und deaktivieren kann. Beispielsweise
kann das Dateneingabesystem 26 ein erstes Wörterbuch,
das Vervollständigungskandidaten
auf der Grund lage von Oxford-Englisch enthält, und ein zweites Wörterbuch,
das Vervollständigungskandidaten
auf der Grundlage des amerikanischen Englisch enthält, aufweisen,
wobei beide gleichzeitig aktiv sind und beide vom Kandidatenvorhersagesystem 32 angesteuert
und verwendet werden können,
wenn eine Liste von Vervollständigungskandidaten
erhalten werden soll. Gemäß einem
anderen Beispiel kann das Dateneingabesystem 26 ein Rechtswörterbuch,
ein Wörterbuch
zum Bauingenieurwesen und ein Wörterbuch
für allgemeines
amerikanisches Englisch aufweisen, die alle gleichzeitig aktiv sind.
Dieses Merkmal gibt dem Benutzer die Möglichkeit, eine Liste von Vervollständigungskandidaten
gleichzeitig zu erhalten, welche Variationen bestimmter Wörter, Ausdrücke oder
Zeichenfolgen enthalten, die spezifischen Anwendungsbereichen oder spezifischen
Wörterbuchtypen
eigen sind.
-
Bei mehreren, gleichzeitig zugänglichen Wörterbüchern kann
das Kandidatenvorhersagesystem 32 programmiert werden,
um Vervollständigungskandidaten
aus zwei oder mehr Wörterbüchern abzurufen,
welche jeweils ihre eigene Gewichtsfunktion für Vervollständigungskandidaten haben (wie
in den Blöcken 212 und 252 aus
den 25 und 26 dargestellt ist). Wenn
dies erfolgt ist, kann das Kandidatenvorhersagesystem 32 eine
endgültige
Liste von Vervollständigungskandidaten
auf der Grundlage einer Kombinationsfunktion erzeugen, welche die
Gewichtswerte berücksichtigt,
welche den aus den mehreren Wörterbüchern abgerufenen
Vervollständigungskandidaten
zugeordnet sind und welche auch eine Priorität für die Vervollständigungskandidaten auf
der Grundlage des Quellenwörterbuchs
festlegt, aus dem ein bestimmter Vervollständigungskandidat abgerufen
wurde. Beispielsweise kann das Kandidaten vorhersagesystem 32 so
programmiert werden, daß es
in der abschließenden
Liste die obersten N Vervollständigungskandidaten
(wobei N ≥ 1
ist) jeder Liste aus den mehreren Wörterbüchern abgerufener Vervollständigungskandidaten
aufweist.
-
Ein vordefiniertes Wörterbuch
kann auch auf der Grundlage des Gebrauchs bestimmter Wörter oder
Zeichenfolgen während
der Verwendung des Dateneingabesystems 26 durch einen bestimmten Benutzer
modifiziert oder erzeugt werden. Ein solches "personalisiertes" Wörterbuch
kann auch verwendet werden, um Listen der von einem Benutzer am
häufigsten
verwendeten Vervollständigungskandidaten
zu erzeugen. Beispielsweise kann die tatsächliche Verwendung von Vervollständigungskandidaten
von dem Wörterbuch
vom Dateneingabesystem 26 verfolgt werden. Ein personalisiertes
Wörterbuch
kann auch in Kombination mit anderen Wörterbüchern verwendet werden. Beispielsweise
kann das Kandidatenvorhersagesystem 32 unter Verwendung eines
standardisierten Wörterbuchs
und eines personalisierten Wörterbuchs
so programmiert werden, daß zuerst
Vervollständigungskandidaten
(bis zu einer vorbestimmten Grenze) Priorität gegeben wird, die mit dem
Inhalt der Suchzeichenkette beginnen und im personalisierten Wörterbuch
als die höchsten Gewichtswerte
aufweisend aufgezeichnet sind, und dann, falls in der interaktiven
Suchliste 30 Platz bleibt, Vervollständigungskandidaten Priorität gegeben
wird, die die höchsten
Gewichtswerten in dem standardisierten Wörterbuch aufweisen, wobei mit dem
Inhalt der Suchzeichenkette begonnen wird. Als ein anderes Beispiel
kann ein neues Wörterbuch
auf der Grundlage der vom Benutzer durch die Verwendung des Dateneingabesystems
26 im Laufe der Zeit ausgewählten
Vervollständigungs kandidaten
erzeugt werden. Der Benutzer kann das neue Wörterbuch zu jeder beliebigen
Zeit aktivieren, so daß es
Priorität über alle
zuvor existierenden Wörterbücher annimmt, falls
sich mit der Suchzeichenkette beginnende Vervollständigungskandidaten
im neuen Wörterbuch
befinden.
-
Bei einer anderen Variation des Wörterbuchs 20 und
der Verwendung des Wörterbuchs 20 durch das
Dateneingabesystem 26 gemäß der vorliegenden Erfindung
kann das Dateneingabesystem 26 programmiert werden, um
ein spezifisches Verwendungsmuster des Benutzers von Vervollständigungskandidaten
aus der interaktiven Suchliste 30 im Laufe der Zeit zu überwachen.
Beispielsweise kann, wenn Vervollständigungskandidaten vom Benutzer
unter Verwendung des Dateneingabesystems 26 ausgewählt und
in den Text eingegeben werden, ein zusätzliches Gewichtsfeld in jedem
Eintrag des Wörterbuchs 20 vom
Dateneingabesystem 26 verwendet werden, um die tatsächliche
Verwendungshäufigkeit von
Vervollständigungskandidaten
durch den Benutzer zu verfolgen. Bei dieser benutzerorientierten
Variation kann das Kandidatenvorhersagesystem 32 so konfiguriert
werden, daß es
die häufigsten
Vervollständigungskandidaten
in dem Wörterbuch 20,
beginnend mit einer Suchzeichenkette, herausfindet, wobei dies erstens
auf dem Grad der tatsächlichen Verwendung
durch den Benutzer, die in den zusätzlichen Verwendungsfeldern
des Wörterbuchs 20 verfolgt
wird, die Vervollständigungskandidaten
darin zugeordnet sind, und zweitens auf der Grundlage der vordefinierten
Gewichtsfelder 24 geschieht, falls die zusätzlichen
Verwendungsfelder null sind oder kleiner als ein vorbestimmter Schwellenwert
sind, der einen minimalen Prozentsatz der Verwendung zur Beurteilung
definiert, oder falls die Liste der unter Verwendung der zusätzlichen Verwendungsfelder
abgerufenen Vervollständigungskandidaten
zu einer Anzahl von Vervollständigungskandidaten
führt,
die kleiner ist als die maximale Anzahl, die mit der interaktiven
Suchliste 30 angezeigt werden kann. Bei einer solchen benutzerorientierten
Variation verfolgt das Kandidatenvorhersagesystem 32 die
Gesamtzahl der vom Benutzer im Laufe der Zeit aus dem Wörterbuch 20 vorgenommenen
Auswahlen (beispielsweise in einem Gesamtverwendungsfeld im Kandidatenvorhersagesystem 32)
sowie die Gesamtzahl der Gelegenheiten, zu denen ein bestimmter
Vervollständigungskandidat
im Wörterbuch 20 tatsächlich vom Benutzer
verwendet wird, um den Teiltexteintrag zu ersetzen (beispielsweise
in einem Vervollständigungskandidatenverwendungs-Feld
im Kandidatenvorhersagesystem 32). Um festzustellen, ob
ein zusätzliches
Verwendungsfeld für
einen bestimmten Vervollständigungskandidaten
im Wörterbuch
kleiner als der vorbestimmte Schwellenwert für eine annehmbare Verwendung
und Beurteilung ist, vergleicht das Dateneingabesystem 26 den
Wert Vervollständigungskandidatenverwendung/Gesamtverwendung
mit dem vorbestimmten Schwellenwert. Bei einer solchen Variation
können
die für
die Anzeige abgerufenen am häufigsten
verwendeten Vervollständigungskandidaten
im Gegensatz zu einer in die Felder 24 des Wörterbuchs 20 vorprogrammierten vordefinierten
Frequenzverteilung primär
auf der Grundlage der tatsächlichen
Verwendung der Vervollständigungskandidaten
durch den Benutzer konfiguriert werden.
-
Es wird beim Lesen dieser Beschreibung weiterhin
verständlich
geworden sein, daß durch
das Aufnehmen häufiger
Wortvorsilben in Listen von Vervollständigungskandidaten der Aufwand
für den
Benutzer verringert werden kann, zum gewünschten endgültigen Vervollständigungskandidaten
zu gelangen. Durch die Aufnahme von Vorsilben wird für alle Wörter, die
mit dieser Vorsilbe beginnen, ein gemeinsamer Eingangsweg bereitgestellt.
Verglichen mit der Verwendung einer anfänglichen Kandidatenliste, die beispielsweise
einfach alle Wörter
auflistet, die mit bestimmten Zeichen beginnen, kann dieses alternative
Verfahren wiederum die Anzahl der Suchen oder Suchiterationen verringern,
die erforderlich sind, um den endgültigen Vervollständigungskandidaten
zu finden. Dies ergibt sich daraus, daß das Gewichtsfeld für den Vorsilben-Vervollständigungskandidaten
zur Summe der Gewichtsfelder für
alle Einträge
gemacht werden kann, die mit der Vorsilbe beginnen, was wiederum
bedeutet, daß es
wahrscheinlicher ist, daß die Vorsilbe
an einer früheren
Stufe einer iterativen Suchfolge auftritt.
-
Ein Beispiel hiervon ist dadurch
gegeben, daß der
gewünschte
endgültige
Kandidat das Wort "telescope" ist. Ohne die Verwendung
von Vorsilben könnte
der Benutzer "t" eingeben, jedoch
keine Wörter
finden, die in der Vervollständigungskandidatenliste
mit "tele" beginnen. Deshalb
müßte der
Benutzer den nächsten
Buchstaben "e" eingeben, "telescope" könnte jedoch
weiterhin kein ausreichendes Gewicht haben, um in der nächsten Liste
von Vervollständigungskandidaten
aufzutauchen, so daß der
Prozeß fortgesetzt
wird. Die Verwendung von Vorsilben als Vervollständigungskandidaten kann diesen
Prozeß verkürzen, weil
das kombinierte Gewicht aller mit "tele" beginnenden
Vervollständigungskandidaten
dazu führt,
daß diese
Vorsilbe früh
im Suchprozeß auftritt, möglicherweise
sobald "t" eingegeben wird,
was es dem Benutzer dann ermöglicht,
die Suche sofort auf nur jene Wörter
einzuengen, die mit den Zeichen "tele" beginnen. Weil der
gewünschte
Kandidat nach weniger Suchen oder Suchiterationen gefunden wird, ver ringert
er die Gedächtnisbelastung
für den
Benutzer, wodurch wiederum das Lernen der erforderlichen Operationsfolge
erleichtert wird, die der Benutzer ausführen muß, um Wörter einzugeben, die mit diesen
Vorsilben beginnen.
-
Repositionierbare
Tastatur
-
Gemäß einem anderen Aspekt der
vorliegenden Erfindung wird die digitale Tastatur 28 so
programmiert, daß sie
dynamisch repositionierbar ist, um der Zeigevorrichtung zu folgen.
Wenn die digitale Tastatur 28 so programmiert ist, daß sie dynamisch repositionierbar
ist, folgt ihr Bild der Bewegung der Zeigevorrichtung auf dem berührungsempfindlichen Bildschirm 14,
so daß das
Bild der Tastatur im allgemeinen unterhalb der Zeigevorrichtung
zentriert bleibt, nachdem jede Tastaturauswahl vorgenommen wurde.
In dieser Hinsicht wird die digitale Tastatur 28 immer
dann, wenn sich das Dateneingabesystem 26 im Tastaturmodus
befindet, programmiert, um sich automatisch wieder auf einem Ort
innerhalb der graphischen Benutzerschnittstelle 34 zu zentrieren,
der einem letzten bekannten Satz von Positionskoordinaten für die Zeigevorrichtung
zugeordnet ist. Falls das Zeichen "u" beispielsweise
mit der Zeigevorrichtung aus der digitalen Tastatur 28 in 3 ausgewählt wird,
zentriert sich die digitale Tastatur 28 wieder im wesentlichen über den
Positionskoordinaten, die von der Zeigevorrichtung verwendet wurden,
um den Buchstaben "u" auszuwählen. Indem
die digitale Tastatur 28 im wesentlichen wieder über dem
letzten bekannten Satz von Positionskoordinaten für die Zeigevorrichtung
zentriert wird, bleiben die Position und der Abstand der Tasten
auf der digitalen Tastatur 28 in bezug auf die Zeigevorrichtung
des Benutzers im wesentlichen konstant. Hierdurch wird ein gleichmäßiger Mechanismus
zum konsequenten Auswählen derselben
Taste auf der digitalen Tastatur 28 bei Verwendung im wesentlichen
der gleichen Bewegung mit der Zeigevorrichtung bereitgestellt. Wenn
die digitale Tastatur 28 zusätzlich dynamisch repositionierbar
ist, werden der Grad und die Häufigkeit,
womit der Benutzer die Zeigevorrichtung nach der Auswahl von Zeichen
der Tastatur repositionieren muß,
minimiert. Falls dieses Merkmal der Repositionierbarkeit mit einer
häufigkeitsverteilten
Tastatur kombiniert wird, bei der sich die gebräuchlichsten Zeichen in der Nähe der Mitte
befinden, ruht die Zeigevorrichtung fast immer in der Mitte der
gebräuchlichsten
Zeichen. Falls die häufigkeitsverteilte
Tastatur aus Ringen besteht, weist jedes der Zeichen in einem bestimmten Ring
einen gleichen Abstand von der Zeigevorrichtung auf, wenn die Zeigevorrichtung
in der Mitte der Tastatur ruht, was zu einer gleichmäßigen Bewegung zur
Zeicheneingabe führt.
-
Wenn die digitale Tastatur 28 so
programmiert ist, daß sie
dynamisch repositionierbar ist, kann sie auch so programmiert werden,
daß sie
auf einen im wesentlichen zentralen Ort innerhalb der graphischen
Benutzerschnittstelle 34 (oder eine andere vom Benutzer
definierbare Position) repositioniert wird, wenn sich die digitale
Tastatur 28 innerhalb eines vorbestimmten Abstands irgendwelcher
der Grenzen der graphischen Benutzerschnittstelle 34 nähert. Durch
das Repositionieren der digitalen Tastatur 28 auf diese
Weise wird ein Mechanismus bereitgestellt, um Umständen Rechnung
zu tragen, bei denen die digitale Tastatur 28 zu nahe an
eine Grenze des berührungsempfindlichen
Bildschirms 14 driftet. Bei einem alternativen Repositionierungsmechanismus
kann ein Hot-Key zum automatischen Rezentrieren der digitalen Tastatur 28 verwendet
werden. Bei einer weiteren Alternative kann die dynamisch repositionierbare
digitale Tastatur 28 so programmiert werden, daß sie um
Positionskoordinaten für
die Zeigevorrichtung rezentriert wird, wenn die Positionskoordinaten
einem Teil der graphischen Benutzerschnittstelle 34 (oder
des Bildschirms) entsprechen, der gegenwärtig nicht von der digitalen
Tastatur 28 belegt ist. Falls sich die digitale Tastatur 28 beispielsweise
einem Rand der graphischen Benutzerschnittstelle 34 nähert, kann
der Benutzer einfach in der Mitte der graphischen Benutzerschnittstelle 34 aufsetzen,
und die digitale Tastatur 28 wird dann zu diesem Punkt
relokalisiert.
-
Wenn die digitale Tastatur 28 dynamisch
repositionierbar ist, ist es im allgemeinen bevorzugt, daß der Betrag
der Tastaturbewegung, oder des Drift, minimiert ist. Dies kann erreicht
werden, indem das Tastatur-Layout so eingerichtet wird, daß die Tastaturzeichen
um die digitale Tastatur 28 in einer Konfiguration verteilt
werden, in der der Betrag des auftretenden Driftens verringert ist,
wenn sie dynamisch repositionierbar ist. Ein Weg, um dies zu erreichen,
besteht darin, die digitale Tastatur 28 so zu konfigurieren,
daß die
Gesamtheit der Verwendungshäufigkeitswerte
für Zeichen,
die sich innerhalb eines bestimmten Abschnitts (oder Sektors) der
digitalen Tastatur 28 befinden, im wesentlichen die gleiche
ist wie bei anderen ähnlich
geformten Abschnitten (Sektoren) der digitalen Tastatur 28.
Es wird daran erinnert, daß bei
der vorstehend erörterten
häufigkeitsverteilten
Anordnung von Tastaturzeichen jedem Tastaturzeichen ein vorbestimmter
Verwendungshäufigkeitswert
zugewiesen (oder zugeordnet) ist. Zum Minimieren des Driftens kann
die digitale Tastatur 28 in gedachte, im wesentlichen gleich
geformte Sektoren unterteilt werden, und die Tastaturzeichen können Orten
innerhalb der digitalen Tastatur 28 zugewiesen werden,
so daß die
Gesamtheit der kombinierten Häufigkeitswerte
für Zeichen
innerhalb eines bestimmten Sektors der digitalen Tastatur 28 im
wesentlichen der Gesamtheit der kombinierten Häufigkeitswerte für Zeichen
innerhalb beliebiger der anderen Sektoren der digitalen Tastatur 28 gleicht.
Auf diese Weise sind die Wahrscheinlichkeiten für das Auswählen eines Zeichens aus beliebigen
der vorbestimmten Sektoren der digitalen Tastatur 28 im
wesentlichen gleich. Falls jemand dementsprechend den Drift bei
dem kreisförmigen
Layout der digitalen Tastatur 28 in 3 minimieren möchte, ist es bevorzugt, daß die Tastaturzeichen
so verteilt werden, daß wenn
die digitale Tastatur 28 in im wesentlichen gleich geformte,
gedachte keilartige Sektoren unterteilt wird, jeder Sektor der Tastatur
im wesentlichen das gleiche "Gesamtgewicht" von Zeichen, entsprechend
ihrer Verwendungshäufigkeit,
aufweist wie jeder der anderen Sektoren.
-
Ein anderer Weg zum Minimieren des
Drift besteht darin, die digitale Tastatur 28 in einem
im wesentlichen symmetrischen Zeichenlayout zu konfigurieren, wobei
Paare entgegengesetzter Zeichen auf der digitalen Tastatur 28 mit
im wesentlichen ähnlichen
Verwendungshäufigkeiten
angezeigt werden. Bei dieser Konfiguration liegt die Verwendungshäufigkeit
eines Zeichens in einem Paar entgegengesetzter Zeichen so dicht
wie möglich
derjenigen des anderen Zeichens in dem Paar. Ein Beispiel dieser Konfiguration
ist in 13 dargestellt,
worin dargestellt ist, daß die
Häufigkeiten
(f(X1) und f(X2))
von Zeichen X1 und X2 einander
im wesentlichen gleichen und die Häufigkeiten (f(X3)
und f(X4)) von Zeichen X3 und
X4 einander im wesentlichen gleichen. Die
Verwendungshäufigkeiten
der auf der digitalen Tastatur 28 angezeigten Zeichen kann
unter Verwendung wohlbekannter Analysetechniken anhand eines großen Textkörpers berechnet
werden.
-
Durch die dynamisch repositionierbare
digitale Tastatur 28 wird die Notwendigkeit des Repositionierens
der Zeigevorrichtung minimiert, und sie arbeitet stattdessen auf
der Grundlage des Repositionierens der digitalen Tastatur 28 in
bezug auf die Zeigevorrichtung. Dadurch, daß die digitale Tastatur 28 dynamisch
repositionierbar gemacht wird, wird auch eine gleichmäßige Bewegung
für ein
bestimmtes Zeichen bereitgestellt, woraus sich eine intuitivere
Tastatur und ein intuitiverer Dateneingabemechanismus ergeben. Wenn
sie in einer einzigen Ausführungsform
kombiniert werden, verringern die Zeichenhäufigkeitsverteilung und die
Aspekte der dynamischen Repositionierbarkeit der digitalen Tastatur 28 weiter die
für die
Zeigevorrichtung erforderliche Bewegung, wenn Zeichen aus der digitalen
Tastatur 28 auszuwählen
sind.
-
Kandidatenauswahl
-
Gemäß der zuvor beschriebenen ersten Ausführungsform
werden Vervollständigungskandidaten
durch Gesten aus der interaktiven Suchliste 30 ausgewählt. Alternativ
können
andere Formen einer Kandidatenauswahl mit Zeigevorrichtungen ausgeführt werden.
Falls beispielsweise eine auf Gesten beruhende Auswahl für eine bestimmte
Implementation nicht erwünscht
ist, können
Kandidaten auf der Grundlage ihres Orts in der interaktiven Suchliste 30 ausgewählt werden.
Wenn das Dateneingabesystem 26 gemäß einem anderen Beispiel programmiert
ist, eine Eingabe von einer Maus mit zwei oder mehr Tasten zu empfangen,
kann das Dateneingabesystem 26 programmiert werden, die
Eingabe von einer Maustaste zu verwenden, um zwischen dem Aktivieren
und dem Deaktivieren der interaktiven Suchliste 30 umzuschalten
und um die Eingabe von einer zweiten Maustaste zu verwenden, um
einen Vervollständigungskandidaten
von der interaktiven Suchliste 30 in den Text einzufügen, wenn
die interaktive Suchliste 30 aktiv ist und die Maus verwendet
wurde, um diesen Vervollständigungskandidaten
hervorzuheben. In diesem letztgenannten Fall kann das Dateneingabesystem 26 auch
programmiert werden, die Eingabe von der zweiten Maustaste als einen
Auslöser zum
Auswählen
einer Taste von der digitalen Tastatur 28 zu verwenden,
falls die Mauscursorposition (also die Positionskoordinaten der
Maus) auf der graphischen Benutzerschnittstelle 34 zu der
Zeit, zu der eine Eingabe von der zweiten Maustaste empfangen wird,
einer Taste auf der digitalen Tastatur 28 zugeordnet ist.
-
Gemäß einem anderen Aspekt kann
eine Kandidatenauswahl unter Verwendung der interaktiven Suchliste 30 modifiziert
werden, um die auf der Verzögerungszeit
beruhende Technik zum Auslösen des
Aktivierens der interaktiven Suchliste 30 oder zum Auslösen des
iterativen Suchens durch andere Formen von Eingabeindikatoren von
der Zeigevorrichtung zu ersetzen. Bei einer Maus kann es sich beispielsweise
um ein Eingangssignal von einer Maustaste handeln, wenn sich die
Mausposition über einer
bestimmten Funktionstaste oder einem bestimmten Ort auf der graphischen
Benutzerschnittstelle 34 befindet oder wenn ein Doppelklicksignal von
dieser Maustaste vom Dateneingabesystem 26 empfangen wird.
-
Layout der interaktiven
Suchliste
-
Wenngleich die interaktive Suchliste 30 gemäß der ersten
Ausführungsform
(1 bis 5) als eine vertikale Liste von Vervollständigungskandidaten
angezeigt wird, kann die interaktive Suchliste 30, abhängig davon,
welche Optionen in das Dateneingabesystem 26 programmiert
worden sind und welche dieser Optionen vom Benutzer gewählt worden sind,
auf mehrere verschiedene Arten angezeigt werden. Es gibt vier Hauptüberlegungen
für die
Anzeige der interaktiven Suchliste 30. Die erste besteht
darin, wo die interaktive Suchliste 30 innerhalb der graphischen
Benutzerschnittstelle 34 positioniert werden soll. Die
zweite besteht darin, ob die interaktive Suchliste 30 ständig sichtbar
ist oder nicht. Die dritte Überlegung
besteht im Typ der interaktiven Suchliste und insbesondere darin,
wie die Vervollständigungskandidaten
in der interaktiven Suchliste 30 innerhalb der graphischen
Benutzerschnittstelle 34 sichtbar angeordnet werden. Die
vierte Überlegung
besteht darin, ob die interaktive Suchliste 30 die digitale
Tastatur 28 ersetzt oder ob die interaktive Suchliste 30,
wenn sie aktiv ist, vorübergehend
fern von einem Teil der digitalen Tastatur 28 auftritt
oder diesem überlagert
wird.
-
Bei einer Alternative zum Tauschen
der interaktiven Suchliste 30 gegen die digitale Tastatur 28 kann
die interaktive Suchliste 30 an einem festen Ort innerhalb
der graphischen Benutzerschnittstelle 34 angezeigt werden.
Bei einer anderen Variation kann die interaktive Suchliste 30 mit
der digitalen Tastatur 28 verbunden werden, wenn sie repositionierbar
ist, und ständig
angezeigt werden. Sowohl bei der verbundenen interaktiven Suchliste 30 als
auch bei der interaktiven Suchliste 30 mit festen Ort werden
die Ergebnisse des automatischen Suchens innerhalb der interaktiven
Suchliste 30 ständig
angezeigt, wenn der Benutzer Zeichen mit der digitalen Tastatur 28 eingibt
oder die interaktive Suchliste 30 selbst verwendet (wie
durch die Blöcke 213B und 254 aus
den 23 und 24 dargestellt ist). Das
Aktivieren einer verbundenen interaktiven Suchliste 30 oder
einer interaktiven Suchliste 30 mit einem festen Ort kann
erreicht werden, indem mit der Zeigevorrichtung auf einem innerhalb
der digitalen Tastatur 28 ausgewählten Tastaturzeichen verweilt
wird. Sobald der vorbestimmte Grenzzeitbetrag L1 verstrichen ist,
wird die interaktive Suchliste 30 aktiv. Falls es der Benutzer möchte, kann
er an diesem Punkt einen der Vervollständigungskandidaten (falls überhaupt)
innerhalb der interaktiven Suchliste 30 auswählen, oder
er kann zum Tastaturmodus zurückkehren
und das Hinzufügen
zum aktuellen Teiltexteintrag oder das auf andere Weise erfolgende
Modifizieren von diesem über
die digitale Tastatur 28 fortsetzen. Bei einer anderen
Variation kann die interaktive Suchliste 30, wenn sie an
einem verbundenen oder festen Ort angeordnet ist, mit potentiellen
Vervollständigungskandidaten
auf der Grundlage des aktuellen Inhalts der vom Benutzer unter Verwendung
der digitalen Tastatur 28 aufgebauten Suchzeichenkette
kontinuierlich aktualisiert werden. Bei dieser Variation kann der
Benutzer einfach das Hinzufügen
von Zeichen zum Ende der aktuellen Teiltexteingabe Zeichen für Zeichen über die
digitale Tastatur 28 fortsetzen, um das Aufbauen des gewünschten
Worts, des gewünschten Ausdrucks
oder der gewünschten
Zeichenfolge fortzusetzen, bis der gewünschte Vervollständigungskandidat
oder ein Teilvervollständigungskandidat
davon in der interaktiven Suchliste 30 auftritt. Bei einer weiteren
Alternative kann die interaktive Suchliste 30, wenn sie
aktiviert ist, einem Teil der digitalen Tastatur 28 überlagert
dargestellt werden.
-
Die digitale Tastatur 28 kann
angewiesen sein, sich auf der graphischen Benutzerschnittstelle 34 sichtbar
oder unsichtbar zu machen. Gemäß der in
den 1 bis 5 dargestellten ersten Ausführungsform
kann die digitale Tastatur 28 beispielsweise so programmiert
werden, daß sie
ansprechend auf eine Benutzerauswahl auf der Personalcomputervorrichtung
auf der graphischen Benutzerschnittstelle 34 angezeigt
wird und ansprechend auf eine andere Benutzerauswahl verborgen (oder
gelöscht)
wird. Dieses Merkmal bietet der Anwendung 27 beispielsweise
auch die Option, der digitalen Tastatur 28 vorzuschreiben,
wann sie sichtbar und wann sie unsichtbar sein soll. Vorzugsweise
wird die Anwendung 27 programmiert zu entscheiden, wann
und wo die digitale Tastatur 28 angezeigt werden soll.
Dieses Merkmal kann auf viele Typen von Personalcomputervorrichtungen
angewendet werden, wobei dies beispielsweise den Fall einschließt, in dem
ein berührungsempfindlicher
Bildschirm verwendet wird, oder den Fall, in dem die digitale Tastatur 28 auf
einer Anzeigevorrichtung angezeigt wird, die von der Hardware-Eingabeschnittstelle 17 getrennt
ist, beispielsweise mit einem Datentablett, einer Näherungserfassungs-Eingabefläche oder
einer gleichwertigen Eingabeschnittstelle. Die Hardware-Eingabeschnittstelle kann
sich beispielsweise an einer Fernsteuervorrichtung befinden, die
verwendet wird, um zu steuern, wann die digitale Tastatur 28 auf
einem Fernsehgerät oder
einer fernen Computeranzeige angezeigt wird. Mit einer Näherungserfassungs-Eingabefläche kann die
digitale Tastatur angezeigt werden, wenn die Zeigevorrichtung innerhalb
eines festgelegten vorbestimmten Abstands von einer Näherungs erfassungs-Eingabefläche erfaßt wird,
und die digitale Tastatur kann verborgen werden, wenn die Zeigevorrichtung
nicht innerhalb des festgelegten vorbestimmten Abstands von der
Näherungserfassungs-Eingabefläche erfaßt wird.
Als ein weiteres Beispiel kann die Anwendung 27, falls
eine Näherungserfassungs-Eingabefläche verwendet
wird, die zu einer Positionserfassung in der Lage ist, die digitale
Tastatur 28 anweisen, unsichtbar zu werden, um zum Volltextmodus
zu wechseln, wenn ein Zeigestift oder dergleichen einen festgelegten
vorbestimmten Abstand von der Näherungserfassungs-Eingabefläche abgehoben
wird. Wenn der Zeigestift oder dergleichen wieder in den festgelegten
vorbestimmten Abstand von der Näherungserfassungs-Eingabefläche zurückgebracht
wird, reaktiviert die Anwendung 27 die Anzeige der digitalen
Tastatur 28 über
Positionskoordinaten, die der Position der Zeigevorrichtung zugeordnet
sind, über
der Näherungserfassungs-Eingabefläche oder
auf einen von der Zeigevorrichtung fernen Bereich. Variationen zur
Behandlung der Texteingabe mit der Näherungserfassungs-Eingabefläche werden
nachstehend erörtert.
-
Die API für das Dateneingabesystem 26 ermöglicht es
der Anwendung 27 auch, die zum Suchen verwendete Teiltexteingabe
programmgesteuert zu ändern.
Beispielsweise könnte
der Benutzer eines Texteditors den Cursor hinter einem Wort oder
einer Zeichenfolge anordnen, und die Anwendung 27 könnte dem
Dateneingabesystem 26 dann vorschreiben, dieses Wort oder
diese Zeichenfolge als eine Teiltexteingabe für ein weiteres Suchen zu verwenden.
-
Layout-Typen interaktiver
Suchlisten
-
Es können vom Dateneingabesystem 26 mehrere
alternative Layouts für
die interaktive Suchliste 30 verwendet werden. Gemäß der ersten
Ausführungsform
wird eine vertikale Liste von Vervollständigungskandidaten verwendet,
wie in 14 weiter dargestellt
ist. Bei anderen Layouts können Vervollständigungskandidaten
innerhalb der interaktiven Suchliste 30 in einer X-Konfiguration
(15), einer rechteckigen
Konfiguration (16),
einer Kreuzkonfiguration (17),
einer T-Konfiguration (18)
oder einer horizontalen Konfiguration angezeigt werden. Bei der
X-Konfiguration ist ein Vervollständigungskandidat entlang der
x-Achse oder der y-Achse vorzugsweise etwas gegenüber einem
zentralen Ort innerhalb der X-Konfiguration versetzt und von vier
oder mehr Vervollständigungskandidaten umgeben,
die sich innerhalb der Nordwest-, Nordost-, Südwest- und der Südost-Richtung
befinden (in bezug auf den angezeigten zentralen Vervollständigungskandidaten).
Bei einer X-Konfiguration der Suchliste (in der Art der vorstehend
angegebenen) ist für
jeden der fünf
in der Liste angezeigten Vervollständigungskandidaten eine eindeutige
Richtung bereitgestellt, so daß Stiftbewegungen
minimiert werden. Bei der Kreuzkonfiguration ist ein im wesentlichen
zentral angezeigter Vervollständigungskandidat innerhalb
der interaktiven Suchliste 30 von bis zu vier Vervollständigungskandidaten
in nördlicher, östlicher, südlicher
und westlicher Richtung umgeben (in bezug auf den angezeigten zentralen
Vervollständigungskandidaten).
-
Konfiguration
der interaktiven Suchliste
-
Wenn die digitale Tastatur 28 programmiert ist,
denselben Anzeigeplatz auf der graphischen Benutzerschnittstelle 34 zu
verwenden wie die interaktive Suchliste 30, ist es bevorzugt,
daß das
Dateneingabesystem 26 auch programmiert ist, alle Vervollständigungskandidaten
in der Nähe
der letzten bekannten Positionskoordinaten für die Zeigevorrichtung anzuzeigen,
so daß sie
etwas gegenüber
der x-Achse oder
der y-Achse der letzten bekannten Positionskoordinaten verschoben
sind, um den Grad zu minimieren, bis zu dem diese Vervollständigungskandidaten
in der interaktiven Suchliste 30 von der Zeigevorrichtung
verdeckt werden. Dieses Merkmal kann besonders nützlich sein, wenn die Zeigevorrichtung
ein Stift oder Finger ist und sich der Benutzer mit einem berührungsempfindlichen
Bildschirm 14 austauscht. Auf diese Weise kann die interaktive
Suchliste an einem Ort angezeigt werden, an dem sie leicht sichtbar
und für
den Benutzer zugänglich
ist.
-
Wenn bei einer anderen Variation
die digitale Tastatur 28 und die interaktive Suchliste 30 austauschbar
angezeigt werden, kann die Liste der Vervollständigungskandidaten innerhalb
der interaktiven Suchliste 30 so angezeigt werden, daß die häufigsten Vervollständigungskandidaten
am dichtesten bei den letzten bekannten Positionskoordinaten der
Zeigevorrichtung angezeigt werden, während die anderen Vervollständigungskandidaten
innerhalb der interaktiven Suchliste 30 in bezug auf die
häufigsten
Vervollständigungskandidaten
weiter entfernt von den letzten bekannten Positionskoordinaten der
Zeigevorrichtung angezeigt werden. Diese Variation führt zu einer
häufigkeitsverteilten
interaktiven Suchliste 30, die dabei helfen kann, den Bewegungsumfang
weiter zu minimieren, der mit der Zeigevorrichtung erforderlich
ist, um die interaktive Suchliste 30 zu verwenden und aus
dieser auszuwählen.
-
Wie in 19 dargestellt ist, können bei
einer anderen Variation sowohl die digitale Tastatur 28 als
auch die interaktive Suchliste 30 ständig innerhalb fester getrennter
Orte auf der graphischen Benutzerschnittstelle 34 zusammen
mit einem Suchzeichenketten-Fenster 40 angezeigt werden,
das zum Anzeigen des aktuellen Inhalts der Suchzeichenkette verwendet
wird. Eine Werkzeugleiste 42 kann auch angezeigt werden,
um vordefinierte Funktionen und Befehle zu identifizieren, die vom
Benutzer ausgewählt
werden können,
während
er das Dateneingabesystem verwendet. Wenn die Werkzeugleiste 42 in die
dynamisch repositionierbare Konfiguration für die digitale Tastatur 28 aufgenommen
ist, kann die Werkzeugleiste 42 dynamisch zusammen mit
der digitalen Tastatur repositioniert werden, oder die Werkzeugleiste 42 kann
an einem festen Ort innerhalb der graphischen Benutzerschnittstelle 34 angeordnet werden
und dort bleiben. Wie in 20 dargestellt ist,
können
immer dann, wenn die digitale Tastatur 28 mit der interaktiven
Suchliste 30 oder ohne diese angezeigt wird, eine Werkzeugleiste 42 und
zusätzliche Zeichen-Layouts 44 verwendet
werden, um die Funktionalität
für den
Benutzer zu erweitern, während
er die digitale Tastatur 28 verwendet.
-
Gemäß einem anderen Aspekt der
vorliegenden Erfindung kann eine häufig verwendete Wort- oder
Zeichenfolge jedesmal dann an derselben Position erscheinen, wenn
eine solche Wort- oder Zeichenfolge in einer Suchliste angezeigt
wird. Dies hilft dabei, daß der
Benutzer mit dem Ort eines solchen Worts oder einer solchen Zeichenfolge
innerhalb der Suchliste vertraut wird, und dies hilft dem Benutzer daher
dabei, einfacher auf ein Wort oder eine solche Zeichenfolge zuzugreifen.
-
Gemäß einer anderen alternativen
Ausführungsform
kann der Benutzer, wenn er beginnt, die Position der gemeinsamen
Wörter
innerhalb einer Suchliste zu lernen, beginnen zu wissen, welche Geste
erforderlich ist, um ein bestimmtes Wort einzugeben, selbst bevor
der vorbestimmte Verzögerungszeitraum
L1 verstrichen ist und die Suchliste angezeigt wird. In diesem Fall
kann das Dateneingabesystem 26 programmiert werden, solche
Gesten zu erkennen, selbst bevor der vorbestimmte Verzögerungszeitraum
L1 verstrichen ist und die interaktive Suchliste 30 angezeigt
wird.
-
Gemäß einer anderen alternativen
Ausführungsform
kann die interaktive Suchliste Vervollständigungskandidaten anzeigen,
wobei der Teil jedes Vervollständigungskandidaten,
der mit der Suchzeichenkette übereinstimmt,
in einer anderen Weise angezeigt wird (beispielsweise mit einer
anderen Farbe, einem anderen Font oder einer anderen Stärke) als die
restlichen Teile der Vervollständigungskandidaten.
Falls die restlichen Teile beispielsweise erheblich stärker sind
als der Teil der Vervollständigungskandidaten,
die mit der Suchzeichenkette übereinstimmen, kann
das Auge des Benutzers zu den Abschnitten hingezogen werden, die
die Vervollständigungskandidaten
auf der interaktiven Suchliste voneinander unterscheiden, wodurch
die Auswahl des gewünschten
Vervollständigungskandidaten
erleichtert wird.
-
Verfolgen
der Bewegung der Zeigevorrichtung
-
Bei einer anderen Variation kann
das Dateneingabesystem 26, wenn ein Zeigestift (oder ein
Stift, ein Finger oder dergleichen) zusammen mit einer berührungsempfindlichen
oder druckempfindlichen Eingabefläche (beispielsweise einem berührungsempfindlichen
Bildschirm, einem Datentablett oder einer Eingabeauflage) verwendet
wird, programmiert werden, um zu bestimmen, ob die Position eines
auf der graphischen Benutzerschnittstelle 34 angezeigten Cursors
die Position des Zeigestifts genau verfolgt oder ob sie sich in
bezug auf die Bewegung des Zeigestifts bewegt. Falls im ersten Fall
die Cursorposition die Position des Zeigestifts genau verfolgt,
wirken der Zeigestift und der Cursor wie eine Maus und der Cursor
auf einer herkömmlichen
Benutzerschnittstelle, und die Position des Cursors verfolgt genau
die Position der Spitze des Zeigestifts auf der Hardware-Eingabefläche (also
die letzten bekannten Positionskoordinaten für den Zeigestift).
-
Im zweiten Fall wird der auf der
graphischen Benutzerschnittstelle 34 angezeigte Cursor
um eine zur Bewegung mit dem Zeigestift proportionale Strecke bewegt.
Dieses letztgenannte Verhalten kann wirksam werden, wenn die interaktive
Suchliste 30 angezeigt wird. Wenn er sich beispielsweise
eine vertikale Liste von Vervollständigungskandidaten hinauf bewegt,
kann sich der Cursor schneller hinauf bewegen als die tatsächliche
physikalische Bewegung des Zeigestifts.
-
In jedem Fall kann der Zeigestift
(oder eine andere Zeigevorrichtung) lokal auf der Anzeigevorrichtung
verwendet werden, falls es sich dabei um einen berührungsempfindlichen
Bildschirm handelt, oder er kann in einer Entfernung davon verwendet werden,
falls es sich um ein Datentablett oder eine Näherungserfassungs-Eingabeschnittstelle
handelt, oder er kann mit dem Zeicheneingaberaum auf einem Palm
PilotTM oder einer anderen handgehaltenen
Personalcomputervorrichtung verwendet werden.
-
Das Verwenden des Cursors zum Verfolgen der
Positionskoordinaten der Zeigevorrichtung kann dem Benutzer dabei
helfen, seine Aufmerksamkeit auf die digitale Tastatur 28 oder
die interaktive Suchliste 30 zu richten, die auf der Anzeigevorrichtung 15 angezeigt
werden, ohne daß er
dadurch abgelenkt wird, daß er
auf die physikalische Position der Zeigevorrichtung blicken muß (es sei
beispielsweise auf den Cursor 48 verwiesen, wie in 27 dargestellt ist). Dies
kann hilfreich sein, wenn beispielsweise ein Datentablett oder eine
Eingabeauflage verwendet wird und sich fern vom Anzeigebereich der
Graphikanzeigevorrichtung 15 befindet, worauf die digitale Tastatur 28 oder
die interaktive Suchliste 30 (oder beide) angezeigt werden.
Weiterhin wird durch die Verwendung des Cursors zum fernen Verfolgen
der Bewegung des Zeigestifts, des Stifts oder des Fingers ein Mechanismus
zur Verwendung der digitalen Tastatur 28 und der interaktiven
Suchliste 30 bereitgestellt, ohne daß sie vor der Betrachtung des
Benutzers mit dem Zeigestift, dem Stift oder dem Finger verdeckt
werden.
-
Wenn das Dateneingabesystem 26 für die Verwendung
des Cursors zum fernen Verfolgen der Bewegung des Zeigestifts, des
Stifts oder des Fingers programmiert ist, kann der Cursor über der
digitalen Tastatur 28 angezeigt werden, wenn sich das Dateneingabesystem 26 im
Tastaturmodus befindet, und der Cursor kann so programmiert werden,
daß er immer
dann auf die Mitte der digitalen Tastatur 28 relokalisiert
wird, wenn ein Zeichen von der Tastatur oder ein Vervollständigungskandidat
aus der interaktiven Suchliste 30 ausgewählt wird.
Sobald der Cursor auf der digitalen Tastatur 28 zentriert
ist, können weitere
Bewegungen mit der Zeigevorrichtung verwendet werden, um weitere
Auswahlen von der digitalen Tastatur 28 vorzunehmen, als
ob die Zeigevorrichtung physikalisch um die Mitte der digitalen
Tastatur 28 zentriert wäre.
Bei dieser Variation wird die digitale Tastatur 28 an einem
festgelegten fernen Ort auf der graphischen Benutzerschnittstelle 34 angezeigt.
Bei dieser Variation wird der Benutzer nicht visuell durch die Bewegung
der digitalen Tastatur 28 abgelenkt, während er viele der Vorteile
der dynamisch repositionierbaren digitalen Tastatur 28 genießt. Wenn
der Cursor beispielsweise auf die Mitte der digitalen Tastatur 28 relokalisiert
wird, wenn die Tastatur aktiv ist und auf eine Benutzereingabe wartet,
bleibt ein bestimmtes Zeichen auf der digitalen Tastatur 28 unabhängig davon,
welche Eingabe zuletzt mit der Zeigevorrichtung ausgeführt wurde,
im gleichen Abstand und in der gleichen Richtung von der Zeigevorrichtung.
Dieses Merkmal des Cursors ermöglicht
es dem Benutzer, unbewußt
zu lernen, wodurch ein wirksames Lernen bereitgestellt wird. Wenn
ein häufigkeitsverteiltes
Tastatur-Layout verwendet wird, wobei sich die am häufigsten
verwendeten Zeichen in der Nähe
des zentralen Orts befinden, ermöglicht
das Relokalisieren des Cursors auf die Mitte der digitalen Tastatur 28 einen
einfachen Zugriff auf die Zeichen, die am wahrscheinlichsten als Nächstes gewählt werden,
wodurch Fingerbewegungen reduziert werden und die Wirksamkeit erhöht wird.
-
Bei einer Variation braucht die Bewegung des
Cursors nicht notwendigerweise direkt proportional zur Bewegung
der Zeigevorrichtung sein. Bei dieser Variation ist das Dateneingabesystem 26 so
programmiert, daß die
Bewegung der Zeigevorrichtung um eine kleine Strecke der Bewegung
des Cursors um eine größere Strecke
auf der digitalen Tastatur 28 oder der interaktiven Suchliste 30 gleichwertig
ist. Bei dieser Variation wird eine Skalierung verwendet, um die Bewegung
zu minimieren, die erforderlich ist, um Zeichen von der digitalen
Tastatur 28 und Vervollständigungskandidaten aus der
interaktiven Suchliste 30 genau zu unterscheiden und auszuwählen. Bei einer
anderen Variation kann die Strecke der Cursorbewegung vom Dateneingabesystem 26 in
bezug zu der Geschwindigkeit gesetzt werden, mit der sich die Zeigevorrichtung
bewegt, so daß die
vom Cursor zurückgelegte
Strecke umso größer ist,
je schneller die Bewegung mit der Zeigevorrichtung ist und die vom Cursor
auf der graphischen Benutzerschnittstelle 34 zurückgelegte
Strecke umso kleiner ist, je langsamer die Bewegung der Zeigevorrichtung
ist.
-
Es sei bemerkt, daß, wie vorstehend
angegeben wurde, wenn die Zeigevorrichtung auf einer digitalen Tastatur
verwendet wird, die an einem Ort fern von der Zeigevorrichtung angezeigt
wird, beispielsweise wenn die Zeigevorrichtung eine Maus, ein Finger
auf einer berührungsempfindlichen
Palette oder ein Zeigestift ist, die digitale Tastatur nicht unter
der Zeigevorrichtung angezeigt wird, sondern auf einer Anzeigevorrichtung
dargestellt wird, und die Zeigerbewegung als Relativbewegungen eines
auf der digitalen Tastatur angezeigten Cursors dargestellt werden.
In diesen Fällen
werden Zeichen auf der digitalen Tastatur nicht verdeckt.
-
Erhalten von
Vervollständigungskandidaten
eines spezifischen Typs oder einer minimalen Länge
-
Gemäß einem anderen Aspekt der
vorliegenden Erfindung wird ein spezieller Anzeigebereich, der eine
Reihe von Zahlen enthält,
als Teil der digitalen Tastatur 28 oder in Zusammenhang
mit dieser angezeigt, um den Benutzer in die Lage zu versetzen, das
Dateneingabesystem 26 schnell anzuweisen, Vervollständigungskandidaten,
die wenigstens eine minimale Anzahl von Zeichen aufweisen, zu erhalten und
in der interaktiven Suchliste 30 anzuzeigen. Wenn ein Benutzer
in dieser Hinsicht eines der Zeichen auf der digitalen Tastatur 28,
gefolgt von einer der Zahlen in dem speziellen Anzeigebereich, auswählt, ist
das Dateneingabesystem 26 programmiert, das Kandidatenvorhersagesystem 32 zu
veranlassen, aus dem Wörterbuch 20 Vervollständigungskandidaten
beginnend mit dem ausgewählten
Zeichen zu erhalten, bei denen die Anzahl der Zeichen wenigstens
so groß ist
wie die vom Benutzer aus dem speziellen Anzeigebereich ausgewählte Zahl.
Alternativ kann der Benutzer eine Zahl aus dem speziellen Anzeigebereich
tippen, woraufhin er eines der Zeichen auf der digitalen Tastatur 28 herunterdrückt, um das
Dateneingabesystem 26 anzuweisen, das Kandidatenvorhersagesystem 32 zu
veranlassen, aus dem Wörterbuch 20 Vervollständigungskandidaten
beginnend mit dem ausgewählten
Zeichen zu erhalten, in denen die Anzahl der Zeichen wenigstens
so groß ist wie
die vom Benutzer aus dem speziellen Anzeigebereich ausgewählte Zahl.
Bei einer anderen Variation kann das Dateneingabesystem 26 so
programmiert werden, daß wenn
der Benutzer eine Zahl aus dem speziellen Anzeigebereich berührt und
die Zeigevorrichtung abhebt, das Dateneingabesystem 26 eine Liste
von Vervollständigungskandidaten
abruft, bei der die Anzahl der Zeichen gleich der auf dem speziellen
Anzeigebereich berührten
ausgewählten
Zahl ist. Bei einer weiteren Variation kann das Dateneingabesystem 26 programmiert
werden, um Vervollständigungskandidaten
mit wenigstens eines vorbestimmten Länge zu erhalten, wenn der Benutzer
mit der Zeigevorrichtung eine Zahl aus dem speziellen Anzeigebereich
auswählt,
um eine erhebliche Strecke in eine vorbestimmte Richtung weist (beispielsweise
nach rechts), die Zeigevorrichtung abhebt, auf einem Zeichen auf
der digitalen Tastatur aufsetzt und dann auf diesem Zeichen verweilt.
Bei einer weiteren Variation kann ein anderer spezieller Anzeigebereich in
die digitale Tastatur 28 aufgenommen werden, anhand dessen
die Kategorie der Vervollständigungskandidaten
eingeengt werden kann. In diesem weiteren speziellen Anzeigebereich
kann das Dateneingabesystem 26 beispielsweise programmiert
werden, allgemeine Identifizierer für Substantive, Verben, Adjektive
usw. anzuzeigen. Falls vom Benutzer ein allgemeiner Identifizierer
ausgewählt
wird, bevor die interaktive Suchliste 30 aktiviert wird,
wird das Dateneingabesystem 26 bei dieser Variation programmiert, das
Kandidatenvorhersagesystem 32 zu veranlassen, Vervollständigungskandidaten
zu erhalten, die im Wörterbuch 20 als
in die Kategorie fallend identifiziert sind, die dem ausgewählten Identifizierer
zugeordnet sind (beispielsweise nur Substantive oder nur Verben).
Diese Variation kann mit den anderen hier angegebenen Aspekten kombiniert
werden, um den Benutzer beim Erhalten von Vervollständigungskandidaten
aus einer oder mehreren im Wörterbuch 20 identifizierten
spezifischen Kategorien zu unterstützen.
-
Bei einem anderen Aspekt kann eine
gegenständliche
Taste oder ein gegenständlicher
Schalter, der sich auf der Personalcomputervorrichtung oder an der
Zeigevorrichtung und innerhalb einer leichten Erreichbarkeit durch
die Finger oder die Hand eines Benutzers befindet, verwendet werden,
um bestimmte Merkmale des Dateneingabesystems 26 leicht
zu aktivieren. Wenn beispielsweise die Taste auf der Personalcomputervorrichtung
gedrückt
wird, kann das Dateneingabesystem 26 programmiert werden, die
digitale Tastatur 28 bei jedem Herunterdrücken unsichtbar
oder sichtbar zu machen. Alternativ kann das Dateneingabesystem 26 programmiert
werden, zu erkennen, daß falls
die Taste oder der Schalter gedrückt
wird, die interaktive Suchliste 30, wenn sie angezeigt
wird, nur bestimmte Typen von Vervollständigungskandidaten anzeigen
sollte, die innerhalb des Wörterbuchs
verfügbar
sind. Wenn bei einem anderen Beispiel die Taste heruntergedrückt wird,
kann das Dateneingabesystem 26 programmiert werden, die
interaktive Suchliste 30 zu aktivieren. Wenn bei einem
anderen Beispiel die Taste auf der Personalcomputervorrichtung gedrückt wird,
kann das Dateneingabesystem 26 programmiert werden, zu
fordern, daß die
interaktive Suchliste 30 Vervollständigungskandidaten anzeigt,
die eine bestimmte minimale Zeichenlänge aufweisen.
-
Durch die
Nähe ausgelöste Anzeige
der digitalen Tastatur
-
Bei einer anderen Variation wird
ein Zeigestift (oder ein Stift oder ein Finger oder eine vergleichbare
handgehaltene Zeigevorrichtung) zusammen mit einer Näherungserfassungs-Eingabefläche verwendet.
Näherungserfassungs-Eingabeflächen können die
Nähe einer
Zeigevorrichtung zur Eingabefläche
sowie den Ort der Zeigevorrichtung über die Näherungserfassungs-Eingabefläche erfassen.
Die Näherungserfassungs-Eingabefläche kann
auch den Abstand und den Winkel erfassen, in dem eine Zeigevorrichtung
in bezug auf die Eingabefläche
gehalten wird. Wenn eine Näherungserfassungs-Eingabefläche verwendet
wird, kann das Dateneingabesystem 26 programmiert werden,
die digitale Tastatur 28 (oder eine andere digitale Tastatur)
anzuzeigen, wobei der Cursor darüber
angezeigt wird, wenn sich der Zeigestift innerhalb eines festgelegten
vorbestimmten Abstands der Näherungs erfassungs-Eingabefläche nähert. Die
Näherungserfassungs-Eingabefläche erfaßt die Position
des Zeigestifts über
der Näherungserfassungs-Eingabefläche, wenn
sich der Zeigestift innerhalb des festgelegten vorbestimmten Abstands
befindet. Wenn der Benutzer die Zeigevorrichtung über die
Näherungserfassungs-Eingabefläche bewegt,
bewegt sich der Cursor entsprechend. Die digitale Tastatur 28 kann
bei manchen Ausführungsformen
direkt unterhalb des Zeigestifts angezeigt werden oder bei anderen
Ausführungsformen
fern vom Zeigestift angezeigt werden. Wenn der Zeigestift weiter
von der Näherungserfassungs-Eingabefläche fortbewegt
wird als der festgelegte vorbestimmte Abstand, wird das Dateneingabesystem 26 programmiert,
die digitale Tastatur 28 von der graphischen Benutzerschnittstelle 34 zu
verbergen (oder zu löschen).
Diese Variation ermöglicht
es, daß der
gesamte Bildschirm zum Anzeigen von Text verwendet wird, während die
digitale Tastatur 28 verborgen ist. Diese Variation verhindert
auch ein Überladen
des Bildschirms, indem die digitale Tastatur 28 nur dann angezeigt
wird, wenn herausgefunden wird, daß der Zeigestift innerhalb
des festgelegten vorbestimmten Abstands von der Näherungserfassungs-Eingabefläche liegt.
Gleichzeitig kann der Benutzer schnell und intuitiv zum Hinzufügen von
Text oder zum Löschen von
Text unter Verwendung der digitalen Tastatur 28 zurückkehren,
indem der Zeigestift innerhalb des festgelegten vorbestimmten Abstands
von der Näherungserfassungs-Eingabefläche gebracht
wird. Dementsprechend wird die digitale Tastatur 28 angezeigt, wenn
die den Zeigestift steuernde Hand des Benutzers (die "tippende Hand") in eine natürliche Position für das Fortsetzen
der Text- und Dateneingabe gebracht worden ist. Der Ort, an dem
die digitale Tastatur 28 auf der graphischen Benutzerschnittstelle 34 angezeigt
wird, kann sich in der Nähe befinden
und möglicherweise
der vom Benutzer erzeugten Textlinie folgen, um es dem Auge zu ermöglichen,
gleichzeitig die digitale Tastatur 28 und den eingegebenen Text
zu verfolgen. Bei einer anderen Variation kann die digitale Tastatur 28 am
selben Ort wie der Zeigestift angezeigt werden. Bei einer anderen
Variation wird die digitale Tastatur 28 programmiert, direkt
unterhalb oder oberhalb der Textlinie, die der Benutzer auf einer
Personalcomputervorrichtung erzeugt oder editiert, angezeigt zu
werden. Diese Variationen ermöglichen
es dem Benutzer auch, die digitale Tastatur 28 und den
Text gleichzeitig zu betrachten.
-
Falls der Benutzer als eine Alternative
zu der vorstehenden Variation den Zeigestift (oder den Stift oder
den Finger) verwenden möchte,
um den Cursor innerhalb des zuvor getippten Texts zu repositionieren,
kann das Dateneingabesystem 26 programmiert werden, es
zu ermöglichen,
daß der
Cursor innerhalb des zuvor getippten Texts mit dem Zeigestift repositioniert
wird, während
sich der Zeigestift innerhalb des minimalen Abstands befindet, vorausgesetzt
daß erfaßt wird,
daß sich
der Zeigestift der Näherungserfassungs-Eingabefläche von
einer bestimmten Seite der Eingabefläche (beispielsweise der rechten
Seite der Näherungserfassungs-Eingabefläche) nähert. Sobald
der Cursor repositioniert wurde, kann sich der Benutzer der Näherungserfassungs-Eingabefläche aus
einer anderen Richtung (beispielsweise von oben) nähern, um
die Anzeige der digitalen Tastatur 28 auszulösen, um
bei der weiteren Texteingabe und -modifikation zu helfen.
-
Gemäß der ersten Ausführungsform
ist das Dateneingabesystem 26 anwendungsunabhängig und
kommuniziert über
eine API mit Anwendungen. Gemäß einer
alternativen Ausführungsform
kann das Dateneingabesystem 26 in eine Anwendung eingebettet
sein.
-
Es sei bemerkt, daß viele
der Aspekte der vorliegenden Erfindung auf mehrere Typen digitaler Tastaturen
und Tastatur-Layouts, einschließlich
traditioneller Tastatur-Layouts
und rechteckiger Tastatur-Layouts, angewendet werden können. Es
sei auch bemerkt, daß die
digitale Tastatur andere Symbole enthalten kann, die eine Sprache
codieren könnten.
Ein Beispiel hiervon wäre
eine digitale Tastatur, die Bereiche enthält, welche die beim Schreiben
einer orientalischen Sprache verwendeten Striche darstellen. Der
Benutzer würde
die Striche auswählen, indem
er auf sie zeigt, und die Zeichen würden anhand der Striche konstruiert
werden.