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,