From [EMAIL PROTECTED] Thu Jul 13 03:09:17 2006
Date: Thu, 13 Jul 2006 03:09:17 -0500
From: Cheryl Homiak <[EMAIL PROTECTED]>
Reply-To: General discussions on all topics relating to the use of Mac OS X by the
blind <[email protected]>
To: "List, Mac-discuss" <[email protected]>
Subject: Brltty for the Terminal on Macosx
Hi all.
Thanks to lots of help from Dave Mielke working on my machine via
ssh, I have been able to set up brltty to run on my Mac via my
usbserial cable using the braillelite 40; others with a brltty-
supported usb or serial display or notetaker should be able to do the
same. I know, for instance, that it is being successfully used by
David Poehlman with an Alva satellite. However, let me emphasize that this
will only work for your
use of the terminal application; it will not at this time allow you to
use macosx itself. We still do not have a screen driver for macosx;
the reason we can use brltty in the terminal is that we use the
"screen" program combined with a patch provided with brltty which
allows access to the screen via shared memory. If you want a more
technical explanation of this, I'm not the one to give it!!!
Brltty works beautifully in terminal--
so beautifully that it has made me realize how very much I would like
eventually to have braille for the whole system. for now, those of
you who make use of the terminal application and would make more use
of it if vo interacted more easily with it, will probably want to
consider trying to install brltty and get braille support going.
Likewise, those who don't care that much about the terminal but have
enough knowledge of Macosx that they might be able to do some
experimenting toward braille on Macosx might want to set up brltty.
Those who want to use only Macosx itself and don't want to work in
the terminal and don't want to do compiling probably will want to
wait until braille for Macosx becomes a reality.
Having prefaced my instructions with those comments, I'm going to
give just a brief outline of what you need to do to get brltty
working with terminal. I'm going to assume for now that most people
doing this will have some background in compiling and installing
packages, and that people can go to
http://www.mielke.cc/brltty
for information and can also look at the documentation in the source
when compiling. I will not be going into any detail about either the
brltty or screen programs themselves.
1. Make sure your display or notetaker is one of those supported by
brltty.
2. Make sure you have the tools installed that you need to download
from a svn repository (subversion/svn and its libraries and autogen)
and to compile and install packages from source. I have xcode, fink
and darwinports on my computer in addition to what comes already on
the Mac; I don't know for sure just how much of this is necessary but
you will be compiling and installing both brltty and screen so you do
need the tools for doing that.
The following steps probably will have to be done using "sudo" or
"su" as you will need root privileges. If in doubt, you can try them
as a user, but if files cannot be created, etc. you will know they
require root privileges. If you are working with the source in your
home directory, you can probably do the svn checkout and the ./autogen at least as a user; you definitely will need root privileges
for the "make install" process unless you install brltty in your home
directory.
3. Go to the directory under which you want the brltty source
directory and checkout the source using svn. Follow the directions at
http://www.mielke.cc/brltty/download.html#repository
4. From within the brltty directory, run
./autogen
./configure
make install
Remember that you will most likely have to use "su" or "sudo" to do these
steps as root.
5. Create your /etc/brltty.conf. You can either use brltty/Documents/
brltty.conf as a guide and create your own /etc/brltty.conf or you
can copy the file there and uncomment the relevant lines or even
delete the ones you don't need. Much can be done just by uncommenting
needed lines and commenting out unneeded ones but you will probably
have to type in the name of your device-driver if it's usbserial.
With a brltty.conf in place, you don't have to specify anything on
the command line when starting brltty.
6. In the Patches directory of the source tree, you will find a
screen-4.0.1.patch and a screen-4.0.1.txt. You must download that
exact version of "screen"; the url is given in the .txt file and
patch it with the patch; instructions for this are also in the .txt
file. You do NOT need to modify brltty in any way; by default on the
Mac, the screen driver was configured and will be used when you start
brltty.
7. compile and install screen; you can look through the Makefile to
see if it is installing where you want it. You use ./configure, make
and make install. There is some discussion in the INSTALL file in
the screen-4.0.1 source about whether or not to install screen setuid
root. Keep in mind that if you run screen as root, you must also run
brltty as root; if you run screen as user you must run brltty as
user. The reason for this is that brltty can only read the shared
memory segment if run as the same user as is screen. Interestingly,
screen creates a unique shared memory
segment, owned by the current user, per home directory when it's
started, permitting each user to have his own shared memory segment,
and his own brltty, if there is more than just one display. Since you
will have to do the "make install" as root, if you do not want to run
screen, and therefore brltty, as root, after the install you should do:
chmod u-s /usr/bin/screen-4.0.1
and then a normal user can run screen.
8. As your normal user, Start screen. You may have to interact with
the text and hear that you must press space or return to end the
welcome message; this can be turned off later in your ~/.screenrc file.
9. As your normal user, With your notetaker or display connected and
set up as needed, start brltty.
Notes:
1. Some keystrokes won't work because they are used by screen; ctrl-a
for instance is a prefix in screen to many commands. You can make
some key binding changes in a ~/.screenrc but make sure you have
thought through the implications of changes before you make them.
2. Keyboard emulation does work in brltty.
3. Brltty does have speech support. However, when I tried turning on
"autospeak" with the speech support with my braillelite, it seemed to
cause delays in the braille display so for now I'm using vo for any
speech I want. In the documentation for your display, you can look
for key combinations that will allow you to hear individual lines.
4. You may find that vo does not consistently echo as you type in
terminal or that it quits echoing altogether. As in terminal with vo
only, cmd-k may help this but I found that typing "clear" (without
the quotes) and hitting enter brought back vo speech much more
consistently. You can of course also interact with text but I usually
look at the braille display instead now.
5. Support for midi sound alerts has just been added which you can set via
the preferences menu in brltty. There is a vast array of midi instrument
choices through which you can toggle. I set the volume for midi in the
preferences menu to 100%.
6. The usual installation for a system-wide brltty sets up the
executable in /bin, library files in /lib (which is created even
though the Mac doesn't have one) and most files in /etc. Since use of
brltty with screen is user-dependent and not system-wide, you may
want to change the installation when running ./configure. For
instance, I have my darwinports in /opt/local, so I could choose to
have brltty contained also in /opt/local or just in /opt instead of
spread throughout the system. In this case, I could have more than
one svn revission of brltty and could do a symlink to the one I
wanted to use as the default. This gives me an easy way to go back to
a previous version if installing the latest revission turns out to be
problematic. So you may want to give some thought to where you want
to install before beginning this process. If you decide to install in
an alternative location, You also can then decide whether you want
your brltty.conf and preferences files to be in /etc or within the
installation location.
For example, let's say you want to install in /opt/brltty. If
you still want to have brltty.conf and the preferences files in /etc
then
configure with:
--with-execute-root=/opt/brltty
If you want to have brltty.conf and the preferences files within the
install
location, e.g. within /opt/brltty/etc, then configure with:
--prefix=/opt/brltty
If you use an alternative installation location, be sure to place
your brltty.conf accordingly.
8. You still have access to the terminal without screen by typing cmd-
n. You can create multiple windows within screen and switch between
them. You also can exit screen and restart it without killing brltty
and brltty should still be working.
9. If anybody has a usbserial cable that seems to only
work for one response, you shouldn't have problems with brltty not
working. But each time you kill brltty and want to restart it, you
may have to unplug the cable from the usb port and replug it. I had such
problems with the prolific cable and driver (besides having to search
online for the driver) I now use
the keyspan usb-serial converter and I have no such problems with that
cable and driver.
--
Cheryl
"Where your treasure is,
there will your heart be also".
--
Cheryl
"Where your treasure is,
there will your heart be also".
--
Cheryl
"Where your treasure is, there will your heart be also."