Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site sdcsvax.UUCP Path: utzoo!linus!decvax!ittvax!dcdwest!sdcsvax!davidson From: davidson@sdcsvax.UUCP Newsgroups: net.cog-eng Subject: Re: long command names - one solution Message-ID: <54@sdcsvax.UUCP> Date: Sat, 3-Dec-83 01:29:26 EST Article-I.D.: sdcsvax.54 Posted: Sat Dec 3 01:29:26 1983 Date-Received: Sun, 4-Dec-83 07:31:30 EST References: <2264@utah-cs.UUCP> Organization: U.C. San Diego, EECS Dept. Lines: 55 Command completion systems have been discussed extensively on the human-nets, editor-people and works digests, but let me briefly respond to the supposed advantages of the crude command completion system on the Lilith workstation. To abbreviate a Lilith command successfully, you must know any other command which might contain a common substring, or more simply, you must know how many characters you must type for each command, but be prepared to revise this knowledge every time a new command is created. Failure to know this either requires you to be conservative and type many more characters than you really need (and still not be guaranteed uniqueness) or to WAIT for feedback. I can't understand why a system which requires you to pause and wait for a completion (and wonder how long you have to wait, depending on system load!) can possibly be a win. (Yes, I know Lilith is a single user workstation, and you can learn how long you need to wait - assuming no significant background tasks are running - I still don't think much of it.) A better approach is the TENEX option of typing ESC when you think you've typed enough, or ? when you want to know your options. If when you type ESC you've not given enough characters, TENEX will beep at you (but if you've specified enough for it to guess the next few characters, it will type them for you instead). Typing ? gives you a list of the legal completions, although annoyingly it doesn't then let you just select one, but requires you to finish typing a unique command. Lots of variants of command completion systems exist. The fanciest systems type ahead of you automatically, and let you either type over the supplied text, or hit ESC or SP to skip to the end of the word or phrase and continue typing until the command is finished. I find the cognitive load needed to efficiently interact with completion systems rather high. I find systems which allow me to abbreviate names or phrases with regular expressions to be much easier. This feature is present throughout UNIX and its subsystems in contexts where a list of names is legitimate, but I know of no such systems where uniqueness is assumed, with a popup menu to handle multiple selections. Although completion systems and regular expression systems are convenient, I find short, abbreviated names much easier. Compare the following key- strokes: delETE notesfiles.dOC /* TENEX */ rm n*.d* /* UNIX */ rm nf.me /* UNIX */ The first is clearly more cumbersome. The first two require considerable thought on the part of the user to guess how much to specify. Moreover, if the specification were not unique as intended, the first example would require further typing, and the second example would remove extra files! I much prefer the last, despite the reduced mnemonicity. -Greg