sas@BFLY-VAX.BBN.COM.UUCP (04/06/87)
I am motor impaired and find it tedious and stressful to use a mouse. I can touch type and don't mind learning a few new keystrokes. I would like to use X windows with my desktop SUN. Right now, I am using a VT-100 hooked up with a wire, but the SUN can fit more lines on its screen. Since I use EMACS, X windows requires using a mouse to switch between telnet windows and the editor. Is there some way to bind the circulate windows command to one of the 34 function keys on my SUN keyboard? I would really like something like the Symbolics interface which lets me press a key and then a window identifier to quickly select that window. Thanks, Seth
rose@THINK.COM.UUCP (04/06/87)
From: Seth Steinberg <sas@bfly-vax.bbn.com> Since I use EMACS, X windows requires using a mouse to switch between telnet windows and the editor. Is there some way to bind the circulate windows command to one of the 34 function keys on my SUN keyboard? I would really like something like the Symbolics interface which lets me press a key and then a window identifier to quickly select that window. If his request seems exotic, something's wrong in X-land. As a matter of principle, you should look most suspiciously at any functionality which is available from one input device only. Why must there be a necessary relation between an operation (e.g., select window) and the means by which it is requested (e.g., mouse)? More specifically: Anything you can do with the mouse, you should be able to do with the keyboard, and vice versa. Reasons: * Switching between home position on a keyboard and holding a mouse costs time and interruptions in concentration. The fewer causes for such interruptions the better. * Different people prefer or need different interfaces, at different times. (See Seth's message, and previous reason.) * If your system is less than completely reliable, sometimes the keyboard or mouse goes off in the trees, and you need to issue commands to get it back. * Greater symmetry makes a system easier to learn and use. Examples: Why not a keyboard menu? If you need just to type a "Y" or "N", it may be faster to pop up a little keyboard icon and mouse the letter. The Symbolics system lets you get a window with Mouse-Left, <Select-L> or via a menu. John Bruner's UW program selects window #N via Option-N. The Apollo mouse position can be modified by cursor keys. (Yes, I know about the converse proposition on that system: bumping the mouse makes your cursor jump unexpectedly. But how come so many of the Apollo DM's excellent features have not been emulated by other systems? E.g., in Genera 7 writing a char to a window clobbers your window positioning. Apollo has a nifty distinction between windows and pads which cures this bug among many others.) I'm usually just a listener, but dealing with unnecessarily asymmetric user interfaces is one of my pet peeves. -- John Rose
jg@jumbo.UUCP (04/06/87)
In article <8704061322.AA23763@ATHENA> sas@BFLY-VAX.BBN.COM (Seth Steinberg) writes: > >Is there some way to bind the circulate windows command to one of the >34 function keys on my SUN keyboard? I would really like something >like the Symbolics interface which lets me press a key and then a >window identifier to quickly select that window. In V10, there is no way to do what you want. V11 has the right facilities to implement commands attached to arbitrary keyboard keys, so it will be possible to implement such a user interface when V11 is available. I recommend strongly that you continue to agitate for this capability in the window managers people are beginning to write for V11; failing that, you will be able to write your own... I will forward your message to the appropriate people I know of, but nothing like some "customer pull" to see that it actually happens. Jim
gancarz@decvax.UUCP (04/07/87)
It wasn't long after uwm was released before I hacked up 'twm'. Twm is a kind of companion for uwm that takes window manager functions as command line input. It's great for aliasing f.inconify to function keys and the like. I suppose you could make a case for adding the functionality to uwm, but twm is small and efficient because it doesn't have all the extra interactive stuff that uwm provides. Where can you get twm? Good question. The intent (not commitment) is to make it part of DEC's next Ultrix-32W distribution. That won't help you much if you're running on another vendor's hardware. I don't know whether it will be put in the public domain or not. I guess that means that I'd have to test it on something other than a VAX. :-) I think Jim (Gettys) has the right idea: Scream loud enough and you'll see that kind of functionality appear in the X11 window managers--which it should. --Mike
wohler@sri-spam.UUCP (04/07/87)
here's my loud scream for allowing uwm functions to be bound to function keys. i bound sunwindow functions like open, close, expose, hide, etc. to function keys via the .ttyswrc file, and found that i used them a LOT! also based on the sunwindow scheme, you could have the function keys send predefined key sequences to the current window. other uses for the function keys are only limited by the imagination. use 'em. --bw
bob@osu-eddie.UUCP (04/08/87)
In article <8704061322.AA23763@ATHENA> sas@BFLY-VAX.BBN.COM (Seth Steinberg) writes: >I am motor impaired and find it tedious and stressful to use a mouse. >I can touch type and don't mind learning a few new keystrokes. Seth, Not to deter you from your original search for a button-driven window manager, but are you able to use a trackball? It is a pointing device that is essentially a mechanical ball mouse lying on its back, and you stroke the ball directly with your fingertips. They are used in several arcade games. A trackball requires far simpler large motor use than a mouse, and you seem to have sufficient small motor (fingertips for typing) ability to handle it. The Sun `Catalyst' catalog (a listing of 3rd-party things that work with Suns, compiled and distributed seasonally by Sun) lists two or three trackballs that claim to be plug-compatible with the optical mouse that Sun sells. This would mean that X could never tell the difference, and you could continue to use and develop the same interfaces as the rest of the upright-rodent-bound world. Disclaimer: As much as I would like to, I have never used a trackball, but it sure seems like a nifty idea to play with for a while. Also, I have no financial interest in either Sun or any peripheral manufacturers. I hope you find a solution that works for you. -- Bob Sutterfield, Department of Computer and Information Science The Ohio State University; 2036 Neil Ave. Columbus OH USA 43210-1277 bob@ohio-state.{arpa,csnet} or ...!cb{osgd,att}!osu-eddie!bob (614)292-7348 (office) or -0915 (operators) or -7325 (answering machine)
rusty@weyl.Berkeley.EDU.UUCP (04/09/87)
In article <8704061526.AA14490@ican.think.com> rose@THINK.COM writes: >As a matter of principle, you should look most suspiciously at any >functionality which is available from one input device only. >Why must there be a necessary relation between an operation >(e.g., select window) and the means by which it is requested >(e.g., mouse)? > >More specifically: Anything you can do with the mouse, >you should be able to do with the keyboard, and vice versa. How would you implement, for example, something like MacPaint, where everything can be done from both the keyboard and the mouse? -------------------------------------- rusty c. wright rusty@weyl.berkeley.edu ucbvax!weyl!rusty
haynes@DECWRL.DEC.COM (04/09/87)
"Anything you can do with the mouse, you should be able to do with the keyboard, and vice versa." Why? Should I be able to enter text with my thermometer? Scan in images with my trackball? Tell the time of day with my knob box? Don't be ridiculous. -- Charles
mermell@csse32.DEC.COM (Andy, CSSE DSS, ZK2-1/N71 381-2226) (04/09/87)
> "Anything you can do with the mouse, you should be able to do with the > keyboard, and vice versa." > > Why? Should I be able to enter text with my thermometer? Scan in images > with my trackball? Tell the time of day with my knob box? > > Don't be ridiculous. > > -- Charles > I'll give you 4 reasons. The first and foremost was stated by the original requester, I'll rephrase it: Some people may have handicaps which allow them to use a keyboard but not a mouse. #2: At a conference (ACM SIGCHI) I watched a demonstration of (some other company's) animation software (on some other company's PC). The mouse had disappeared (either stolen or taken for safekeeping, both likely events at large trade shows). With an apology that "some actions would be clumsier to perform" the speaker went on to demonstrate *EVERY* feature in the software package, emulating the mouse from the keyboard. This sure makes a better impression than saying "well, I can do X, but not Y, without a real mouse, so let's just pretend you saw that feature" or "demo canceled, go away, don't see my product, don't want to buy it." #3: (if implemented right) it allows the cursor to be positioned to an exact pixel and then not jiggled when the button is pressed. #4: The workstation is disabled without a functioning mouse. This is frustrating and unnecessary. (for want of a $50 mouse a $40000 workstation is useless). Especially because, with a keyboard, an input device (with arrow keys, no less) still exists.
dce@mips.UUCP (04/09/87)
In article <8704090458.AA11356@decwrl.dec.com> mermell@csse32.DEC.COM (Andy, CSSE DSS, ZK2-1/N71 381-2226) writes: > >> "Anything you can do with the mouse, you should be able to do with the >> keyboard, and vice versa." >> >> Why? Should I be able to enter text with my thermometer? Scan in images >> with my trackball? Tell the time of day with my knob box? >> >> Don't be ridiculous. >> >> -- Charles > >I'll give you 4 reasons. The first and foremost was stated by the original >requester, I'll rephrase it: Some people may have handicaps >which allow them to use a keyboard but not a mouse. and more arguments as to why keyboards should be able to perform other input device functions. Andy, you got the comment backwards. The idea is that the "vice versa" isn't correct in all cases. Your "4 reasons" have little to do with the "Why?" above. I think that we can all see why keyboards must be able to implement pointing device functions. The question is: should various external devices be able to implement all keyboard functions? Charles' point is that some devices are specialized in such a way that complete interchangeability is not possible. You could enter text with a thermometer (and some way to say "now!"), but the only person that would want to do that is someone that is completely paralyzed but has body temperature control. I will say that a mouse or trackball with a reasonable number of buttons can be used in the place of a keyboard given proper software, and at some future date it should be possible to interchange "pointing devices". I can see it now: system troubleshooters with their favorite mice and trackballs hanging from their belts as they go from system, much like slide-rules and calculators have done in the world of math and engineering in the past. -- David Elliott {decvax,ucbvax,ihnp4}!decwrl!mips!dce
chan@hpfcms.UUCP (04/09/87)
Re: trackballs as an "easier" mouse. I always thought that a trackball would be much nicer than a mouse, but when I finally got to try one out this week, I discovered a basic problem with using one with X Windows. It is very difficult to hold down a button and move the ball at the same time. Since X seems to be mostly bound to "click and drag", this makes the trackball untenable, at least for a spaz like me. Other trackballs may have their buttons positioned to make this easier, but it seems like a fundamental problem since you basically need to push the buttons and move the ball with the same part of your anatomy (doesn't that conjure up some amusing images?). -- Chan Benson Hewlett Packard Company Fort Collins, CO {ihnp4 | hplabs}!hpfcla!chan
haynes@DECWRL.DEC.COM.UUCP (04/09/87)
I think you missed my point, the original contention was that *any* action that could be performed by only one input device was suspect. The conclusion reached from this premise was that it was necessary to be able to do any mouse action from the keyboard. In your example, if the keyboard had been missing, would the demo have been possible? The original claim was "and vice versa". As far as I can tell, all you have claimed is that any mouse action should be available from the keyboard, to support physically disadvantaged users. Now while I think that this is a laudable goal, I don't believe that *all* of our software should be tailored to support *all* physical limitations. For example, must we restrict the use of color in user interfaces to support colorblind people? How about people with more severe motor difficulties, such that they cannot use a keyboard? The question becomes one of degree. I don't think anyone would contend that we should eliminate all CRT's and all use Braille printers to support blind programmers. The demand that no interface can depend on a mouse is exactly analagous. I have used systems where you could both type with a mouse, and specify position with the keyboard. It was a lot like watching a dancing bear. The amazing thing was not how well it danced, but that it danced at all. Modern input devices are optimized to perform particular functions. The keyboard is primarily a text input device, the best one ever invented. The mouse is a locator, and pointing device, and a very good one, probably the best for workstation applications (see Card and Moran). *Requiring* the pointing device to be able to input text, or the text input device to be able to specify positions is as silly as requiring your knob box to be able to scan images. -- Charles
H_Eidnes%vax.runit.unit.uninett@NTA-VAX.ARPA.UUCP (04/10/87)
Since noone has brought up this particular example, I thought I would mention it: Quite a while ago we had an operating system called Accent (or Spice) running on some of our (now sold) Perq-1s. What I'd like to mention about this system, was that its window manager both had a keyboard interface in addition to the mouse interface. With the keyboard it was possible to (de)iconify, select windows for keyboard input, move windows from top/bottom etc. Resizing and moving of the windows was not supported, but I'd guess the main reason was that the Perq had no cursor keys. If someone would care for a more detailed description, I would be happy to dig it out from the documentation (we still keep it around). I remember that the keyboard bindings for the window-manager functions were "natural" and easy to remember, and I preferred the keyboard interface to the mouse interface (the bindings to mouse keys are harder to remember than ordinary keyboard keys). ------- E-Mail: <h_eidnes%vax.runit.unit.uninett@nta-vax.arpa> H}vard Eidnes (or TeXish: H\aa vard Eidnes) Division of Computer Science, Norwegian Institute of Technology
len@geac.UUCP (Leonard Vanek) (04/10/87)
In article <35@decvax.UUCP> gancarz@decvax.UUCP (Mike Gancarz) writes: > >I think Jim (Gettys) has the right idea: Scream loud enough and you'll see >that kind of functionality appear in the X11 window managers--which it >should. > Okay. Consider this a scream. I would like to get a server implementing a subset of the X protocol running on a big Vax and driving one or more vt220s. Obviously, the window manager talking to this server will not have access to a mouse at all, so there must be an alternative method of giving it ANY COMMAND from the keyboard! Mike, would your twm work on our Vax 8650 -- assuming that I had a vt220 X server, of course? By the way, does anyone have such a server? I have had a go at cutting out the graphic and mouse dependent parts of the X11 protocol, but have not attempted an implementation because I do not have version 11 of X. --------------------------------------------------------------------- Leonard Vanek phone (416) 475-0525 Geac Computers International 350 Steelcase Rd. West Markham Ontario L3R 1B3 Canada UUCP ... {allegra,ihnp4,decvax,pyramid} !utzoo!yetti!geac!len
paul@osu-eddie.UUCP (04/11/87)
It's interesting to note that the people who know the least about the psychology and philosophy of user interfaces are the quickest to condemn ideas such as this. For instance, how does the enforced use of a mouse effect someone who has (for whatever reason) poor hand-eye coordination? What about someone who has the use of only one hand? And what about speed and ease of use considerations for normal people? Do YOU like to have to use the mouse to do trivial cursor motions in MacWrite (as an example of the _wrong_way_)? Function keys can be a mixed blessing, but so can extra shift keys, the use of keyboard and mouse button combinations (just TRY to use the default setup for uwm with one hand behind your back; then think about someone who only HAS one hand...). Some of the considerations of a user interface are religious, but many aren't. Consistency is a BIG plus also. For instance, clicking on an iconified xterm makes it open, but the same is not true of a closed GnuEmacs. Stalman also felt the need to ignore the "standard" mouse icon for in text, and switched it for the arrow; making Emacs different in yet another way. (Actually, despite the fact that I use it, I could flame about the inconsistencies of Emacs for hours...) A given user interface system (such as X and all X applications) should by default be very constant and consistent, but it should be very easy to customize the defaults also. The implementation of this may be much harder, since the model looks something like: user actions --> mapping to standard action descriptions --> utilities and applications rather than user actions --> utilities and applications but the ability to change actions UNIFORMLY is worth the extra work. Using this model, I could make my F3 key send a (de)iconify event to the current window by only changing the action mapping. Note also that the concept of the current window would also be definable in the action mapping. Just because you don't want to do window ops with your keyboard doesn't does not give you license to prohibit it entirely. If you don't like it, then don't use it, but let those that might want to be able to do so. Isn't this the whole idea behind a customizable window system anyway? -- Paul Placeway Department of Computer and Information Science SNail: The Ohio State University 2036 Neil Ave. Columbus OH USA 43210-1277 ARPA: paul@ohio-state.{arpa,csnet} UUCP: ...!cb{osgd,att}!osu-eddie!paul -=- -- Paul Placeway Department of Computer and Information Science SNail: The Ohio State University 2036 Neil Ave. Columbus OH USA 43210-1277 ARPA: paul@ohio-state.{arpa,csnet} UUCP: ...!cb{osgd,att}!osu-eddie!paul
schoet@ernie.Berkeley.EDU.UUCP (04/16/87)
This may not be the answer you wanted, but the Commodore Amiga has the ability to do with the keyboard ANYTHING you can do with the mouse. This takes advantage of two extra keys on the keyboard and a very generalized input handler. I have also seen (for the Amiga) a "light pen" equipped with a lens that replaces the mouse. This thing is about the size of a pen and has such good optics that you can stand across the room and point at the screen to move the mouse. It is also equipped with two microswitch buttons for mouse buttons. The company that produced it is working on some handicapped applications including attaching it to some kind of headpiece. If you want more information on this, respond to me and I can find out the company name and how to get in touch with them. There are people working on an X port to the Amiga, so your favorite application might still be available. I don't have experience with the X system, but it occurs to me that a way to simulate mouse movements with the keyboard would be to write a keyboard handler that filtered out special control codes and sent messages to whatever port would have been getting messages from the mouse. The special keyboard handler would then pass all other keystrokes to the regular keyboard handler. In other words, you send messages from your new handler to make the system think the mouse did something. I don't even know if this is way off base, but from the brief scanning of the Xlib documentation I've done, it seems like a potential solution.(?) replies to ...ucbvax!schoet Steve Schoettler