Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:16.0:FactoryCandidates
dasher
gnome-doc-utils-depr.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File gnome-doc-utils-depr.patch of Package dasher
diff -ur -urN dasher-DASHER_5_0_0_beta/configure.ac dasher-DASHER_5_0_0_beta.gdu/configure.ac --- dasher-DASHER_5_0_0_beta/configure.ac 2016-04-08 01:17:00.000000000 +0300 +++ dasher-DASHER_5_0_0_beta.gdu/configure.ac 2019-09-10 16:08:08.603595273 +0300 @@ -430,14 +430,7 @@ AC_SUBST(GTKBUILD_CFLAGS) AC_SUBST(GTKBUILD_LIBS) -AC_MSG_CHECKING([for gnome-doc-utils]) -dnl Avoid default action which is to complain if not found -GNOME_DOC_INIT([0.9.0],[gdu_cv_have_gdu=yes],[gdu_cv_have_gdu=no]) -AC_MSG_RESULT($gdu_cv_have_gdu) - -if test x"$WITHGNOME" = xtrue -a x"$gdu_cv_have_gdu" = xno ; then - AC_MSG_ERROR([gnome-doc-utils not found!]) -fi +YELP_HELP_INIT dnl XXX PRLW How is this better than the standard dnl gdu_cv_have_gdu && enable_scrollkeeper ? diff -ur -urN dasher-DASHER_5_0_0_beta/Data/Help/Gnome/C/dasher.xml dasher-DASHER_5_0_0_beta.gdu/Data/Help/Gnome/C/dasher.xml --- dasher-DASHER_5_0_0_beta/Data/Help/Gnome/C/dasher.xml 2016-04-08 01:17:00.000000000 +0300 +++ dasher-DASHER_5_0_0_beta.gdu/Data/Help/Gnome/C/dasher.xml 1970-01-01 02:00:00.000000000 +0200 @@ -1,1309 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"> -<article id="index"> - <articleinfo> - <title>Dasher Manual</title> - <corpauthor role="maintainer">The Dasher Project</corpauthor> - <copyright> - <year>2010</year> - <holder>The Dasher Project</holder> - </copyright> - <legalnotice> - <para>Permission is granted to make and distribute verbatim copies of this manual provided the - copyright notice and this permission notice are preserved on all copies.</para> - <para>Permission is granted to copy and distribute modified versions of this manual under the - conditions for verbatim copying, provided that the entire resulting derived work is - distributed under the terms of a permission notice identical to this one.</para> - <para>Permission is granted to copy and distribute translations of this manual into another - language, under the above conditions for modified versions, except that this permission - notice may be stated in a translation approved by the Free Software Foundation.</para> - <para>UNIX is a trademark of X/Open Group.</para> - <para>Linux is a trademark of Linus Torvalds.</para> - <para>X Window System is a trademark of X Consortium, Inc.</para> - <para>Windows is a trademark of Microsoft Corp.</para> - <para>Macintosh and Apple are trademarks of Apple Computer, Inc.</para> - <para>All other trademarks are property of their respective owners.</para> - </legalnotice> - <abstract role="description"> - <para>Dasher is an accessible text entry application that uses pointing gestures - rather than typing. It is designed to be fast while fun to use.</para> - </abstract> - <revhistory> - <revision> - <revnumber>1.0.0</revnumber> - <date>2004-02-08</date> - </revision> - <revision> - <revnumber>1.1.0</revnumber> - <date>2006-03-31</date> - </revision> - <revision> - <revnumber>1.2.0</revnumber> - <date>2006-07-11</date> - </revision> - <revision> - <revnumber>1.2.1</revnumber> - <date>2006-09-02</date> - </revision> - </revhistory> - </articleinfo> - - <sect1 id="intro"> - <title>Introduction</title> - <para><application>Dasher</application> is an information-efficient text-entry interface, driven - by natural continuous pointing gestures. Dasher is a competitive text-entry system wherever a - full-size keyboard cannot be used - for example on a palmtop or wearable computer, or when - operating a computer one-handed (by joystick, touchscreen or mouse) or zero-handed (i.e. by - head-mouse or eyetracker). This document describes version 4.2.0 of - <application>Dasher</application>.</para> - <para><application>Dasher</application> can be started by selecting - <guimenuitem>Dasher</guimenuitem> from the <guisubmenu>Accessibility </guisubmenu> submenu of - the <guimenu>Main Menu</guimenu>, or by running the command <command>dasher</command> on the - command line.</para> - </sect1> - <sect1 id="whatsnew"> - <title>What's New</title> - - <sect2> - <title>New features In version 4.2</title> - - - <para> There is an automatic speed control, which will speed up Dasher when it senses you are - able to go faster. </para> - - <para> There is a new socket interface allowing Dasher to listen to head-trackers or - gaze-trackers or EEG-interfaces without going through the mouse.</para> - - <para> There are several `button modes' for people who want to drive Dasher using one, two, - three, or four switches.</para> - - <para> There is a `click mode', for people who like to point where they want to go, and click - to take a single step in that direction. This is aimed at beginners, in particular</para> - - - </sect2> - <sect2> - <title>What's coming in version 4.4</title> - <para> We will implement a game-mode for Dasher: this will help novices learn to write. A - teaching hand will guide the novice when he goes astray, and novices who write fast without - needing much guidance will win lots of points. </para> - - <para> New language models will be added, which will make predictions at the word level as - well as the letter level.</para> - - <para>Japanese and Chinese will be fully supported. </para> - - <para>The Dasher team also hopes to create a free web-cam-based head tracker and gaze tracker, - `FreeVIM', by December 2006. </para> - </sect2> - </sect1> - <sect1 id="basics"> - <title>Dasher Basics</title> - <para>Dasher is an information-efficient text-entry interface, driven by natural continuous - pointing gestures. Dasher is a competitive text-entry system wherever a full-size keyboard - cannot be used - for example, <itemizedlist> - <listitem> - <para>On a palmtop computer;</para> - </listitem> - <listitem> - <para>on a wearable computer;</para> - </listitem> - <listitem> - <para>when operating a computer one-handed, by joystick, touchscreen, trackball, or - mouse;</para> - </listitem> - <listitem> - <para>when operating a computer with zero hands (i.e., by head-mouse or by - eyetracker).</para> - </listitem> - </itemizedlist> The eyetracking version of Dasher allows an experienced user to write text as - fast as normal handwriting - 29 words per minute; using a mouse, experienced users can write - at 39 words per minute.</para> - - <para> Dasher can be used to write efficiently in any language. </para> - - <para>Dasher is fast and fun to learn. - <!--TODO - write this section (See what - users round the world say, in section \ref{sec.users}.)--> - </para> - - <para>Dasher is <emphasis>free software</emphasis>. It's distributed under the same license as - GNU/Linux, the GPL. </para> - - <sect2> - <title>How does Dasher work?</title> - - <blockquote> - <attribution>Financial Times, 5th February 2002</attribution> - <para>Dasher is like an arcade game: `Attack of the killer alphabets', perhaps.</para> - </blockquote> - - <para>Dasher is a zooming interface. You point where you want to go, and the display zooms in - wherever you point. The world into which you are zooming is painted with letters, so that - any point you zoom in on corresponds to a piece of text. The more you zoom in, the longer - the piece of text you have written. You choose what you write by choosing where to zoom.</para> - - <para>To make the interface efficient, we use the predictions of a language model to determine - how much of the world is devoted to each piece of text. Probable pieces of text are given - more space, so they are quick and easy to select. Improbable pieces of text (for example, - text with spelling mistakes) are given less space, so they are harder to write. The language - model learns all the time: if you use a novel word once, it is easier to write next time.</para> - - - - <para>A big advantage of Dasher over other predictive text-entry interfaces that offer - word-completions to the user is that it is <emphasis>mode-free</emphasis>: the user does not - need to switch from a writing mode to an <quote>accept-model-predictions</quote> mode.</para> - - <para>Another advantage is that it is easy to train the model on any writing style: simply - load up an example file, then write away!</para> - - <para> It's quite hard to convey in words what Dasher looks like, so please visit <ulink - url="http://www.inference.phy.cam.ac.uk/dasher/" type="http">http://www.inference.phy.cam.ac.uk/dasher/</ulink> to see movies.</para> - - </sect2> - <sect2> - <title>Dasher explained -- the library analogy</title> - <para> Imagine <emphasis>a library containing all possible books</emphasis>, ordered - alphabetically on a single shelf. Books in which the first letter is <quote>a</quote>; are - at the left hand side. Books in which the first letter is <quote>z</quote>; are at the - right. In picture (i) below, the shelf is shown vertically with <quote>left</quote>; (a) at - the top and ,<quote>right</quote>; (z) at the bottom. The first book in the - <quote>a</quote>; section reads - <quote><computeroutput>aaaaaaaaaaaa</computeroutput>...</quote>; somewhere to its right are - books that start <quote><computeroutput>all good things must come to an - end</computeroutput>...</quote>; a tiny bit further to the right are books that start - <quote><computeroutput>all good things must come to an - enema</computeroutput>...</quote>.</para> - - - <para> When someone writes a piece of text, their choice of the text string can be viewed as a - choice of a book from this library of all books - the book that contains exactly the chosen - text. How do they choose that book? Let's imagine they want to write - <quote><computeroutput>all good things</computeroutput>...</quote>;</para> - <figure> - <title>The library of all books.</title> - <mediaobject> - <imageobject> - <imagedata fileref="figures/a-z.gif"/> - </imageobject> - <imageobject> - <imagedata fileref="figures/aa-az.gif"/> - </imageobject> - <imageobject> - <imagedata fileref="figures/ala-alz.gif"/> - </imageobject> - </mediaobject> - </figure> - <para>First, they walk into the <quote> - <computeroutput>a</computeroutput> - </quote>; section of the library. There, they are confronted by books starting <quote> - <computeroutput>aa</computeroutput> - </quote>;, <quote> - <computeroutput>ab</computeroutput> - </quote>, <quote><computeroutput>ac</computeroutput>...</quote>; <quote> - <computeroutput>az</computeroutput> - </quote>; [Picture (ii)]. Looking more closely at the <quote> - <computeroutput>al</computeroutput> - </quote>; section, they can find books starting <quote> - <computeroutput>ala</computeroutput> - </quote>;, <quote>;<computeroutput>alb</computeroutput></quote>;,...; <quote> - <computeroutput>alz</computeroutput> - </quote>; [Picture (iii)].</para> - - <para> By looking ever more closely at the shelf, the writer can find the book containing the - text he wishes to write. Thus writing can be described as <emphasis>zooming in on an - alphabetical library, steering as you go</emphasis>.</para> - - <para> This is exactly how Dasher works, except for one crucial point: <emphasis>we alter the - SIZE of the shelf space devoted to each book in proportion to the probability of the - corresponding text.</emphasis> For example, not very many books start with an <quote> - <computeroutput>x</computeroutput> - </quote>;, so we devote less space to <quote><computeroutput>x</computeroutput>...;</quote>; - books, and more to the more plausible books, thus making it easier to find books that - contain probable text.</para> - - <para> Here is the corresponding sequence of pictures of the library in Dasher. (The character - <quote>_</quote>; denotes the space character.)</para> - <figure> - <title>The library of all books.</title> - <mediaobject> - <imageobject> - <imagedata fileref="figures/a-z.gif"/> - </imageobject> - <imageobject> - <imagedata fileref="figures/aa-az.gif"/> - </imageobject> - <imageobject> - <imagedata fileref="figures/ala-alz.gif"/> - </imageobject> - </mediaobject> - </figure> - <!-- -\begin{center} -\begin{tabular}{ccc} -\mbox{\psfig{figure=images/a-z.m.gif.50.ps}}& -\mbox{\psfig{figure=images/aa-az.m.gif.50.ps}}& -\mbox{\psfig{figure=images/ala-alz.m.gif.50.ps}}\\ -(i)&(ii)&(iii)\\ -\end{tabular} -\end{center} - --> - - <para> Dasher can be trained on examples of any writing style, and it learns all the time, - picking up your personal turns of phrase.</para> - - <para>The image below shows the state of the Dasher interface while the user is writing the - word `objection'; alternative words that could easily be written at this point include - `objective', `objects_', and `object_oriented'.</para> - <figure> - <title>Writing `objection' in Dasher.</title> - <mediaobject> - <imageobject> - <imagedata fileref="figures/object.gif"/> - </imageobject> - </mediaobject> - </figure> - - <para> If you find Dasher hard to imagine based on these static pictures, please take a look - at the movies on <ulink url="http://www.inference.phy.cam.ac.uk/dasher/" type="http">http://www.inference.phy.cam.ac.uk/dasher/</ulink>.</para> - - - <!--% When you try Dasher for the first time, please read the tips for novices.--> - </sect2> - <sect2> - <title>Tips for novices</title> - <para>Don't give up if it takes you a minute or two to get started - within ten minutes, - you'll be blazing along. It's a lot like driving a car. You should <emphasis>start by - driving cautiously</emphasis>. If you can't tell where you are going, <emphasis>stop - going</emphasis>. Indeed, you will probably learn Dasher fastest if you come to it with - car-driving analogies in mind, rather than standard computer analogies. For example, the way - navigation works is not by DRAGGING but by STEERING: if cars worked like windows computers, - you would have to <quote>grab</quote> the piece of road you want, then ,<quote>drag</quote>; - it towards you; but in a car, when you wish to drive right, you POINT RIGHT with your - steering wheel. Dasher does not work by dragging either. <emphasis>Do not try to grab things - and drag them. Just decide where you want to go, and point there.</emphasis></para> - - <para> - <emphasis>The single most important concept</emphasis> that a novice user needs to - understand is that one should always continue <emphasis>inside</emphasis> the text written - so far: to select the book that contains <quote>all</quote>; as its first word, one does - <emphasis>not</emphasis> enter the <quote>a</quote>; section of the library, then exit the - <quote>;a</quote>; section, and enter the ,<quote>l</quote>; section. One enters the - <quote>a</quote>; section, then finds the <quote>al</quote>; section that is - <emphasis>within</emphasis> the <quote>a</quote>; section, then enters the - <quote>all</quote>; section <emphasis>within</emphasis> the <quote>al</quote>; section.</para> - - <para> It's just like finding a name in a phonebook. To find <quote> - <computeroutput>Alison</computeroutput> - </quote>;, you don't go to the <quote> - <computeroutput>A</computeroutput> - </quote>; section of the phonebook, then the - <quote>;<computeroutput>L</computeroutput></quote>; section: you go into the <quote> - <computeroutput>A</computeroutput> - </quote>; section, then find <emphasis>within it</emphasis> the <quote> - <computeroutput>Al</computeroutput> - </quote>; section, and so forth. Once you are in the <quote> - <computeroutput>Al</computeroutput> - </quote>; section, you never leave it.</para> - - <para><emphasis>The second most important idea</emphasis> is that what you have written - depends <emphasis>only</emphasis> on where you finally end up in the library, not on how you - got there; so there is no need to steer accurately on your way to your destination. - <emphasis>You are allowed to cut corners.</emphasis> (For example, in the previous image, - if you wanted to write `objects_are', it would be fine to move the mouse straight towards - the letters `are', even if this takes the mouse across the unwanted grey `i' square.)</para> - - - - - <para><emphasis>Common errors.</emphasis> Often, a beginner who is trying to find a particular - letter will drive the display forwards fast while hunting for the letter. The rule of the - road for Dasher users is just like that for car-drivers: don't drive forwards until you have - identified where you want to go! So, after you have found the first letter of your sentence, - and zoomed towards it, please <emphasis>SLOW DOWN and don't proceed any further into this - first letter's square until you have figured out where you should be steering - towards</emphasis>. Your next letter <emphasis>is</emphasis> there, immediately inside the - first square you have entered. The letters are ordered alphabetically. If you can't see your - letter, figure out where it must be on the basis of the letters you <emphasis>can</emphasis> - see. Then point to the right place and enter the second letter's square.</para> - </sect2> - <sect2> - <title>Example</title> - <figure id="figHad1"> - <title>Writing <quote> - <computeroutput>I once had a whim</computeroutput> - </quote>;. Where should the user steer now?</title> - <mediaobject> - <imageobject> - <imagedata fileref="figures/exampleHad2.png"/> - </imageobject> - </mediaobject> - </figure> - <para> Imagine you want to write `<computeroutput>I once had a whim</computeroutput>'. You - write `<computeroutput>I once ha...</computeroutput>' and the Dasher display looks like - <xref linkend="figHad1"/>. You want to write `<computeroutput>had</computeroutput>'. What - should you do? There are lots of letter <computeroutput>d</computeroutput>s on the screen, - and all of them are rather small. The five arrows in <xref linkend="figHad1"/> show some of - these <computeroutput>d</computeroutput>s. The purple arrow points to a - <computeroutput>d</computeroutput> that we can't see yet, but we know it must be there - because we can see `<computeroutput>a</computeroutput>', - `<computeroutput>b</computeroutput>', and `<computeroutput>c</computeroutput>' above it.</para> - <figure id="figHad2"> - <title>Some alternative letter <computeroutput>d</computeroutput>s, with a beginner's error - highlighted</title> - <mediaobject> - <imageobject> - <imagedata fileref="figures/exampleHad2a.png"/> - </imageobject> - </mediaobject> - </figure> - <para> A common beginner's mistake is to keep rushing forward and spot - <emphasis>any</emphasis> of these letter <computeroutput>d</computeroutput>s, and zoom into - it. For example, <xref linkend="figHad3"/> shows what happens if the user zooms towards the - <computeroutput>d</computeroutput> highlighted in <xref linkend="figHad2"/>.</para> - <figure id="figHad3"> - <title>What happens when you select the wrong <computeroutput>d</computeroutput></title> - <mediaobject> - <imageobject> - <imagedata fileref="figures/exampleHad3a.png"/> - </imageobject> - </mediaobject> - </figure> - - - <para>If you go in this <computeroutput>d</computeroutput>, you are writing `<computeroutput>I - once </computeroutput><emphasis>head</emphasis><computeroutput>...</computeroutput>'. The - other two <computeroutput>d</computeroutput>s labelled by red arrows (in <xref - linkend="figHad1"/>) correspond to writing `<computeroutput>I once - </computeroutput><emphasis>heard</emphasis><computeroutput>...</computeroutput>' and - `<computeroutput>I once - </computeroutput><emphasis>hedge</emphasis><computeroutput>...</computeroutput>'.</para> - - - <para> It is crucial to understand that there is only one correct - <computeroutput>d</computeroutput>, namely the <computeroutput>d</computeroutput> that is - immediately inside the blue box corresponding to letter `<computeroutput>a</computeroutput>' - in the sequence `<computeroutput>I once ha</computeroutput>'. That blue box is highlighted - in <xref linkend="figHad4"/>.</para> - <figure id="figHad4"> - <title>The correct letter <computeroutput>d</computeroutput> is the one marked by the green - arrow. This example illustrates the rule <quote>always keep going - <emphasis>inside</emphasis> the box that you want</quote>; in this case, the blue box - associated with the letter <computeroutput>a</computeroutput> of the word <quote> - <computeroutput>had</computeroutput> - </quote>; </title> - <mediaobject> - <imageobject> - <imagedata fileref="figures/exampleHad4.png"/> - </imageobject> - </mediaobject> - </figure> - - <para>If you ever leave that blue box (as we did in <xref linkend="figHad3"/>) then we lose - the letter `<computeroutput>a</computeroutput>'.</para> - </sect2> - - <sect2> - <title>Summary</title> - <para> - <emphasis>Don't click. Don't drag. And don't speed.</emphasis> - </para> - </sect2> - - <sect2> - <title>What do the colours mean?</title> - <para> In the English-language desktop version 3 of Dasher, <itemizedlist> - <listitem> - <para><emphasis>white</emphasis> squares contain the space characters (always placed at - the bottom of the alphabet);</para> - </listitem> - - <listitem> - <para>a special <emphasis>yellow</emphasis> box contains the upper case characters - [A-Z];</para> - </listitem> - - <listitem> - <para>a <emphasis>red</emphasis> box contains numerals [0-9] (if the full alphabet is - enabled);</para> - </listitem> - - <listitem> - <para>a <emphasis>green</emphasis> box contains punctuation characters (with the - characters most similar to the space character [.,;:-] placed at the bottom, next to - the <emphasis>white</emphasis> space character. Within the punctuation section, - letters with similar roles are coloured similarly: punctuation characters similar to - the period [.,;:-] are coloured slate-blue;</para> - </listitem> - <listitem> - <para>the other colours are included simply to discriminate the squares from each - other.</para> - </listitem> - <listitem> - <para>In languages with accents (grave, acute, circumflex, etc), the accents are - displayed in an <emphasis>orange</emphasis> box.</para> - </listitem> - <listitem> - <para> In the Japanese version of Dasher, colours are used to distinguish the different - hiragana groups (eg ka,ki,ku,ke,ko are orange).</para> - </listitem> - <listitem> - <para> In the Korean version of Dasher, three different colours are used to distinguish - initial consonants, vowels, and terminal consonants.</para> - </listitem> - </itemizedlist> - </para> - <para> You can alter the colour scheme by editing the <computeroutput>colour</computeroutput> - and <computeroutput>alphabet</computeroutput> xml files, as described in <xref - linkend="personalising"/>.</para> - </sect2> - <sect2> - <title>How to start dasher (version 4)</title> - <para> Set the dasher application running; when the dasher window comes up, either click the - left mouse button or press the space bar to set it going. [One of these two will work.] - Repeat this action (click or space), when you are finished, to stop dasher from dashing. - Your computer's mouse controls Dasher.</para> - - <para> Adjust the speed slider to fix the maximum speed Dasher will zoom at. A speed of 1 is - good for a beginner, increasing to 2 after 5 minutes' practice, and to 4 when you are - expert.</para> - </sect2> - <sect2> - <title>How to start dasher (version 2) on pocket PC</title> - <para> Install, run (wait a few seconds for it to load up the training file), then touch the - screen with the stylus to make dasher move.</para> - - <para>There are three special strongly-coloured squares in this version of Dasher, coloured - yellow, red (in some releases only), and green; all three squares do not produce any - character; these squares indicate sub-groupings of the alphabet. (Uppercase Alphabet, - Numerals (in some releases only), and Punctuation.)</para> - </sect2> - </sect1> - <!--<sect1 id="usage"> - <title>Using Dasher</title> - <sect2 id="menubar"> - <title>Menus</title> - <para> The menu bar, located at the top of the <interface>Main Window</interface>, provides - the following commands: </para> - <variablelist> - <varlistentry> - <term> - <guimenu>File</guimenu> - </term> - <listitem> - <para>This menu contains the following commands: <itemizedlist> - <listitem> - <para> - <guimenuitem>New</guimenuitem> - </para> - </listitem> - <listitem> - <para> - <guimenuitem>Open</guimenuitem> - </para> - </listitem> - <listitem> - <para> - <guimenuitem>Save</guimenuitem> - </para> - </listitem> - <listitem> - <para> - <guimenuitem>Save As</guimenuitem> - </para> - </listitem> - <listitem> - <para><guimenuitem>Append to file</guimenuitem> this command can be used to append - the current Dasher buffer to an existing text file.</para> - </listitem> - <listitem> - <para><guimenuitem>Import training text</guimenuitem> this command can be used to - add the contents of an existing text file to Dasher's language model.</para> - </listitem> - <listitem> - <para> - <guimenuitem>Quit</guimenuitem> - </para> - </listitem> - </itemizedlist> - </para> - </listitem> - </varlistentry> - <varlistentry> - <term> - <guimenu>Edit</guimenu> - </term> - <listitem> - <para> This menu contains the following commands: <itemizedlist> - <listitem> - <para> - <guimenuitem>Cut</guimenuitem> - </para> - </listitem> - <listitem> - <para> - <guimenuitem>Copy</guimenuitem> - </para> - </listitem> - <listitem> - <para> - <guimenuitem>Paste</guimenuitem> - </para> - </listitem> - <listitem> - <para> - <guimenuitem>Copy All</guimenuitem> - </para> - </listitem> - </itemizedlist> - </para> - </listitem> - </varlistentry> - <varlistentry> - <term> - <guimenu>Options</guimenu> - </term> - <listitem> - <para> This menu contains the following commands: <itemizedlist> - <listitem> - <para><guimenuitem>Preferences</guimenuitem>, which launches the <link - linkend="prefs"> - <interface>Preferences Dialog</interface> - </link></para> - </listitem> - <listitem> - <para><guimenuitem>Edit font</guimenuitem> alters the font used in the edit - box.</para> - </listitem> - <listitem> - <para><guimenuitem>Dasher font</guimenuitem> alters the size of the moving - characters.</para> - </listitem> - <listitem> - <para> - <guimenuitem>Dasher font size</guimenuitem> - </para> - </listitem> - <listitem> - <para><guimenuitem>Enter text into other windows</guimenuitem> this causes Dasher - to enter text into whichever window is selected.</para> - </listitem> - <listitem> - <para><guimenuitem>Control mode</guimenuitem> this causes an extra node to appear - at the bottom of the alphabet. Here, you can edit text directly from within - Dasher, cause Dasher to speak text that you have entered and stop or pause - Dasher.</para> - </listitem> - </itemizedlist> - </para> - </listitem> - </varlistentry> - <varlistentry> - <term> - <guimenu>Help</guimenu> - </term> - <listitem> - <para>This menu contains the following commands: <itemizedlist> - <listitem> - <para><guimenuitem>About</guimenuitem> shows basic information about - <application>Dasher</application>, such as author's name and version number. - </para> - </listitem> - </itemizedlist> - </para> - </listitem> - </varlistentry> - </variablelist> - </sect2> - - <sect2 id="prefs"> - <title>Customization</title> - <para> To change default settings, select <guimenuitem>Preferences</guimenuitem> command in - <guimenu>Settings</guimenu> menu. This launches the <interface>Preferences - dialog</interface>, shown in <xref linkend="prefs1"/>, <xref linkend="prefs2"/>, <xref - linkend="prefs3"/>, <xref linkend="prefs4"/> and <xref linkend="prefs5"/>. </para> - <figure id="prefs1"> - <title>"Alphabet" dialog</title> - <screenshot> - <screeninfo>Preferences dialog</screeninfo> - <graphic fileref="figures/prefs1.png" format="PNG" srccredit="ME"/> - </screenshot> - </figure> - <para> Dasher has support for many languages, and the choice of which language to write in is - made with this dialog. Note that some languages (for example, Hiragana, Korean and the - International Phonetic Alphabet) may require fonts that you do not have installed. For - information on creating your own alphabet files, see the <ulink - url="http://www.inference.phy.cam.ac.uk/dasher/" type="http">Dasher website</ulink>. </para> - <figure id="prefs2"> - <title>"Colour" dialog</title> - <screenshot> - <screeninfo>Preferences dialog</screeninfo> - <graphic fileref="figures/prefs2.png" format="PNG" srccredit="ME"/> - </screenshot> - </figure> - <para> Dasher has support for different colour schemes. The 'Default' colour scheme is a - simple rotation of colours that should work with any language. Enhanced colour schemes may - be used for languages with logical groupings (such as Hiragana or Korean) or to increase - contrast. </para> - <figure id="prefs3"> - <title>"Control" dialog</title> - <screenshot> - <screeninfo>Preferences dialog</screeninfo> - <graphic fileref="figures/prefs3.png" format="PNG" srccredit="ME"/> - </screenshot> - </figure> - <para> - <itemizedlist> - <listitem> - <para><guimenuitem>One dimensional mode</guimenuitem> maps the Y coordinate of the mouse - position to an X/Y coordinate, for use with one-dimensional input methods.</para> - </listitem> - <listitem> - <para><guimenuitem>Eyetracker mode</guimenuitem> optimisations for eyetrackers - specifically, makes Dasher behave as in one-dimensional mode near the right hand edge - of the screen.</para> - </listitem> - <listitem> - <para><guimenuitem>Start on left mouse button</guimenuitem> the left mouse button starts - and stops Dasher.</para> - </listitem> - <listitem> - <para><guimenuitem>Start on space bar</guimenuitem> the space bar starts and stops - Dasher.</para> - </listitem> - <listitem> - <para><guimenuitem>Start with mouse position</guimenuitem> when Dasher is paused, a red - box appears. Hold the cursor inside the red box until a yellow box appears. Hold the - cursor inside the yellow box. Dasher will then start..</para> - </listitem> - <listitem> - <para><guimenuitem>Copy all on stop</guimenuitem> when stopped, Dasher will copy all - text to the clipboard automatically.</para> - </listitem> - <listitem> - <para><guimenuitem>Speak on stop</guimenuitem> when stopped, Dasher will speak newly - entered text automatically.</para> - </listitem> - <listitem> - <para><guimenuitem>Pause outside window</guimenuitem> Dasher will pause if the mouse - pointer moves outside its window.</para> - </listitem> - </itemizedlist> - </para> - <figure id="prefs4"> - <title>"View" dialog</title> - <screenshot> - <screeninfo>Preferences dialog</screeninfo> - <graphic fileref="figures/prefs4.png" format="PNG" srccredit="ME"/> - </screenshot> - </figure> - <para> - <itemizedlist> - <listitem> - <para><guimenuitem>Orientation</guimenuitem> alters the direction that the text moves - in. If set to "Alphabet default", the alphabet file will choose the - appropriate direction for the alphabet.</para> - </listitem> - <listitem> - <para><guimenuitem>Show toolbar</guimenuitem> you can hide Dasher's toolbar if you wish. - Calling dasher with the '-o' switch will open a reduced-options version of dasher, - designed for entry into other applications.</para> - </listitem> - <listitem> - <para><guimenuitem>Show speed slider</guimenuitem> enable/disable the speed - slider.</para> - </listitem> - <listitem> - <para><guimenuitem>Show mouse position</guimenuitem> in some situations (such as - one-dimensional or eyetracker mode), the absolute position of the mouse will differ - from Dasher's perception of the mouse position. This option shows you where Dasher's - mouse is.</para> - </listitem> - <listitem> - <para><guimenuitem>Draw line between crosshairs and mouse</guimenuitem> helpful for - users who have trouble keeping track of the pointer.</para> - </listitem> - <listitem> - <para><guimenuitem>Draw box outlines</guimenuitem> increases the contrast around the - edges of boxes, to help distinguish between them.</para> - </listitem> - <listitem> - <para><guimenuitem>Change colour scheme automatically</guimenuitem> languages such as - Hiragana are aware of which colour scheme they should be using. This option allows an - alphabet to select its colour scheme automatically.</para> - </listitem> - </itemizedlist> - </para> - <figure id="prefs5"> - <title>"Advanced" dialog</title> - <screenshot> - <screeninfo>Preferences dialog</screeninfo> - <graphic fileref="figures/prefs5.png" format="PNG" srccredit="ME"/> - </screenshot> - </figure> - <para> - <itemizedlist> - <listitem> - <para><guimenuitem>Smoothing</guimenuitem> adds a "uniform" element to - the language model's predictions. A smoothing value of 100 will result in an entirely - uniform distribution being used each box will have the same size.</para> - </listitem> - <listitem> - <para><guimenuitem>Timestamp new files</guimenuitem> each file created by Dasher will - automatically have the current time in its filename.</para> - </listitem> - <listitem> - <para><guimenuitem>Distance from centreline for start on mouse position</guimenuitem> - controls the range for the 'Start on mouse position' option.</para> - </listitem> - <listitem> - <para><guimenuitem>Number of pixels that should cover the entire Y range</guimenuitem> - some input devices do not have enough gain to cover an entire Dasher window; this - option increases the gain of displacement on the Y axis.</para> - </listitem> - </itemizedlist> - </para> - </sect2> - </sect1>--> - <sect1 id="reallife"> - <title>How to use Dasher in real life</title> - - <para> Dasher can be used to communicate through your computer, and (to some degree) to control - your computer. Obviously, the simplest way to communicate with Dasher is to have the person - you're talking to watch the screen as you write. But there are lots of other ways to - communicate through Dasher.</para> - - <sect2> - <title>Copy to clipboard</title> - - <para> If you have the `copy on stop' feature switched on, then, every time you stop Dasher, - the contents of Dasher's text box get copied directly to your computer's clipboard. You can - then use the `Paste' function of another application to transfer what you've written.</para> - </sect2> - - <sect2> - <title>Speaking</title> - - <para>Dasher connects to your computer's built-in text-to-speech system. There are several - ways to use Dasher for speaking.</para> - - <para> You can choose to have Dasher `speak each word': every time you pass through the end of - a word (by entering a space character for example), that word gets spoken immediately.</para> - - <para> You can also choose to have Dasher `speak on stop': every time you stop Dasher moving, - everything that is in the text box gets spoken.</para> - - <para> Finally, you can speak exactly when you want to by switching on <emphasis>Control - Mode</emphasis> (which is under the Options Menu in Dasher version 3). This mode brings up - an extra box in the Dasher alphabet, coloured grey, which works a bit like an escape key on - a keyboard. If you go inside the Control box, you will find several control-related options: - Stop (red); pause (yellow); Move; Delete; and Speak. Inside the Speak box are the options to - `speak everything', `speak new' (just the new words that you wrote since the last - utterance), and `speak again' (which re-speaks whatever was last spoken).</para> - </sect2> - - <sect2> - <title>Save to file</title> - - <para> You can save whatever is in the text box of Dasher as a plain text file by clicking the - `Save file' icon in the icon bar, or using the menus at the top of the Dasher window - (selecting File then Save).</para> - </sect2> - - <sect2> - <title>Send text to other window</title> - - <para> You can also have whatever is written in Dasher be directly beamed to another window. - Enable the `send text to other window' option under the options menu. Then the window that - you select will get Dasher's output.</para> - </sect2> - - - - - <sect2> - <title>Font sizes</title> - - <para> Dasher has a text box (where the text appears) and a Dasher canvas (where all the fun - zooming action happens). You can change the font sizes of both these regions using the - Dasher menus at the top of the Dasher window. The two fonts are called the `Edit font' (for - the text box's font), and the `Dasher font', I think. (I forget the exact menu names in - Dasher version 3, sorry.) To change the edit font size bring up the usual dialog box and - change size. To change the Dasher canvas size, find the Dasher-size option, which offers - three to choose from, named something like: small, medium, and large.</para> - </sect2> - </sect1> - - <sect1 id="personalising"> - <title>Personalizing Dasher</title> - <para> There are three classes of files you can tweak in order to make Dasher work better for - you: <computeroutput>alphabet</computeroutput> files, <computeroutput>colour</computeroutput> - files, and <computeroutput>training</computeroutput> files.</para> - - <sect2> - <title>Personalizing the language model</title> - <para>Dasher's predictions (in version 3 of Dasher) are based not on a dictionary but on a - training text of ordinary text. For example, when you download Dasher version 3, it comes - with a file called <filename>training_english_GB.txt</filename>. This is 300 kbytes of - ordinary English harvested from various documents on the Internet. </para> - - <para> When you use Dasher, it stores everything you write in another personal file with the - same name as the training file. Next time you use Dasher, it reads in the original training - file and everything you wrote last time, to help it predict better. Dasher learns all the - time. To get the best results from Dasher: <itemizedlist> - <listitem> - <para>If possible, provide Dasher with a training text in your own style -- a plain text - file made from documents you have written before, and containing your own pet phrases, - friends' names, and so forth. Either append this file to the training file, or replace - the original training file.</para> - </listitem> - <listitem> - <para> If you think your personal training file may have become corrupted with rubbish - text, edit it using any plain text editor. (Or ask a friend to do this for - you.)</para> - </listitem> - <listitem> - <para> If you use Dasher for many months, the personal training file may become so large - that Dasher becomes slow to start up; if so, edit the training file using a plain text - editor. </para> - </listitem> - </itemizedlist></para> - </sect2> - <sect2> - <title>Personalizing the alphabet</title> - <para> Which characters are available to you, and their order, is determined by the alphabet - file. For example, you might use <filename>alphabet.english.xml</filename>. Dasher comes - with many alternative alphabets. You can edit alphabet files to change which characters are - in the alphabet, or their order. When you edit this xml file, it might be a good idea to - save the new file with a new name and change the name of the alphabets in the new file, to - avoid confusion. Each field in the xml file specifies a symbol by three items: the character - that should be <emphasis>displayed</emphasis> (<computeroutput>d=</computeroutput>...); the - character that goes into the <emphasis>text</emphasis> when this symbol is selected - (<computeroutput>t=</computeroutput>...); and the background colour number of the box for - this symbol (<computeroutput>b=</computeroutput>...), of which more below.</para> - </sect2> - <sect2> - <title>Personalizing the colour scheme</title> - <para>You can change the colours of the Dasher world in two ways. The colour file (for example - <filename>colour.xml</filename> or <filename>colour.euroasian.xml</filename>) specifies - the 200 colours in the palette that Dasher uses. Each line specifies red, green, blue - values.</para> - - <para> These colours are used to colour multiple objects in dasher. If for example you want to - change the colour of the <quote>red line</quote>;, change the second colour line of the - colour file, which reads <computeroutput><colour r="255" - g="0" b="0"/></computeroutput>. </para> - - - <para> You can change which of these colours is used for each symbol's box by changing the - <quote>b</quote>; field for that symbol in the alphabet file.</para> - </sect2> - - - - - </sect1> - <sect1 id="languages"> - <title>Languages</title> - - <para> Dasher works in hundreds of languages.</para> - - <para> For each language there is an alphabet file (or possibly more than one alphabet file). On - the Dasher website we aim to supply at least one training text for each language. If we don't - have a good training text for your language, please help us by making one and sending it to - us.</para> - - <para> See the Dasher website for the list of languages supported by Dasher. As of October 2005, - all the major languages of the world are well supported, with the exception of Japanese and - Chinese, for which Dasher version 3 offers only phonetic support (hiragana and pin-yin). In - Dasher version 4, we will provide full support for Japanese and Chinese. </para> - - <!-- %% Dasher works beautifully in Korean--> - - - </sect1> - - - - <sect1 id="specialneeds"> - <title>Dasher Special Needs Guide</title> - - <para> Dasher is designed on the principle of getting <emphasis>as much information as - possible</emphasis> from the gestures you can make.</para> - - <para> We can get information from whichever of the following is easiest for you: <orderedlist> - <listitem> - <para> - <emphasis>Continuous</emphasis> gestures (conveyed via a joystick, trackpad, head mouse, - or gaze tracker, for example) often achieve the highest rates of writing.</para> - </listitem> - <listitem> - <para> - <emphasis>Discrete</emphasis> gestures (switches, button presses) may be able to convey - information in three different ways:</para> - <orderedlist> - <listitem> - <para> The <emphasis>time</emphasis> at which you press a button can convey - information. (This idea is used in grid systems controlled by a single - button.)</para> - </listitem> - <listitem> - <para> - <emphasis>How long</emphasis> you press a button for can convey information. (This - idea is used in Morse code, where two durations are distinguished.) </para> - </listitem> - <listitem> - <para> The <emphasis>choice</emphasis> of <emphasis>which</emphasis> button you press - can convey information. (This idea is used in ordinary keyboards.)</para> - </listitem> - </orderedlist> - </listitem> - </orderedlist></para> - - <sect2 id="manual7"> - <title>Continuous gestures</title> - <para> Dasher's normal mode (<emphasis>mouse mode</emphasis>) is driven by a two-dimensional - continuous steering gesture. Dasher also has a <emphasis>one-dimensional mode</emphasis>, - for users who can control only one dimension.</para> - - <para> Can you make one or two continuous gestures? If you can operate a joystick, mouse, - trackpad, or rollerball, then you have a two-dimensional control. If you can point on a - touch-screen then that's perfect too. Can you move your nose around? If you can shake your - head, that's a one-dimensional control; if you can nod, that's two. A head-mouse can be - quite cheap, and it is a convenient way to drive Dasher. (We recommend the - <emphasis>SmartNav3</emphasis> from NaturalPoint, which costs about $200, and works under - microsoft windows only; this device used to be called the NavPoint TrackIR until 2002, when - that brand name was transferred to a different device. We also recommend the Origin - instruments <emphasis>Headmouse Extreme</emphasis>, which costs about $1000; it works as a - USB mouse on any computer.) Can you waggle one finger or one foot? These head-mice can be - used to track fingers and feet as well as heads. For a detailed comparison of SmartNav3 with - Headmouse Extreme, please see <ulink - url="http://www.inference.phy.cam.ac.uk/dasher/Headmouse.html" type="http">http://www.inference.phy.cam.ac.uk/dasher/Headmouse.html</ulink>.</para> - - <para>If you are severely paralysed, the best option may be a gaze tracker. Do you have - control of where your eyes are looking? With a gaze tracker we can write at 25 words per - minute. Gaze trackers are quite expensive: we paid $2000 for the QuickGlance from EyeTech - Digital Systems, and the Tobii eyetracker costs about $20,000. [We recommend both of these - systems. You attach QuickGlance to an existing computer; Quickglance II costs about $4000. - Tobii is a complete computer with built-in eyetracking cameras.] Dasher also works with the - Eye response <emphasis>Erica</emphasis>, with LC's <emphasis>Eyegaze</emphasis>, and with - Metrovision's gaze-tracker. All three of these systems are complete computers with - eye-tracking cameras attached.</para> - - <para> If joysticks, mice, rollerballs, and gaze trackers don't work, there may be a few other - ways to convey a continuous one-dimensional signal. Lips and eyebrows should both work, - though we don't know of any manufacturer selling appropriate devices. Breath is a - one-dimensional signal too. If you can control your breath, it should be possible to make a - breath mouse for you. We made our $22 breath mouse using a USB optical mouse, a belt, and - some elastic, and our most experienced user can write at 15 words per minute by breath - alone.</para> - <sect3> - <title>Starting and stopping</title> - <para>There are several ways of starting and stopping Dasher. Pressing a button (for - example, the left mouse button or the space bar) is one option. But if you can not press - any buttons, it's possible to start and stop using only continuous gestures: in the - options menu, select <quote>start on position</quote>; and switch on <quote>control - mode</quote>;. When control mode is switched on, the Dasher alphabet includes a special - Control node (a bit like an <computeroutput>Esc</computeroutput> key on a keyboard), - within which various control functions are available. When you are inside the control - node, Dasher moves more slowly than normal, for safety. The control node options include - `pause' and `stop'. Use `pause' if you are half-way through writing something, and want to - pause for a moment. Use `stop' when you have finished. <command>Pause</command> and - <command>stop</command> produce the same behaviour, except <command>stop</command> may - cause other automatic actions, such as `speak on stop', or `copy the text - <!--% to clipboard --> on stop'.</para> - - <para>When Dasher is paused or stopped, it can be restarted using any of the starting - methods that are enabled. If `start on position' is enabled, then whenever Dasher is - stopped a sequence of large targets will be displayed; you restart Dasher by pointing at - (or looking at) the first (red) target, then the second (yellow) target. (We use two - targets in sequence to make it difficult to start Dasher by accident.)</para> - </sect3> - <sect3> - <title>Recommendations for head-tracking</title> - <para> Many trackers have `smoothing' options, which determine the frequency with which the - mouse position is updated; these options are normally used to smooth and damp down the - mouse motion. For Dasher, we don't want such smoothing. We like instant, live, raw and - jerky mouse coordinates. If there is a `smoothing' control, turn it right down.</para> - - <para>The `gain' (sometimes called the `speed') of the head-tracker is also an important - setting to adjust. Some trackers' gains can be adjusted in software. You can also adjust - the gain by changing the geometry of your tracker: if you move the tracked dot from your - forehead to the brim of a baseball cap, for example, then you roughly double the gain. - Sitting closer to the tracker may also increase the gain. Find a gain setting that is - comfortable. I like high gain because it allows me to steer with very small head - motions.</para> - </sect3> - <sect3> - <title>Recommendations for gaze-tracking</title> - <para>For good results with gaze trackers, we strongly recommend that the gaze-tracker be - made to be as responsive as possible. Many trackers have `smoothing' options, which - determine the frequency with which the mouse position is updated and the number of - successive gaze images used to estimate the mouse position. These options are normally - used to smooth and damp down the mouse motion. For Dasher, we don't want such smoothing. - We like instant, live, raw and jerky mouse coordinates. When you are navigating, your eye - moves very quickly to the target you are interested in, and we want Dasher to respond - instantly. The ideal settings for Dasher may be very different from the ideal settings for - other software. Ask your eyetracker manufacturer to make it easy to change the settings - when switching application. </para> - - <para> Dasher has several options designed for use with gaze-trackers. We recommend using - <emphasis>eyetracker mode</emphasis> (under Options/Preferences/Control). In this mode, - the dynamics of Dasher are slightly different from standard dynamics, making - error-correction easier by gaze.</para> - - <para>If your gaze-tracker's calibration drifts with time, for example when your head moves, - then you should select the <emphasis>Autocalibrate eyetracker</emphasis> feature. When - this feature is switched on, Dasher keeps track of your steering and infers the vertical - calibration error, and corrects for it. You can see this correction taking effect by - noticing the vertical offset between the mouse position as displayed by Dasher (by the tip - of the red line) and the gaze-tracker's mouse position (shown by the system's mouse - cursor).</para> - - <para>To avoid difficulties with the mouse being bounded by the top and bottom of the - screen, we recommend choosing a window size for Dasher that is <emphasis>not</emphasis> - full-screen in size. Place the Dasher window so that there is a margin above and below the - Dasher canvas.</para> - - <para><emphasis>Technical note:</emphasis> As well as through mouse emulation, Dasher is - able to receive tracking information from gaze trackers, head trackers, or similar systems - directly by means of a system socket. This option can be configured in the 'Input Device' - section of the 'preferences' dialogue.</para> - </sect3> - </sect2> - <sect2 id="manual8"> - <title>Discrete Gestures</title> - <para>We have several versions of <emphasis>button Dasher</emphasis>, available in Dasher - Version 4.</para> - - <sect3> - <title>Are time-critical gestures not an option?</title> - <para>Some ways of conveying information make use of the <emphasis>timing</emphasis> of - gestures. However, some people can't make gestures at a required instant. For example, - spastics find it very difficult to do an action `exactly now!'</para> - - <para>If time-critical gestures are not an option, go to <xref linkend="no_time_critical"/>.</para> - - <para>If you <emphasis>can</emphasis> convey information by <emphasis>precisely - timed</emphasis> gestures, go to section <xref linkend="timed"/>.</para> - </sect3> - </sect2> - <sect2 id="no_time_critical"> - <title>`Timeless' choices of Dasher</title> - <para> So, you want to steer Dasher at your own pace. Can you make fairly-accurate continuous - gestures, given time? For example, can you position a pointer accurately on a screen, then - press a button to indicate that you are ready? Or can you touch a touch-screen fairly - accurately? <itemizedlist> - <listitem> - <para>If so, try <emphasis>click mode</emphasis>. Go to <xref - linkend="time_critical_button"/>.</para> - </listitem> - <listitem> - <para> Otherwise try <emphasis>direct button mode</emphasis> or <emphasis>menu button - mode</emphasis>. Go to <xref linkend="no_time_critical_button"/>.</para> - </listitem> - </itemizedlist> - </para> - <sect3 id="time_critical_button"> - <title>`Timeless' continuous Dasher: click mode</title> - - <para> In <emphasis>click mode</emphasis>, you position the mouse pointer where you want to - go, then press a button when you are ready. Dasher then zooms in on the position you - chose.</para> - - <para> Alternatively, if you have a touch screen, a single touch on the screen initiates a - zoom to that position.</para> - </sect3> - <sect3 id="no_time_critical_button"> - <title>`Timeless' choices of Button Dasher</title> - <para> How many different switches, keys, or buttons can you easily operate? </para> - <variablelist> - <varlistentry> - <term>1</term> - <listitem> - <para>With just one button, the only timeless way to convey information is by the - <emphasis>duration</emphasis> of your button-presses. Can you make a distinction - between short presses and long presses? If so, you can use <emphasis>menu - button-Dasher</emphasis>. Connect up your short press to the `menu' action, and - your long press to the `select' action. </para> - </listitem> - </varlistentry> - <varlistentry> - <term>2</term> - <listitem> - <para>You can use <emphasis>menu button-Dasher</emphasis>. Connect one button to the - `menu' action, and the other to the `select' action. If one button is easier to - press, make that button the `menu' button. </para> - </listitem> - </varlistentry> - <varlistentry> - <term>2.5</term> - <listitem> - <para>If you can easily press two buttons, and, for special occasions, you are able to - press a third button, you can use <emphasis>menu button-Dasher</emphasis> or - <emphasis>direct button-Dasher</emphasis>. </para> - <orderedlist> - <listitem> - <para> Set up <emphasis>menu button-Dasher</emphasis> as described above, and use - the third button as your escape key -- to make Dasher go away, for example. - [This feature is not currently provided within Dasher.]</para> - </listitem> - <listitem> - <para> In <emphasis>direct button-Dasher</emphasis>, each button produces a - particular navigation action such as `up', `down', or `back'. If you have 2.5 - buttons, map the convenient two to `up' and `down', and the inconvenient button - to `back'.</para> - </listitem> - </orderedlist> - </listitem> - </varlistentry> - <varlistentry> - <term>3</term> - <listitem> - <para>You can use <emphasis>direct button-Dasher</emphasis> or <emphasis>menu - button-Dasher</emphasis> as described above.</para> - </listitem> - </varlistentry> - <varlistentry> - <term>4, 5, 6, or 7</term> - <listitem> - <para>With more than three buttons, you have the option to use <emphasis>direct - button-Dasher</emphasis> with three, four, five, or six `forward' directions. - Please try <emphasis>menu button-Dasher</emphasis> too, even though it uses only two - buttons.</para> - </listitem> - </varlistentry> - <varlistentry> - <term>8 or more</term> - <listitem> - <para>Try <emphasis>direct button-Dasher</emphasis> and <emphasis>menu - button-Dasher</emphasis>. With this many buttons, you also have the option of using - a system like T9 -- the predictive-text system found on many mobile phones. You may - wish to investigate <emphasis>Tapir</emphasis>, a disambiguating on-screen keyboard - from the developers of Dasher.</para> - </listitem> - </varlistentry> - </variablelist> - </sect3> - </sect2> - - <sect2 id="timed"> - <title>Button Dashers that exploit timing</title> - <para>There are two Dasher modes which make use of precise timing information, and generally - require fewer button presses than the nn-time-critical modes:</para> - <sect3 id="onebutton"> - <title>(One button) dynamic mode</title> - <para>When started, Dasher will zoom towards a point towards the top or bottom of the - display. A short button press will switch the point of zoom to the opposite side. Text can - be entered by pressing the button when the desired phrase reaches the edge of the - display.</para> - </sect3> - <sect3 id="twobutton"> - <title>Two button dynamic mode</title> - <para>Dasher zooms continuously towards the centre of the screen, with the two buttons being - used to shift the display up and down. The buttons should be pressed whenever the desired - text is aligned with the two markers.</para> - </sect3> - <sect3> - <title>Correcting errors</title> - <para>In either dynamic mode, there are three options for error correction: using an - additional button, long presses or multiple presses. In all cases these actions will - switch to a mode where Dasher unzooms at a fixed rate. In this mode, one more press will - stop Dasher and a second press will return Dasher to forward zooming.</para> - </sect3> - </sect2> - </sect1> - - <sect1 id="modesummary"> - <title>Summary of Dasher Modes</title> - <para> The various modes of <application>Dasher</application> are listed below. The mode may be - changed via the <emphasis> - <quote>edit</quote> - </emphasis> menu. Select <emphasis> - <quote>Preferences</quote> - </emphasis> and then <emphasis> - <quote>Control</quote> - </emphasis>. Each mode has a number of variable parameters associated with it which can be - adjusted using the <emphasis>options</emphasis> button located below the mode menu. </para> - - <sect2 id="normal"> - <title>Normal</title> - <para> The original <application>Dasher</application> mode. Functions using a two dimensional - steering gesture, from a mouse, say. A one-dimensional mode is also available, for those who - may not be able to control two-dimensions, and a special eyetracker mode is available for - those using Dasher with a gaze or head tracker. Dasher can be started using mouse position - alone if clicking is not possible - select 'Start on Mouse Position' and 'Circle Start' to - allow starting and stopping by dwelling in the circle in the centre of the display. The 'Two - Box' start mode starts Dasher by dwelling in the two boxes in sequence. In the latter case - stopping must be done through control mode.</para> - </sect2> - - <sect2 id="click"> - <title>Click Mode</title> - <para> In <emphasis>click mode</emphasis> you position the mouse pointer where you want to go, - then press the button when you are ready. <application>Dasher</application> then zooms into - the place where you clicked. </para> - </sect2> - - <sect2 id="menu"> - <title>Menu Mode</title> - <para> One button is used to select a location, and once a second button is pressed - <application>Dasher</application> zooms to that location. The large box occurring last in - the cycle is used to zoom out.</para> - </sect2> - - <sect2 id="direct"> - <title>Direct Mode</title> - <para>Direct mode is similar to menu mode, except boxes are assigned directly to each button - rather than being selected in sequence.</para> - </sect2> - - <sect2 id="compass"> - <title>Compass Mode</title> - <para>Compass mode makes use of four buttons. Two buttons are used to control vertical - position. When the required vertical position has been reached a third button is pressed to - zoom in. After zooming in on the location, the user once more selects vertical position. A - forth button zooms out if an error is made.</para> - </sect2> - - <sect2 id="dynamic"> - <title>(One Button) Dynamic Mode</title> - <para> - <application>Dasher</application> continually zooms in and a single button may be used to - move <quote>up</quote> and <quote>down</quote>. There is also a <emphasis>Two Button Dynamic - Mode</emphasis> where two buttons are used to control motions <quote>up</quote> and - <quote>down</quote>. A third button, long presses or multiple presses can be used to - unzoom and correct errors. </para> - </sect2> - - <sect2 id="buttondynamic"> - <title>Two Button Dynamic Mode</title> - <para> - <application>Dasher</application> continually zooms in, whilst two buttons are used to - control vertical motion. Correction is performed in the same way as One button dynamic - mode.</para> - </sect2> - </sect1> - - - - - - <sect1 id="authors"> - <title>Authors</title> - <para> - <application>Dasher</application> was written by the members of The Dasher Project - (<email>dasher@inf.phy.cam.ac.uk</email>). To find more information about it, please visit - <application>Dasher's</application> - <ulink url="http://www.inference.phy.cam.ac.uk/dasher/" type="http">Web page</ulink>. Please - send all comments, suggestions, and bug reports to the <ulink url="http://bugzilla.gnome.org/enter_bug.cgi?product=dasher" - type="http">GNOME bug tracking database</ulink>. Instructions for submitting bug reports can - be found on-line at <ulink url="http://bugzilla.gnome.org/page.cgi?id=bug-writing.html" type="http"> - http://bugzilla.gnome.org/page.cgi?id=bug-writing.html</ulink>. If you are using GNOME 1.1 or later, you can - also use command <command>bug-buddy</command> for submitting bug reports.</para> - <para> This manual was written by The Dasher Project (<email>dasher@inf.phy.cam.ac.uk</email>). - Please send all comments and suggestions regarding the manual to the GNOME Documentation - Project at <email>gnome-doc-list@gnome.org</email>.</para> - </sect1> -</article> diff -ur -urN dasher-DASHER_5_0_0_beta/Data/Help/Gnome/C/index.docbook dasher-DASHER_5_0_0_beta.gdu/Data/Help/Gnome/C/index.docbook --- dasher-DASHER_5_0_0_beta/Data/Help/Gnome/C/index.docbook 1970-01-01 02:00:00.000000000 +0200 +++ dasher-DASHER_5_0_0_beta.gdu/Data/Help/Gnome/C/index.docbook 2016-04-08 01:17:00.000000000 +0300 @@ -0,0 +1,1309 @@ +<?xml version="1.0"?> +<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"> +<article id="index"> + <articleinfo> + <title>Dasher Manual</title> + <corpauthor role="maintainer">The Dasher Project</corpauthor> + <copyright> + <year>2010</year> + <holder>The Dasher Project</holder> + </copyright> + <legalnotice> + <para>Permission is granted to make and distribute verbatim copies of this manual provided the + copyright notice and this permission notice are preserved on all copies.</para> + <para>Permission is granted to copy and distribute modified versions of this manual under the + conditions for verbatim copying, provided that the entire resulting derived work is + distributed under the terms of a permission notice identical to this one.</para> + <para>Permission is granted to copy and distribute translations of this manual into another + language, under the above conditions for modified versions, except that this permission + notice may be stated in a translation approved by the Free Software Foundation.</para> + <para>UNIX is a trademark of X/Open Group.</para> + <para>Linux is a trademark of Linus Torvalds.</para> + <para>X Window System is a trademark of X Consortium, Inc.</para> + <para>Windows is a trademark of Microsoft Corp.</para> + <para>Macintosh and Apple are trademarks of Apple Computer, Inc.</para> + <para>All other trademarks are property of their respective owners.</para> + </legalnotice> + <abstract role="description"> + <para>Dasher is an accessible text entry application that uses pointing gestures + rather than typing. It is designed to be fast while fun to use.</para> + </abstract> + <revhistory> + <revision> + <revnumber>1.0.0</revnumber> + <date>2004-02-08</date> + </revision> + <revision> + <revnumber>1.1.0</revnumber> + <date>2006-03-31</date> + </revision> + <revision> + <revnumber>1.2.0</revnumber> + <date>2006-07-11</date> + </revision> + <revision> + <revnumber>1.2.1</revnumber> + <date>2006-09-02</date> + </revision> + </revhistory> + </articleinfo> + + <sect1 id="intro"> + <title>Introduction</title> + <para><application>Dasher</application> is an information-efficient text-entry interface, driven + by natural continuous pointing gestures. Dasher is a competitive text-entry system wherever a + full-size keyboard cannot be used - for example on a palmtop or wearable computer, or when + operating a computer one-handed (by joystick, touchscreen or mouse) or zero-handed (i.e. by + head-mouse or eyetracker). This document describes version 4.2.0 of + <application>Dasher</application>.</para> + <para><application>Dasher</application> can be started by selecting + <guimenuitem>Dasher</guimenuitem> from the <guisubmenu>Accessibility </guisubmenu> submenu of + the <guimenu>Main Menu</guimenu>, or by running the command <command>dasher</command> on the + command line.</para> + </sect1> + <sect1 id="whatsnew"> + <title>What's New</title> + + <sect2> + <title>New features In version 4.2</title> + + + <para> There is an automatic speed control, which will speed up Dasher when it senses you are + able to go faster. </para> + + <para> There is a new socket interface allowing Dasher to listen to head-trackers or + gaze-trackers or EEG-interfaces without going through the mouse.</para> + + <para> There are several `button modes' for people who want to drive Dasher using one, two, + three, or four switches.</para> + + <para> There is a `click mode', for people who like to point where they want to go, and click + to take a single step in that direction. This is aimed at beginners, in particular</para> + + + </sect2> + <sect2> + <title>What's coming in version 4.4</title> + <para> We will implement a game-mode for Dasher: this will help novices learn to write. A + teaching hand will guide the novice when he goes astray, and novices who write fast without + needing much guidance will win lots of points. </para> + + <para> New language models will be added, which will make predictions at the word level as + well as the letter level.</para> + + <para>Japanese and Chinese will be fully supported. </para> + + <para>The Dasher team also hopes to create a free web-cam-based head tracker and gaze tracker, + `FreeVIM', by December 2006. </para> + </sect2> + </sect1> + <sect1 id="basics"> + <title>Dasher Basics</title> + <para>Dasher is an information-efficient text-entry interface, driven by natural continuous + pointing gestures. Dasher is a competitive text-entry system wherever a full-size keyboard + cannot be used - for example, <itemizedlist> + <listitem> + <para>On a palmtop computer;</para> + </listitem> + <listitem> + <para>on a wearable computer;</para> + </listitem> + <listitem> + <para>when operating a computer one-handed, by joystick, touchscreen, trackball, or + mouse;</para> + </listitem> + <listitem> + <para>when operating a computer with zero hands (i.e., by head-mouse or by + eyetracker).</para> + </listitem> + </itemizedlist> The eyetracking version of Dasher allows an experienced user to write text as + fast as normal handwriting - 29 words per minute; using a mouse, experienced users can write + at 39 words per minute.</para> + + <para> Dasher can be used to write efficiently in any language. </para> + + <para>Dasher is fast and fun to learn. + <!--TODO - write this section (See what + users round the world say, in section \ref{sec.users}.)--> + </para> + + <para>Dasher is <emphasis>free software</emphasis>. It's distributed under the same license as + GNU/Linux, the GPL. </para> + + <sect2> + <title>How does Dasher work?</title> + + <blockquote> + <attribution>Financial Times, 5th February 2002</attribution> + <para>Dasher is like an arcade game: `Attack of the killer alphabets', perhaps.</para> + </blockquote> + + <para>Dasher is a zooming interface. You point where you want to go, and the display zooms in + wherever you point. The world into which you are zooming is painted with letters, so that + any point you zoom in on corresponds to a piece of text. The more you zoom in, the longer + the piece of text you have written. You choose what you write by choosing where to zoom.</para> + + <para>To make the interface efficient, we use the predictions of a language model to determine + how much of the world is devoted to each piece of text. Probable pieces of text are given + more space, so they are quick and easy to select. Improbable pieces of text (for example, + text with spelling mistakes) are given less space, so they are harder to write. The language + model learns all the time: if you use a novel word once, it is easier to write next time.</para> + + + + <para>A big advantage of Dasher over other predictive text-entry interfaces that offer + word-completions to the user is that it is <emphasis>mode-free</emphasis>: the user does not + need to switch from a writing mode to an <quote>accept-model-predictions</quote> mode.</para> + + <para>Another advantage is that it is easy to train the model on any writing style: simply + load up an example file, then write away!</para> + + <para> It's quite hard to convey in words what Dasher looks like, so please visit <ulink + url="http://www.inference.phy.cam.ac.uk/dasher/" type="http">http://www.inference.phy.cam.ac.uk/dasher/</ulink> to see movies.</para> + + </sect2> + <sect2> + <title>Dasher explained -- the library analogy</title> + <para> Imagine <emphasis>a library containing all possible books</emphasis>, ordered + alphabetically on a single shelf. Books in which the first letter is <quote>a</quote>; are + at the left hand side. Books in which the first letter is <quote>z</quote>; are at the + right. In picture (i) below, the shelf is shown vertically with <quote>left</quote>; (a) at + the top and ,<quote>right</quote>; (z) at the bottom. The first book in the + <quote>a</quote>; section reads + <quote><computeroutput>aaaaaaaaaaaa</computeroutput>...</quote>; somewhere to its right are + books that start <quote><computeroutput>all good things must come to an + end</computeroutput>...</quote>; a tiny bit further to the right are books that start + <quote><computeroutput>all good things must come to an + enema</computeroutput>...</quote>.</para> + + + <para> When someone writes a piece of text, their choice of the text string can be viewed as a + choice of a book from this library of all books - the book that contains exactly the chosen + text. How do they choose that book? Let's imagine they want to write + <quote><computeroutput>all good things</computeroutput>...</quote>;</para> + <figure> + <title>The library of all books.</title> + <mediaobject> + <imageobject> + <imagedata fileref="figures/a-z.gif"/> + </imageobject> + <imageobject> + <imagedata fileref="figures/aa-az.gif"/> + </imageobject> + <imageobject> + <imagedata fileref="figures/ala-alz.gif"/> + </imageobject> + </mediaobject> + </figure> + <para>First, they walk into the <quote> + <computeroutput>a</computeroutput> + </quote>; section of the library. There, they are confronted by books starting <quote> + <computeroutput>aa</computeroutput> + </quote>;, <quote> + <computeroutput>ab</computeroutput> + </quote>, <quote><computeroutput>ac</computeroutput>...</quote>; <quote> + <computeroutput>az</computeroutput> + </quote>; [Picture (ii)]. Looking more closely at the <quote> + <computeroutput>al</computeroutput> + </quote>; section, they can find books starting <quote> + <computeroutput>ala</computeroutput> + </quote>;, <quote>;<computeroutput>alb</computeroutput></quote>;,...; <quote> + <computeroutput>alz</computeroutput> + </quote>; [Picture (iii)].</para> + + <para> By looking ever more closely at the shelf, the writer can find the book containing the + text he wishes to write. Thus writing can be described as <emphasis>zooming in on an + alphabetical library, steering as you go</emphasis>.</para> + + <para> This is exactly how Dasher works, except for one crucial point: <emphasis>we alter the + SIZE of the shelf space devoted to each book in proportion to the probability of the + corresponding text.</emphasis> For example, not very many books start with an <quote> + <computeroutput>x</computeroutput> + </quote>;, so we devote less space to <quote><computeroutput>x</computeroutput>...;</quote>; + books, and more to the more plausible books, thus making it easier to find books that + contain probable text.</para> + + <para> Here is the corresponding sequence of pictures of the library in Dasher. (The character + <quote>_</quote>; denotes the space character.)</para> + <figure> + <title>The library of all books.</title> + <mediaobject> + <imageobject> + <imagedata fileref="figures/a-z.gif"/> + </imageobject> + <imageobject> + <imagedata fileref="figures/aa-az.gif"/> + </imageobject> + <imageobject> + <imagedata fileref="figures/ala-alz.gif"/> + </imageobject> + </mediaobject> + </figure> + <!-- +\begin{center} +\begin{tabular}{ccc} +\mbox{\psfig{figure=images/a-z.m.gif.50.ps}}& +\mbox{\psfig{figure=images/aa-az.m.gif.50.ps}}& +\mbox{\psfig{figure=images/ala-alz.m.gif.50.ps}}\\ +(i)&(ii)&(iii)\\ +\end{tabular} +\end{center} + --> + + <para> Dasher can be trained on examples of any writing style, and it learns all the time, + picking up your personal turns of phrase.</para> + + <para>The image below shows the state of the Dasher interface while the user is writing the + word `objection'; alternative words that could easily be written at this point include + `objective', `objects_', and `object_oriented'.</para> + <figure> + <title>Writing `objection' in Dasher.</title> + <mediaobject> + <imageobject> + <imagedata fileref="figures/object.gif"/> + </imageobject> + </mediaobject> + </figure> + + <para> If you find Dasher hard to imagine based on these static pictures, please take a look + at the movies on <ulink url="http://www.inference.phy.cam.ac.uk/dasher/" type="http">http://www.inference.phy.cam.ac.uk/dasher/</ulink>.</para> + + + <!--% When you try Dasher for the first time, please read the tips for novices.--> + </sect2> + <sect2> + <title>Tips for novices</title> + <para>Don't give up if it takes you a minute or two to get started - within ten minutes, + you'll be blazing along. It's a lot like driving a car. You should <emphasis>start by + driving cautiously</emphasis>. If you can't tell where you are going, <emphasis>stop + going</emphasis>. Indeed, you will probably learn Dasher fastest if you come to it with + car-driving analogies in mind, rather than standard computer analogies. For example, the way + navigation works is not by DRAGGING but by STEERING: if cars worked like windows computers, + you would have to <quote>grab</quote> the piece of road you want, then ,<quote>drag</quote>; + it towards you; but in a car, when you wish to drive right, you POINT RIGHT with your + steering wheel. Dasher does not work by dragging either. <emphasis>Do not try to grab things + and drag them. Just decide where you want to go, and point there.</emphasis></para> + + <para> + <emphasis>The single most important concept</emphasis> that a novice user needs to + understand is that one should always continue <emphasis>inside</emphasis> the text written + so far: to select the book that contains <quote>all</quote>; as its first word, one does + <emphasis>not</emphasis> enter the <quote>a</quote>; section of the library, then exit the + <quote>;a</quote>; section, and enter the ,<quote>l</quote>; section. One enters the + <quote>a</quote>; section, then finds the <quote>al</quote>; section that is + <emphasis>within</emphasis> the <quote>a</quote>; section, then enters the + <quote>all</quote>; section <emphasis>within</emphasis> the <quote>al</quote>; section.</para> + + <para> It's just like finding a name in a phonebook. To find <quote> + <computeroutput>Alison</computeroutput> + </quote>;, you don't go to the <quote> + <computeroutput>A</computeroutput> + </quote>; section of the phonebook, then the + <quote>;<computeroutput>L</computeroutput></quote>; section: you go into the <quote> + <computeroutput>A</computeroutput> + </quote>; section, then find <emphasis>within it</emphasis> the <quote> + <computeroutput>Al</computeroutput> + </quote>; section, and so forth. Once you are in the <quote> + <computeroutput>Al</computeroutput> + </quote>; section, you never leave it.</para> + + <para><emphasis>The second most important idea</emphasis> is that what you have written + depends <emphasis>only</emphasis> on where you finally end up in the library, not on how you + got there; so there is no need to steer accurately on your way to your destination. + <emphasis>You are allowed to cut corners.</emphasis> (For example, in the previous image, + if you wanted to write `objects_are', it would be fine to move the mouse straight towards + the letters `are', even if this takes the mouse across the unwanted grey `i' square.)</para> + + + + + <para><emphasis>Common errors.</emphasis> Often, a beginner who is trying to find a particular + letter will drive the display forwards fast while hunting for the letter. The rule of the + road for Dasher users is just like that for car-drivers: don't drive forwards until you have + identified where you want to go! So, after you have found the first letter of your sentence, + and zoomed towards it, please <emphasis>SLOW DOWN and don't proceed any further into this + first letter's square until you have figured out where you should be steering + towards</emphasis>. Your next letter <emphasis>is</emphasis> there, immediately inside the + first square you have entered. The letters are ordered alphabetically. If you can't see your + letter, figure out where it must be on the basis of the letters you <emphasis>can</emphasis> + see. Then point to the right place and enter the second letter's square.</para> + </sect2> + <sect2> + <title>Example</title> + <figure id="figHad1"> + <title>Writing <quote> + <computeroutput>I once had a whim</computeroutput> + </quote>;. Where should the user steer now?</title> + <mediaobject> + <imageobject> + <imagedata fileref="figures/exampleHad2.png"/> + </imageobject> + </mediaobject> + </figure> + <para> Imagine you want to write `<computeroutput>I once had a whim</computeroutput>'. You + write `<computeroutput>I once ha...</computeroutput>' and the Dasher display looks like + <xref linkend="figHad1"/>. You want to write `<computeroutput>had</computeroutput>'. What + should you do? There are lots of letter <computeroutput>d</computeroutput>s on the screen, + and all of them are rather small. The five arrows in <xref linkend="figHad1"/> show some of + these <computeroutput>d</computeroutput>s. The purple arrow points to a + <computeroutput>d</computeroutput> that we can't see yet, but we know it must be there + because we can see `<computeroutput>a</computeroutput>', + `<computeroutput>b</computeroutput>', and `<computeroutput>c</computeroutput>' above it.</para> + <figure id="figHad2"> + <title>Some alternative letter <computeroutput>d</computeroutput>s, with a beginner's error + highlighted</title> + <mediaobject> + <imageobject> + <imagedata fileref="figures/exampleHad2a.png"/> + </imageobject> + </mediaobject> + </figure> + <para> A common beginner's mistake is to keep rushing forward and spot + <emphasis>any</emphasis> of these letter <computeroutput>d</computeroutput>s, and zoom into + it. For example, <xref linkend="figHad3"/> shows what happens if the user zooms towards the + <computeroutput>d</computeroutput> highlighted in <xref linkend="figHad2"/>.</para> + <figure id="figHad3"> + <title>What happens when you select the wrong <computeroutput>d</computeroutput></title> + <mediaobject> + <imageobject> + <imagedata fileref="figures/exampleHad3a.png"/> + </imageobject> + </mediaobject> + </figure> + + + <para>If you go in this <computeroutput>d</computeroutput>, you are writing `<computeroutput>I + once </computeroutput><emphasis>head</emphasis><computeroutput>...</computeroutput>'. The + other two <computeroutput>d</computeroutput>s labelled by red arrows (in <xref + linkend="figHad1"/>) correspond to writing `<computeroutput>I once + </computeroutput><emphasis>heard</emphasis><computeroutput>...</computeroutput>' and + `<computeroutput>I once + </computeroutput><emphasis>hedge</emphasis><computeroutput>...</computeroutput>'.</para> + + + <para> It is crucial to understand that there is only one correct + <computeroutput>d</computeroutput>, namely the <computeroutput>d</computeroutput> that is + immediately inside the blue box corresponding to letter `<computeroutput>a</computeroutput>' + in the sequence `<computeroutput>I once ha</computeroutput>'. That blue box is highlighted + in <xref linkend="figHad4"/>.</para> + <figure id="figHad4"> + <title>The correct letter <computeroutput>d</computeroutput> is the one marked by the green + arrow. This example illustrates the rule <quote>always keep going + <emphasis>inside</emphasis> the box that you want</quote>; in this case, the blue box + associated with the letter <computeroutput>a</computeroutput> of the word <quote> + <computeroutput>had</computeroutput> + </quote>; </title> + <mediaobject> + <imageobject> + <imagedata fileref="figures/exampleHad4.png"/> + </imageobject> + </mediaobject> + </figure> + + <para>If you ever leave that blue box (as we did in <xref linkend="figHad3"/>) then we lose + the letter `<computeroutput>a</computeroutput>'.</para> + </sect2> + + <sect2> + <title>Summary</title> + <para> + <emphasis>Don't click. Don't drag. And don't speed.</emphasis> + </para> + </sect2> + + <sect2> + <title>What do the colours mean?</title> + <para> In the English-language desktop version 3 of Dasher, <itemizedlist> + <listitem> + <para><emphasis>white</emphasis> squares contain the space characters (always placed at + the bottom of the alphabet);</para> + </listitem> + + <listitem> + <para>a special <emphasis>yellow</emphasis> box contains the upper case characters + [A-Z];</para> + </listitem> + + <listitem> + <para>a <emphasis>red</emphasis> box contains numerals [0-9] (if the full alphabet is + enabled);</para> + </listitem> + + <listitem> + <para>a <emphasis>green</emphasis> box contains punctuation characters (with the + characters most similar to the space character [.,;:-] placed at the bottom, next to + the <emphasis>white</emphasis> space character. Within the punctuation section, + letters with similar roles are coloured similarly: punctuation characters similar to + the period [.,;:-] are coloured slate-blue;</para> + </listitem> + <listitem> + <para>the other colours are included simply to discriminate the squares from each + other.</para> + </listitem> + <listitem> + <para>In languages with accents (grave, acute, circumflex, etc), the accents are + displayed in an <emphasis>orange</emphasis> box.</para> + </listitem> + <listitem> + <para> In the Japanese version of Dasher, colours are used to distinguish the different + hiragana groups (eg ka,ki,ku,ke,ko are orange).</para> + </listitem> + <listitem> + <para> In the Korean version of Dasher, three different colours are used to distinguish + initial consonants, vowels, and terminal consonants.</para> + </listitem> + </itemizedlist> + </para> + <para> You can alter the colour scheme by editing the <computeroutput>colour</computeroutput> + and <computeroutput>alphabet</computeroutput> xml files, as described in <xref + linkend="personalising"/>.</para> + </sect2> + <sect2> + <title>How to start dasher (version 4)</title> + <para> Set the dasher application running; when the dasher window comes up, either click the + left mouse button or press the space bar to set it going. [One of these two will work.] + Repeat this action (click or space), when you are finished, to stop dasher from dashing. + Your computer's mouse controls Dasher.</para> + + <para> Adjust the speed slider to fix the maximum speed Dasher will zoom at. A speed of 1 is + good for a beginner, increasing to 2 after 5 minutes' practice, and to 4 when you are + expert.</para> + </sect2> + <sect2> + <title>How to start dasher (version 2) on pocket PC</title> + <para> Install, run (wait a few seconds for it to load up the training file), then touch the + screen with the stylus to make dasher move.</para> + + <para>There are three special strongly-coloured squares in this version of Dasher, coloured + yellow, red (in some releases only), and green; all three squares do not produce any + character; these squares indicate sub-groupings of the alphabet. (Uppercase Alphabet, + Numerals (in some releases only), and Punctuation.)</para> + </sect2> + </sect1> + <!--<sect1 id="usage"> + <title>Using Dasher</title> + <sect2 id="menubar"> + <title>Menus</title> + <para> The menu bar, located at the top of the <interface>Main Window</interface>, provides + the following commands: </para> + <variablelist> + <varlistentry> + <term> + <guimenu>File</guimenu> + </term> + <listitem> + <para>This menu contains the following commands: <itemizedlist> + <listitem> + <para> + <guimenuitem>New</guimenuitem> + </para> + </listitem> + <listitem> + <para> + <guimenuitem>Open</guimenuitem> + </para> + </listitem> + <listitem> + <para> + <guimenuitem>Save</guimenuitem> + </para> + </listitem> + <listitem> + <para> + <guimenuitem>Save As</guimenuitem> + </para> + </listitem> + <listitem> + <para><guimenuitem>Append to file</guimenuitem> this command can be used to append + the current Dasher buffer to an existing text file.</para> + </listitem> + <listitem> + <para><guimenuitem>Import training text</guimenuitem> this command can be used to + add the contents of an existing text file to Dasher's language model.</para> + </listitem> + <listitem> + <para> + <guimenuitem>Quit</guimenuitem> + </para> + </listitem> + </itemizedlist> + </para> + </listitem> + </varlistentry> + <varlistentry> + <term> + <guimenu>Edit</guimenu> + </term> + <listitem> + <para> This menu contains the following commands: <itemizedlist> + <listitem> + <para> + <guimenuitem>Cut</guimenuitem> + </para> + </listitem> + <listitem> + <para> + <guimenuitem>Copy</guimenuitem> + </para> + </listitem> + <listitem> + <para> + <guimenuitem>Paste</guimenuitem> + </para> + </listitem> + <listitem> + <para> + <guimenuitem>Copy All</guimenuitem> + </para> + </listitem> + </itemizedlist> + </para> + </listitem> + </varlistentry> + <varlistentry> + <term> + <guimenu>Options</guimenu> + </term> + <listitem> + <para> This menu contains the following commands: <itemizedlist> + <listitem> + <para><guimenuitem>Preferences</guimenuitem>, which launches the <link + linkend="prefs"> + <interface>Preferences Dialog</interface> + </link></para> + </listitem> + <listitem> + <para><guimenuitem>Edit font</guimenuitem> alters the font used in the edit + box.</para> + </listitem> + <listitem> + <para><guimenuitem>Dasher font</guimenuitem> alters the size of the moving + characters.</para> + </listitem> + <listitem> + <para> + <guimenuitem>Dasher font size</guimenuitem> + </para> + </listitem> + <listitem> + <para><guimenuitem>Enter text into other windows</guimenuitem> this causes Dasher + to enter text into whichever window is selected.</para> + </listitem> + <listitem> + <para><guimenuitem>Control mode</guimenuitem> this causes an extra node to appear + at the bottom of the alphabet. Here, you can edit text directly from within + Dasher, cause Dasher to speak text that you have entered and stop or pause + Dasher.</para> + </listitem> + </itemizedlist> + </para> + </listitem> + </varlistentry> + <varlistentry> + <term> + <guimenu>Help</guimenu> + </term> + <listitem> + <para>This menu contains the following commands: <itemizedlist> + <listitem> + <para><guimenuitem>About</guimenuitem> shows basic information about + <application>Dasher</application>, such as author's name and version number. + </para> + </listitem> + </itemizedlist> + </para> + </listitem> + </varlistentry> + </variablelist> + </sect2> + + <sect2 id="prefs"> + <title>Customization</title> + <para> To change default settings, select <guimenuitem>Preferences</guimenuitem> command in + <guimenu>Settings</guimenu> menu. This launches the <interface>Preferences + dialog</interface>, shown in <xref linkend="prefs1"/>, <xref linkend="prefs2"/>, <xref + linkend="prefs3"/>, <xref linkend="prefs4"/> and <xref linkend="prefs5"/>. </para> + <figure id="prefs1"> + <title>"Alphabet" dialog</title> + <screenshot> + <screeninfo>Preferences dialog</screeninfo> + <graphic fileref="figures/prefs1.png" format="PNG" srccredit="ME"/> + </screenshot> + </figure> + <para> Dasher has support for many languages, and the choice of which language to write in is + made with this dialog. Note that some languages (for example, Hiragana, Korean and the + International Phonetic Alphabet) may require fonts that you do not have installed. For + information on creating your own alphabet files, see the <ulink + url="http://www.inference.phy.cam.ac.uk/dasher/" type="http">Dasher website</ulink>. </para> + <figure id="prefs2"> + <title>"Colour" dialog</title> + <screenshot> + <screeninfo>Preferences dialog</screeninfo> + <graphic fileref="figures/prefs2.png" format="PNG" srccredit="ME"/> + </screenshot> + </figure> + <para> Dasher has support for different colour schemes. The 'Default' colour scheme is a + simple rotation of colours that should work with any language. Enhanced colour schemes may + be used for languages with logical groupings (such as Hiragana or Korean) or to increase + contrast. </para> + <figure id="prefs3"> + <title>"Control" dialog</title> + <screenshot> + <screeninfo>Preferences dialog</screeninfo> + <graphic fileref="figures/prefs3.png" format="PNG" srccredit="ME"/> + </screenshot> + </figure> + <para> + <itemizedlist> + <listitem> + <para><guimenuitem>One dimensional mode</guimenuitem> maps the Y coordinate of the mouse + position to an X/Y coordinate, for use with one-dimensional input methods.</para> + </listitem> + <listitem> + <para><guimenuitem>Eyetracker mode</guimenuitem> optimisations for eyetrackers + specifically, makes Dasher behave as in one-dimensional mode near the right hand edge + of the screen.</para> + </listitem> + <listitem> + <para><guimenuitem>Start on left mouse button</guimenuitem> the left mouse button starts + and stops Dasher.</para> + </listitem> + <listitem> + <para><guimenuitem>Start on space bar</guimenuitem> the space bar starts and stops + Dasher.</para> + </listitem> + <listitem> + <para><guimenuitem>Start with mouse position</guimenuitem> when Dasher is paused, a red + box appears. Hold the cursor inside the red box until a yellow box appears. Hold the + cursor inside the yellow box. Dasher will then start..</para> + </listitem> + <listitem> + <para><guimenuitem>Copy all on stop</guimenuitem> when stopped, Dasher will copy all + text to the clipboard automatically.</para> + </listitem> + <listitem> + <para><guimenuitem>Speak on stop</guimenuitem> when stopped, Dasher will speak newly + entered text automatically.</para> + </listitem> + <listitem> + <para><guimenuitem>Pause outside window</guimenuitem> Dasher will pause if the mouse + pointer moves outside its window.</para> + </listitem> + </itemizedlist> + </para> + <figure id="prefs4"> + <title>"View" dialog</title> + <screenshot> + <screeninfo>Preferences dialog</screeninfo> + <graphic fileref="figures/prefs4.png" format="PNG" srccredit="ME"/> + </screenshot> + </figure> + <para> + <itemizedlist> + <listitem> + <para><guimenuitem>Orientation</guimenuitem> alters the direction that the text moves + in. If set to "Alphabet default", the alphabet file will choose the + appropriate direction for the alphabet.</para> + </listitem> + <listitem> + <para><guimenuitem>Show toolbar</guimenuitem> you can hide Dasher's toolbar if you wish. + Calling dasher with the '-o' switch will open a reduced-options version of dasher, + designed for entry into other applications.</para> + </listitem> + <listitem> + <para><guimenuitem>Show speed slider</guimenuitem> enable/disable the speed + slider.</para> + </listitem> + <listitem> + <para><guimenuitem>Show mouse position</guimenuitem> in some situations (such as + one-dimensional or eyetracker mode), the absolute position of the mouse will differ + from Dasher's perception of the mouse position. This option shows you where Dasher's + mouse is.</para> + </listitem> + <listitem> + <para><guimenuitem>Draw line between crosshairs and mouse</guimenuitem> helpful for + users who have trouble keeping track of the pointer.</para> + </listitem> + <listitem> + <para><guimenuitem>Draw box outlines</guimenuitem> increases the contrast around the + edges of boxes, to help distinguish between them.</para> + </listitem> + <listitem> + <para><guimenuitem>Change colour scheme automatically</guimenuitem> languages such as + Hiragana are aware of which colour scheme they should be using. This option allows an + alphabet to select its colour scheme automatically.</para> + </listitem> + </itemizedlist> + </para> + <figure id="prefs5"> + <title>"Advanced" dialog</title> + <screenshot> + <screeninfo>Preferences dialog</screeninfo> + <graphic fileref="figures/prefs5.png" format="PNG" srccredit="ME"/> + </screenshot> + </figure> + <para> + <itemizedlist> + <listitem> + <para><guimenuitem>Smoothing</guimenuitem> adds a "uniform" element to + the language model's predictions. A smoothing value of 100 will result in an entirely + uniform distribution being used each box will have the same size.</para> + </listitem> + <listitem> + <para><guimenuitem>Timestamp new files</guimenuitem> each file created by Dasher will + automatically have the current time in its filename.</para> + </listitem> + <listitem> + <para><guimenuitem>Distance from centreline for start on mouse position</guimenuitem> + controls the range for the 'Start on mouse position' option.</para> + </listitem> + <listitem> + <para><guimenuitem>Number of pixels that should cover the entire Y range</guimenuitem> + some input devices do not have enough gain to cover an entire Dasher window; this + option increases the gain of displacement on the Y axis.</para> + </listitem> + </itemizedlist> + </para> + </sect2> + </sect1>--> + <sect1 id="reallife"> + <title>How to use Dasher in real life</title> + + <para> Dasher can be used to communicate through your computer, and (to some degree) to control + your computer. Obviously, the simplest way to communicate with Dasher is to have the person + you're talking to watch the screen as you write. But there are lots of other ways to + communicate through Dasher.</para> + + <sect2> + <title>Copy to clipboard</title> + + <para> If you have the `copy on stop' feature switched on, then, every time you stop Dasher, + the contents of Dasher's text box get copied directly to your computer's clipboard. You can + then use the `Paste' function of another application to transfer what you've written.</para> + </sect2> + + <sect2> + <title>Speaking</title> + + <para>Dasher connects to your computer's built-in text-to-speech system. There are several + ways to use Dasher for speaking.</para> + + <para> You can choose to have Dasher `speak each word': every time you pass through the end of + a word (by entering a space character for example), that word gets spoken immediately.</para> + + <para> You can also choose to have Dasher `speak on stop': every time you stop Dasher moving, + everything that is in the text box gets spoken.</para> + + <para> Finally, you can speak exactly when you want to by switching on <emphasis>Control + Mode</emphasis> (which is under the Options Menu in Dasher version 3). This mode brings up + an extra box in the Dasher alphabet, coloured grey, which works a bit like an escape key on + a keyboard. If you go inside the Control box, you will find several control-related options: + Stop (red); pause (yellow); Move; Delete; and Speak. Inside the Speak box are the options to + `speak everything', `speak new' (just the new words that you wrote since the last + utterance), and `speak again' (which re-speaks whatever was last spoken).</para> + </sect2> + + <sect2> + <title>Save to file</title> + + <para> You can save whatever is in the text box of Dasher as a plain text file by clicking the + `Save file' icon in the icon bar, or using the menus at the top of the Dasher window + (selecting File then Save).</para> + </sect2> + + <sect2> + <title>Send text to other window</title> + + <para> You can also have whatever is written in Dasher be directly beamed to another window. + Enable the `send text to other window' option under the options menu. Then the window that + you select will get Dasher's output.</para> + </sect2> + + + + + <sect2> + <title>Font sizes</title> + + <para> Dasher has a text box (where the text appears) and a Dasher canvas (where all the fun + zooming action happens). You can change the font sizes of both these regions using the + Dasher menus at the top of the Dasher window. The two fonts are called the `Edit font' (for + the text box's font), and the `Dasher font', I think. (I forget the exact menu names in + Dasher version 3, sorry.) To change the edit font size bring up the usual dialog box and + change size. To change the Dasher canvas size, find the Dasher-size option, which offers + three to choose from, named something like: small, medium, and large.</para> + </sect2> + </sect1> + + <sect1 id="personalising"> + <title>Personalizing Dasher</title> + <para> There are three classes of files you can tweak in order to make Dasher work better for + you: <computeroutput>alphabet</computeroutput> files, <computeroutput>colour</computeroutput> + files, and <computeroutput>training</computeroutput> files.</para> + + <sect2> + <title>Personalizing the language model</title> + <para>Dasher's predictions (in version 3 of Dasher) are based not on a dictionary but on a + training text of ordinary text. For example, when you download Dasher version 3, it comes + with a file called <filename>training_english_GB.txt</filename>. This is 300 kbytes of + ordinary English harvested from various documents on the Internet. </para> + + <para> When you use Dasher, it stores everything you write in another personal file with the + same name as the training file. Next time you use Dasher, it reads in the original training + file and everything you wrote last time, to help it predict better. Dasher learns all the + time. To get the best results from Dasher: <itemizedlist> + <listitem> + <para>If possible, provide Dasher with a training text in your own style -- a plain text + file made from documents you have written before, and containing your own pet phrases, + friends' names, and so forth. Either append this file to the training file, or replace + the original training file.</para> + </listitem> + <listitem> + <para> If you think your personal training file may have become corrupted with rubbish + text, edit it using any plain text editor. (Or ask a friend to do this for + you.)</para> + </listitem> + <listitem> + <para> If you use Dasher for many months, the personal training file may become so large + that Dasher becomes slow to start up; if so, edit the training file using a plain text + editor. </para> + </listitem> + </itemizedlist></para> + </sect2> + <sect2> + <title>Personalizing the alphabet</title> + <para> Which characters are available to you, and their order, is determined by the alphabet + file. For example, you might use <filename>alphabet.english.xml</filename>. Dasher comes + with many alternative alphabets. You can edit alphabet files to change which characters are + in the alphabet, or their order. When you edit this xml file, it might be a good idea to + save the new file with a new name and change the name of the alphabets in the new file, to + avoid confusion. Each field in the xml file specifies a symbol by three items: the character + that should be <emphasis>displayed</emphasis> (<computeroutput>d=</computeroutput>...); the + character that goes into the <emphasis>text</emphasis> when this symbol is selected + (<computeroutput>t=</computeroutput>...); and the background colour number of the box for + this symbol (<computeroutput>b=</computeroutput>...), of which more below.</para> + </sect2> + <sect2> + <title>Personalizing the colour scheme</title> + <para>You can change the colours of the Dasher world in two ways. The colour file (for example + <filename>colour.xml</filename> or <filename>colour.euroasian.xml</filename>) specifies + the 200 colours in the palette that Dasher uses. Each line specifies red, green, blue + values.</para> + + <para> These colours are used to colour multiple objects in dasher. If for example you want to + change the colour of the <quote>red line</quote>;, change the second colour line of the + colour file, which reads <computeroutput><colour r="255" + g="0" b="0"/></computeroutput>. </para> + + + <para> You can change which of these colours is used for each symbol's box by changing the + <quote>b</quote>; field for that symbol in the alphabet file.</para> + </sect2> + + + + + </sect1> + <sect1 id="languages"> + <title>Languages</title> + + <para> Dasher works in hundreds of languages.</para> + + <para> For each language there is an alphabet file (or possibly more than one alphabet file). On + the Dasher website we aim to supply at least one training text for each language. If we don't + have a good training text for your language, please help us by making one and sending it to + us.</para> + + <para> See the Dasher website for the list of languages supported by Dasher. As of October 2005, + all the major languages of the world are well supported, with the exception of Japanese and + Chinese, for which Dasher version 3 offers only phonetic support (hiragana and pin-yin). In + Dasher version 4, we will provide full support for Japanese and Chinese. </para> + + <!-- %% Dasher works beautifully in Korean--> + + + </sect1> + + + + <sect1 id="specialneeds"> + <title>Dasher Special Needs Guide</title> + + <para> Dasher is designed on the principle of getting <emphasis>as much information as + possible</emphasis> from the gestures you can make.</para> + + <para> We can get information from whichever of the following is easiest for you: <orderedlist> + <listitem> + <para> + <emphasis>Continuous</emphasis> gestures (conveyed via a joystick, trackpad, head mouse, + or gaze tracker, for example) often achieve the highest rates of writing.</para> + </listitem> + <listitem> + <para> + <emphasis>Discrete</emphasis> gestures (switches, button presses) may be able to convey + information in three different ways:</para> + <orderedlist> + <listitem> + <para> The <emphasis>time</emphasis> at which you press a button can convey + information. (This idea is used in grid systems controlled by a single + button.)</para> + </listitem> + <listitem> + <para> + <emphasis>How long</emphasis> you press a button for can convey information. (This + idea is used in Morse code, where two durations are distinguished.) </para> + </listitem> + <listitem> + <para> The <emphasis>choice</emphasis> of <emphasis>which</emphasis> button you press + can convey information. (This idea is used in ordinary keyboards.)</para> + </listitem> + </orderedlist> + </listitem> + </orderedlist></para> + + <sect2 id="manual7"> + <title>Continuous gestures</title> + <para> Dasher's normal mode (<emphasis>mouse mode</emphasis>) is driven by a two-dimensional + continuous steering gesture. Dasher also has a <emphasis>one-dimensional mode</emphasis>, + for users who can control only one dimension.</para> + + <para> Can you make one or two continuous gestures? If you can operate a joystick, mouse, + trackpad, or rollerball, then you have a two-dimensional control. If you can point on a + touch-screen then that's perfect too. Can you move your nose around? If you can shake your + head, that's a one-dimensional control; if you can nod, that's two. A head-mouse can be + quite cheap, and it is a convenient way to drive Dasher. (We recommend the + <emphasis>SmartNav3</emphasis> from NaturalPoint, which costs about $200, and works under + microsoft windows only; this device used to be called the NavPoint TrackIR until 2002, when + that brand name was transferred to a different device. We also recommend the Origin + instruments <emphasis>Headmouse Extreme</emphasis>, which costs about $1000; it works as a + USB mouse on any computer.) Can you waggle one finger or one foot? These head-mice can be + used to track fingers and feet as well as heads. For a detailed comparison of SmartNav3 with + Headmouse Extreme, please see <ulink + url="http://www.inference.phy.cam.ac.uk/dasher/Headmouse.html" type="http">http://www.inference.phy.cam.ac.uk/dasher/Headmouse.html</ulink>.</para> + + <para>If you are severely paralysed, the best option may be a gaze tracker. Do you have + control of where your eyes are looking? With a gaze tracker we can write at 25 words per + minute. Gaze trackers are quite expensive: we paid $2000 for the QuickGlance from EyeTech + Digital Systems, and the Tobii eyetracker costs about $20,000. [We recommend both of these + systems. You attach QuickGlance to an existing computer; Quickglance II costs about $4000. + Tobii is a complete computer with built-in eyetracking cameras.] Dasher also works with the + Eye response <emphasis>Erica</emphasis>, with LC's <emphasis>Eyegaze</emphasis>, and with + Metrovision's gaze-tracker. All three of these systems are complete computers with + eye-tracking cameras attached.</para> + + <para> If joysticks, mice, rollerballs, and gaze trackers don't work, there may be a few other + ways to convey a continuous one-dimensional signal. Lips and eyebrows should both work, + though we don't know of any manufacturer selling appropriate devices. Breath is a + one-dimensional signal too. If you can control your breath, it should be possible to make a + breath mouse for you. We made our $22 breath mouse using a USB optical mouse, a belt, and + some elastic, and our most experienced user can write at 15 words per minute by breath + alone.</para> + <sect3> + <title>Starting and stopping</title> + <para>There are several ways of starting and stopping Dasher. Pressing a button (for + example, the left mouse button or the space bar) is one option. But if you can not press + any buttons, it's possible to start and stop using only continuous gestures: in the + options menu, select <quote>start on position</quote>; and switch on <quote>control + mode</quote>;. When control mode is switched on, the Dasher alphabet includes a special + Control node (a bit like an <computeroutput>Esc</computeroutput> key on a keyboard), + within which various control functions are available. When you are inside the control + node, Dasher moves more slowly than normal, for safety. The control node options include + `pause' and `stop'. Use `pause' if you are half-way through writing something, and want to + pause for a moment. Use `stop' when you have finished. <command>Pause</command> and + <command>stop</command> produce the same behaviour, except <command>stop</command> may + cause other automatic actions, such as `speak on stop', or `copy the text + <!--% to clipboard --> on stop'.</para> + + <para>When Dasher is paused or stopped, it can be restarted using any of the starting + methods that are enabled. If `start on position' is enabled, then whenever Dasher is + stopped a sequence of large targets will be displayed; you restart Dasher by pointing at + (or looking at) the first (red) target, then the second (yellow) target. (We use two + targets in sequence to make it difficult to start Dasher by accident.)</para> + </sect3> + <sect3> + <title>Recommendations for head-tracking</title> + <para> Many trackers have `smoothing' options, which determine the frequency with which the + mouse position is updated; these options are normally used to smooth and damp down the + mouse motion. For Dasher, we don't want such smoothing. We like instant, live, raw and + jerky mouse coordinates. If there is a `smoothing' control, turn it right down.</para> + + <para>The `gain' (sometimes called the `speed') of the head-tracker is also an important + setting to adjust. Some trackers' gains can be adjusted in software. You can also adjust + the gain by changing the geometry of your tracker: if you move the tracked dot from your + forehead to the brim of a baseball cap, for example, then you roughly double the gain. + Sitting closer to the tracker may also increase the gain. Find a gain setting that is + comfortable. I like high gain because it allows me to steer with very small head + motions.</para> + </sect3> + <sect3> + <title>Recommendations for gaze-tracking</title> + <para>For good results with gaze trackers, we strongly recommend that the gaze-tracker be + made to be as responsive as possible. Many trackers have `smoothing' options, which + determine the frequency with which the mouse position is updated and the number of + successive gaze images used to estimate the mouse position. These options are normally + used to smooth and damp down the mouse motion. For Dasher, we don't want such smoothing. + We like instant, live, raw and jerky mouse coordinates. When you are navigating, your eye + moves very quickly to the target you are interested in, and we want Dasher to respond + instantly. The ideal settings for Dasher may be very different from the ideal settings for + other software. Ask your eyetracker manufacturer to make it easy to change the settings + when switching application. </para> + + <para> Dasher has several options designed for use with gaze-trackers. We recommend using + <emphasis>eyetracker mode</emphasis> (under Options/Preferences/Control). In this mode, + the dynamics of Dasher are slightly different from standard dynamics, making + error-correction easier by gaze.</para> + + <para>If your gaze-tracker's calibration drifts with time, for example when your head moves, + then you should select the <emphasis>Autocalibrate eyetracker</emphasis> feature. When + this feature is switched on, Dasher keeps track of your steering and infers the vertical + calibration error, and corrects for it. You can see this correction taking effect by + noticing the vertical offset between the mouse position as displayed by Dasher (by the tip + of the red line) and the gaze-tracker's mouse position (shown by the system's mouse + cursor).</para> + + <para>To avoid difficulties with the mouse being bounded by the top and bottom of the + screen, we recommend choosing a window size for Dasher that is <emphasis>not</emphasis> + full-screen in size. Place the Dasher window so that there is a margin above and below the + Dasher canvas.</para> + + <para><emphasis>Technical note:</emphasis> As well as through mouse emulation, Dasher is + able to receive tracking information from gaze trackers, head trackers, or similar systems + directly by means of a system socket. This option can be configured in the 'Input Device' + section of the 'preferences' dialogue.</para> + </sect3> + </sect2> + <sect2 id="manual8"> + <title>Discrete Gestures</title> + <para>We have several versions of <emphasis>button Dasher</emphasis>, available in Dasher + Version 4.</para> + + <sect3> + <title>Are time-critical gestures not an option?</title> + <para>Some ways of conveying information make use of the <emphasis>timing</emphasis> of + gestures. However, some people can't make gestures at a required instant. For example, + spastics find it very difficult to do an action `exactly now!'</para> + + <para>If time-critical gestures are not an option, go to <xref linkend="no_time_critical"/>.</para> + + <para>If you <emphasis>can</emphasis> convey information by <emphasis>precisely + timed</emphasis> gestures, go to section <xref linkend="timed"/>.</para> + </sect3> + </sect2> + <sect2 id="no_time_critical"> + <title>`Timeless' choices of Dasher</title> + <para> So, you want to steer Dasher at your own pace. Can you make fairly-accurate continuous + gestures, given time? For example, can you position a pointer accurately on a screen, then + press a button to indicate that you are ready? Or can you touch a touch-screen fairly + accurately? <itemizedlist> + <listitem> + <para>If so, try <emphasis>click mode</emphasis>. Go to <xref + linkend="time_critical_button"/>.</para> + </listitem> + <listitem> + <para> Otherwise try <emphasis>direct button mode</emphasis> or <emphasis>menu button + mode</emphasis>. Go to <xref linkend="no_time_critical_button"/>.</para> + </listitem> + </itemizedlist> + </para> + <sect3 id="time_critical_button"> + <title>`Timeless' continuous Dasher: click mode</title> + + <para> In <emphasis>click mode</emphasis>, you position the mouse pointer where you want to + go, then press a button when you are ready. Dasher then zooms in on the position you + chose.</para> + + <para> Alternatively, if you have a touch screen, a single touch on the screen initiates a + zoom to that position.</para> + </sect3> + <sect3 id="no_time_critical_button"> + <title>`Timeless' choices of Button Dasher</title> + <para> How many different switches, keys, or buttons can you easily operate? </para> + <variablelist> + <varlistentry> + <term>1</term> + <listitem> + <para>With just one button, the only timeless way to convey information is by the + <emphasis>duration</emphasis> of your button-presses. Can you make a distinction + between short presses and long presses? If so, you can use <emphasis>menu + button-Dasher</emphasis>. Connect up your short press to the `menu' action, and + your long press to the `select' action. </para> + </listitem> + </varlistentry> + <varlistentry> + <term>2</term> + <listitem> + <para>You can use <emphasis>menu button-Dasher</emphasis>. Connect one button to the + `menu' action, and the other to the `select' action. If one button is easier to + press, make that button the `menu' button. </para> + </listitem> + </varlistentry> + <varlistentry> + <term>2.5</term> + <listitem> + <para>If you can easily press two buttons, and, for special occasions, you are able to + press a third button, you can use <emphasis>menu button-Dasher</emphasis> or + <emphasis>direct button-Dasher</emphasis>. </para> + <orderedlist> + <listitem> + <para> Set up <emphasis>menu button-Dasher</emphasis> as described above, and use + the third button as your escape key -- to make Dasher go away, for example. + [This feature is not currently provided within Dasher.]</para> + </listitem> + <listitem> + <para> In <emphasis>direct button-Dasher</emphasis>, each button produces a + particular navigation action such as `up', `down', or `back'. If you have 2.5 + buttons, map the convenient two to `up' and `down', and the inconvenient button + to `back'.</para> + </listitem> + </orderedlist> + </listitem> + </varlistentry> + <varlistentry> + <term>3</term> + <listitem> + <para>You can use <emphasis>direct button-Dasher</emphasis> or <emphasis>menu + button-Dasher</emphasis> as described above.</para> + </listitem> + </varlistentry> + <varlistentry> + <term>4, 5, 6, or 7</term> + <listitem> + <para>With more than three buttons, you have the option to use <emphasis>direct + button-Dasher</emphasis> with three, four, five, or six `forward' directions. + Please try <emphasis>menu button-Dasher</emphasis> too, even though it uses only two + buttons.</para> + </listitem> + </varlistentry> + <varlistentry> + <term>8 or more</term> + <listitem> + <para>Try <emphasis>direct button-Dasher</emphasis> and <emphasis>menu + button-Dasher</emphasis>. With this many buttons, you also have the option of using + a system like T9 -- the predictive-text system found on many mobile phones. You may + wish to investigate <emphasis>Tapir</emphasis>, a disambiguating on-screen keyboard + from the developers of Dasher.</para> + </listitem> + </varlistentry> + </variablelist> + </sect3> + </sect2> + + <sect2 id="timed"> + <title>Button Dashers that exploit timing</title> + <para>There are two Dasher modes which make use of precise timing information, and generally + require fewer button presses than the nn-time-critical modes:</para> + <sect3 id="onebutton"> + <title>(One button) dynamic mode</title> + <para>When started, Dasher will zoom towards a point towards the top or bottom of the + display. A short button press will switch the point of zoom to the opposite side. Text can + be entered by pressing the button when the desired phrase reaches the edge of the + display.</para> + </sect3> + <sect3 id="twobutton"> + <title>Two button dynamic mode</title> + <para>Dasher zooms continuously towards the centre of the screen, with the two buttons being + used to shift the display up and down. The buttons should be pressed whenever the desired + text is aligned with the two markers.</para> + </sect3> + <sect3> + <title>Correcting errors</title> + <para>In either dynamic mode, there are three options for error correction: using an + additional button, long presses or multiple presses. In all cases these actions will + switch to a mode where Dasher unzooms at a fixed rate. In this mode, one more press will + stop Dasher and a second press will return Dasher to forward zooming.</para> + </sect3> + </sect2> + </sect1> + + <sect1 id="modesummary"> + <title>Summary of Dasher Modes</title> + <para> The various modes of <application>Dasher</application> are listed below. The mode may be + changed via the <emphasis> + <quote>edit</quote> + </emphasis> menu. Select <emphasis> + <quote>Preferences</quote> + </emphasis> and then <emphasis> + <quote>Control</quote> + </emphasis>. Each mode has a number of variable parameters associated with it which can be + adjusted using the <emphasis>options</emphasis> button located below the mode menu. </para> + + <sect2 id="normal"> + <title>Normal</title> + <para> The original <application>Dasher</application> mode. Functions using a two dimensional + steering gesture, from a mouse, say. A one-dimensional mode is also available, for those who + may not be able to control two-dimensions, and a special eyetracker mode is available for + those using Dasher with a gaze or head tracker. Dasher can be started using mouse position + alone if clicking is not possible - select 'Start on Mouse Position' and 'Circle Start' to + allow starting and stopping by dwelling in the circle in the centre of the display. The 'Two + Box' start mode starts Dasher by dwelling in the two boxes in sequence. In the latter case + stopping must be done through control mode.</para> + </sect2> + + <sect2 id="click"> + <title>Click Mode</title> + <para> In <emphasis>click mode</emphasis> you position the mouse pointer where you want to go, + then press the button when you are ready. <application>Dasher</application> then zooms into + the place where you clicked. </para> + </sect2> + + <sect2 id="menu"> + <title>Menu Mode</title> + <para> One button is used to select a location, and once a second button is pressed + <application>Dasher</application> zooms to that location. The large box occurring last in + the cycle is used to zoom out.</para> + </sect2> + + <sect2 id="direct"> + <title>Direct Mode</title> + <para>Direct mode is similar to menu mode, except boxes are assigned directly to each button + rather than being selected in sequence.</para> + </sect2> + + <sect2 id="compass"> + <title>Compass Mode</title> + <para>Compass mode makes use of four buttons. Two buttons are used to control vertical + position. When the required vertical position has been reached a third button is pressed to + zoom in. After zooming in on the location, the user once more selects vertical position. A + forth button zooms out if an error is made.</para> + </sect2> + + <sect2 id="dynamic"> + <title>(One Button) Dynamic Mode</title> + <para> + <application>Dasher</application> continually zooms in and a single button may be used to + move <quote>up</quote> and <quote>down</quote>. There is also a <emphasis>Two Button Dynamic + Mode</emphasis> where two buttons are used to control motions <quote>up</quote> and + <quote>down</quote>. A third button, long presses or multiple presses can be used to + unzoom and correct errors. </para> + </sect2> + + <sect2 id="buttondynamic"> + <title>Two Button Dynamic Mode</title> + <para> + <application>Dasher</application> continually zooms in, whilst two buttons are used to + control vertical motion. Correction is performed in the same way as One button dynamic + mode.</para> + </sect2> + </sect1> + + + + + + <sect1 id="authors"> + <title>Authors</title> + <para> + <application>Dasher</application> was written by the members of The Dasher Project + (<email>dasher@inf.phy.cam.ac.uk</email>). To find more information about it, please visit + <application>Dasher's</application> + <ulink url="http://www.inference.phy.cam.ac.uk/dasher/" type="http">Web page</ulink>. Please + send all comments, suggestions, and bug reports to the <ulink url="http://bugzilla.gnome.org/enter_bug.cgi?product=dasher" + type="http">GNOME bug tracking database</ulink>. Instructions for submitting bug reports can + be found on-line at <ulink url="http://bugzilla.gnome.org/page.cgi?id=bug-writing.html" type="http"> + http://bugzilla.gnome.org/page.cgi?id=bug-writing.html</ulink>. If you are using GNOME 1.1 or later, you can + also use command <command>bug-buddy</command> for submitting bug reports.</para> + <para> This manual was written by The Dasher Project (<email>dasher@inf.phy.cam.ac.uk</email>). + Please send all comments and suggestions regarding the manual to the GNOME Documentation + Project at <email>gnome-doc-list@gnome.org</email>.</para> + </sect1> +</article> diff -ur -urN dasher-DASHER_5_0_0_beta/Data/Help/Gnome/Makefile.am dasher-DASHER_5_0_0_beta.gdu/Data/Help/Gnome/Makefile.am --- dasher-DASHER_5_0_0_beta/Data/Help/Gnome/Makefile.am 2016-04-08 01:17:00.000000000 +0300 +++ dasher-DASHER_5_0_0_beta.gdu/Data/Help/Gnome/Makefile.am 2019-09-10 16:57:19.895098693 +0300 @@ -1,10 +1,8 @@ -include $(top_srcdir)/gnome-doc-utils.make -dist-hook: doc-dist-hook +@YELP_HELP_RULES@ -DOC_MODULE = dasher -DOC_ENTITIES = -DOC_INCLUDES = -DOC_FIGURES = figures/figure2.png \ +HELP_ID = dasher +HELP_FILES = index.docbook +HELP_MEDIA = figures/figure2.png \ figures/main.png \ figures/prefs1.png \ figures/prefs2.png \ @@ -20,5 +18,4 @@ figures/exampleHad3a.png \ figures/exampleHad4.png -DOC_LINGUAS = ca cs de el en_GB es eu fr oc ro ru sl sv zh_CN - +HELP_LINGUAS = ca cs de el en_GB es eu fr oc ro ru sl sv zh_CN diff -ur -urN dasher-DASHER_5_0_0_beta/Src/Gtk2/dasher_main.cpp dasher-DASHER_5_0_0_beta.gdu/Src/Gtk2/dasher_main.cpp --- dasher-DASHER_5_0_0_beta/Src/Gtk2/dasher_main.cpp 2016-04-08 01:17:00.000000000 +0300 +++ dasher-DASHER_5_0_0_beta.gdu/Src/Gtk2/dasher_main.cpp 2019-09-10 16:21:58.321162856 +0300 @@ -990,7 +990,7 @@ GError *err = NULL; scr = gtk_widget_get_screen(GTK_WIDGET(pPrivate->pMainWindow)); - if (!gtk_show_uri(scr, "ghelp:dasher", gtk_get_current_event_time(), &err)) { + if (!gtk_show_uri(scr, "help:dasher", gtk_get_current_event_time(), &err)) { GtkWidget *d; d = gtk_message_dialog_new(GTK_WINDOW(pPrivate->pMainWindow), GTK_DIALOG_MODAL,
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor