Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!philabs!micomvax!musocs!mcgill-vision!mouse From: mouse@mcgill-vision.UUCP (der Mouse) Newsgroups: net.info-terms,net.internat Subject: Re: In search of a sane keyboard standard Message-ID: <429@mcgill-vision.UUCP> Date: Sat, 24-May-86 04:39:36 EDT Article-I.D.: mcgill-v.429 Posted: Sat May 24 04:39:36 1986 Date-Received: Sun, 25-May-86 15:22:24 EDT References: <2071@cbosgd.UUCP> Organization: McGill University, Montreal Lines: 142 Keywords: keyboard, standard, ANSI Xref: linus net.info-terms:516 net.internat:60 # = mark@cbosgd.UUCP (Mark Horton) $ = henry@utzoo.UUCP (Henry Spencer) % = peter@baylor.UUCP (Peter da Silva) & = rcd@nbires.UUCP # [asks what should be present in a standard keyboard] # (1) Regular touch typing of letters, typewriter style, should work. Of course. # It's especially serious # to have the left shift key broken, since some of us used keypunches a lot, # and only the left shift key works on keypunches. I find myself overusing # the left hand shift key to this day because of this. Right shift key? You mean there's a right shift key? Lemme check...why so there is. Gee, the things you learn on USEnet.... In case you need telling, I never use the right shift key as a shift key (see below). # (2) The CTRL, TAB, and ESC keys are very heavily used in computer work. Right. ESC left of 1, TAB left of Q, CTRL left of A, I agree. An intervening key between A and CTRL is quite acceptable. # (3) The return key should be as large as possible, with exactly two # keys between it and L. These keys are generally ;: and '". It should # be at least two keys wide, and an L or 2x2 square are even better. # In practice, however, I never seem to hit the top part of the L. I find three keys between L and CR to be OK. I too never hit the top part of the (invariably mirror-image) L. # (4) The numbers 1-0 should be in the standard places. The shifted numbers # should be !@#$%^&*(), typewriter style. (Bit paired keyboards, Like the Hazeltine 1500 # where ( and ) are shift 8 and 9, are very difficult to use.) Tell me about it. We have some h1500s. # (5) The location of backspace doesn't matter much. # (6) The strange ASCII punctuation ( [] {} \| `~ ) varies so much [...] OK. But I would note that a keyboard that is slightly different from what you are used to is worse than one that is very different. $ ------------- $ | RETURN | $ | | $ --------------- $ | SHIFT |DEL | $ | | | $ --------------- I think this is the best place for DEL. My right little finger reaches there automatically when I want to delete something.... $ There is one omission: no LINEFEED. How often does one use both CR $ and LF as distinct keys? Whenever I am writing program code. Linefeed is always bound to newline-with-appropriate-indentation, whatever that means for the language in question, while Return is just insert-a-newline. A keyboard missing Linefeed (or effectively missing it, like the VT220), is almost impossible for me to use. % > Here's a thought. How about a keyboard that toggles CAPS LOCK when the user % > hits both shift keys together? I am typing this on a Sun-2 keyboard, but I fixed a few things. I run my own terminal emulator (I have some flames for Sunwindows, if anyone wants to email...), and I tell the kernel to give me the keyboard completely raw and do my own mapping. For one thing, this makes the keyboard completely soft (I can program any key with any string), and for another it means I have *both* CAPS LOCK and SHIFT LOCK. The latter is useful (for example) when I want to type long names in upper case with underscores (_ is on a shifted key). The Sun-2 keyboard has LEFT and RIGHT keys to the left and right of the space bar. I have the following behaviour coded up: LEFT is push-on, push-off (ie, toggle) CAPS LOCK. Both SHIFTs at once is enable SHIFT LOCK. Either SHIFT alone, is disable SHIFT LOCK. Incidentally, RIGHT is a LOCAL key, things typed go directly to the output code instead of being sent off to the shell process. % > (And while I'm thinking of it: why doesn't somebody make a keyboard without % > explicit function keys, but where CTRL-1 thru CTRL-0 generate an appropriate % > escape sequence?) As above, my emulator allows loading each button with up to four different strings, for NORMAL, SHIFT/SHIFTLOCK, CAPSLOCK, and CONTROL. But I don't like function keys unless I can load them, because most programs can't use arbitrary escape/control sequences for function keys. By the way, anyone who wants the emulator is welcome to send mail. % How about doing something about cursor keys? I always have a soft spot in my % heart for the ADM-3a layout: it makes some ASCII sense, and is right there % on the keyboard... % K % H L % J So THAT's where Rogue/Hack got their movement key layout! I am all in favor of this one; so many of us Rogue/Hack players have trained this layout into their fingers.... # [Mark Horton's suggested layout] # [This keyboard] uses the popular convention of [ ] unshifted and # side-by-side, with { } shifted, [...] I hate this convention with a passion. When running the emulator I mentioned above (which means always), I have loaded the keys so the keyboard looks like ----------------- instead of ----------------- | ] | } | LF | | | { | } |DEL | | | [ | { | | | | [ | ] | | | -------------- | -------------- | | " | | | CR | | " | | | CR | | ' | \ | | | ' | \ | | ----------------- ----------------- ? | SHIFT |DEL | ? | SHIFT | LF | / | | | / | | | ----------------- ----------------- If I had to use one keyboard the rest of my life, it would be a Lisp Machine keyboard. Second choice is the TeleVideo 950. I want: - Keyclick (I know, Lisp Machine doesn't have it. Lisp Machine benefits outweigh this.) Keyclick should be electronic, though mechanical is acceptable if it does not introduce tactile feedback. - NO TACTILE FEEDBACK UNTIL THE KEY HITS THE BOTTOM OF ITS TRAVEL. Just the spring resisting movement. - [/] and {/} keys, not [/{ and ]/} - DEL in the lower right - ESC just left of 1 - TAB just left of Q - CTRL (not necessarily immediately) left of A - LF between [/] (right of P) and the top of CR - The top row to read ... 0/) -/_ =/+ `/~ Otherwise, I think other people have covered it (says I, having just posted 150 lines....). -- der Mouse USA: {ihnp4,decvax,akgua,utzoo,etc}!utcsri!mcgill-vision!mouse philabs!micomvax!musocs!mcgill-vision!mouse Europe: mcvax!decvax!utcsri!mcgill-vision!mouse mcvax!seismo!cmcl2!philabs!micomvax!musocs!mcgill-vision!mouse ARPAnet: utcsri!mcgill-vision!mouse@uw-beaver.arpa "Come with me a few minutes, mortal, and we shall talk."