Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!ut-sally!husc6!panda!genrad!decvax!linus!philabs!micomvax!musocs!mcgill-vision!mouse From: mouse@mcgill-vision.UUCP (der Mouse) Newsgroups: comp.sources.wanted Subject: Re: Dvorak keyboard translator wanted Message-ID: <582@mcgill-vision.UUCP> Date: Wed, 17-Dec-86 19:25:38 EST Article-I.D.: mcgill-v.582 Posted: Wed Dec 17 19:25:38 1986 Date-Received: Fri, 19-Dec-86 00:11:39 EST References: <329@stl.stc.co.uk> <1006@theory.cs.cmu.edu> Organization: McGill University, Montreal Lines: 43 In article <1006@theory.cs.cmu.edu>, tsf@theory.cs.cmu.edu (Timothy Freeman) writes: > Does anyone out there have a filter for some flavor of Unix which > makes a QWERTY keyboard behave like a DVORAK keyboard? The idea is > that I run this filter, and I relabel my keyboard in a DVORAK > fashion, and then the keys work as labelled without any hardware > changes. This is a nice idea but I doubt it would work with most terminals. I say this because the Dvorak keyboard reassigns letters to some keys that are normally (ie, QWERTY) not letters, notably ,< .> and /? - and while this is not itself a problem, it breaks trying to send the corresponding control character (since control-comma is not normally distinguishable from control-point and control-slash). If you are willing to fiddle the Dvorak keyboard slightly so that the letters appear only on keys that bear letters under QWERTY, this would be possible. However, to keep things consistent will require kernel hacks on any UNIX I know of - otherwise things like the kill character, let us say you use ^U, would have to be set to something different from what the keyboard says you're typing. This is because those control characters are handled by the kernel - your user program won't get a chance to see them! This difficulty *can* be worked around if your system has pseudo terminals, but it's messy and doesn't work totally anyway. If you are lucky enough to be running on something with a totally soft keyboard, such as a Lisp Machine or a Sun, the sort of thing you want *is* possible. Not necessarily easy, mind you. I have software which is capable of doing this on a Sun-2 or Sun-3, provided you don't want to run suntools (I don't, but I appear to be in the minority). As for getting the translation table, I'm sure the CMU library has a reference which will give this. I found such a reference once in the McGill libraries, but the xerox I made of it has vanished and I don't remember what it was - I'd have to search it out again. der Mouse USA: {ihnp4,decvax,akgua,utzoo,etc}!utcsri!mcgill-vision!mouse think!mosart!mcgill-vision!mouse Europe: mcvax!decvax!utcsri!mcgill-vision!mouse ARPAnet: think!mosart!mcgill-vision!mouse@harvard.harvard.edu