daniel@island.uu.net (Daniel Smith - Ministry of Silly Walks) (09/24/90)
Seems as if it would be pretty helpful to have a glossary available on Unix (and other) systems - something where every entry explained in less than 10 lines what different programs are, what different terminology/acronyms are, etc. Sort of like the hackers dictionary, but different subject matter. I call on the collective knowledge of the net to come up with some descriptions - I have a starter list at the end of this article. Please email descriptions to me [1], and I'll be glad to collect/organize them and post them. I intend that this is a *supplement* to man pages, geared to both casual users and to gurus who know hundreds of terms and who may need a quick memory jogger (now what was "The Utah Raster Toolkit" again, and where can I get it?) Something good for skimming. [1] if, say, a hundred people wrote a description or two (preferably about some program they wrote, that'd be a great start! The glossary should be clear-text, so that it can be read in a pager, but have a form where it is easy to a write a program where you could jump from topic to topic... I'm thinking of: csh: A command line interpreter that allows a user to type in commands that are run by system. etc.. etc.. See_Also: sh ksh I imagine that most would use the file in a pager, but I'll toss in one extension which would (hopefully) go a heck of a long way, for example: spell: A spelling checker which goes through a text file and compares each word against those in /usr/dict/words. etc... etc.. See_Also: diction Run_Cmd: spell /usr/local/lib/spell/demofile The Run_Cmd could be used to tell some browsing program (perhaps some hypertext system) how to demo the item in the glossary. Useful if a modified pager/X based pager (perhaps a derivitive of Xman?) is written. My main idea, though, is just to get the ball rolling, I want to keep this simple so that it can be fed into all sorts of things. I'll suggest "/usr/local/lib/glossary" as a directory to put this stuff. But, enough carts in front of the horse, here's a format, sample entry, and a starter list: suggested format: <blank line> <item name>:[whitespace][instance] <whitespace><description line> <whitespace><description line> ...etc... [See_Also:<whitespace><item><whitespace><item> ..etc...] [Run_Cmd:<whitespace><command><whitespace><arg1> ...etc...] sample instances: bsd sysV unix sun mac ibm atari amiga sco gnu osf hp dec These could give a clue as to which instance we're talking about (switcher was a Mac program, and is a Sun program). Optional. grabchars: bsd sysV A program for getting one or more keystrokes directly from the user, without requiring them to hit return. Can be used in shell scripts (sh, csh, etc.) to give them an interactie menu capability. Available from comp.sources.misc. See_Also: sh(1) csh(1) ksh(1) Run_Cmd: /usr/local/src/grabchars/demo How to reach me: .......Daniel Smith, Island Graphics, daniel@island.com dansmith@well.sf.ca.us ..(415)491 0765 x 250 (W) 4000 CivicCenterDrive SanRafael MarinCounty CA 94903 and the starter list: [I tried to strike a balance here between covering a lot of ground and ending up with an overly long posting. Please add whatever you want, for instance I didn't mention every single pbm program here, although the entries for them are desrired. I'll take the best in the case of duplicates, and do a little editing/spelle sheking] A thought on how to pick one of these list items (there are a little more than 300) at random: take the last three digits of your social security number or driver's license and divide by three :-) Or, the last command that you did that wasn't cc, ls, cd, mail, emacs, or vi... Pnews: X11R4: X: adb: aid: arc: arch: at: atob: awk: bc: bm: btoa: cal: calendar: cat: cc: chfn: chgrp: chmod: chsh: ci: cmp: co: col: comm: compress: compressdir: cp: cpio: cpmod: crc: crontab: crypt: csh: ctags: ctrace: cut: cxref: date: dbx: dc: dd: df: diff: dtree: du: egrep: eid: emacs: eqn: etags: ex: expr: fgrep: fid: file: find: gcp: getopt: gid: graph: grep: gsh: hostid: hostname: i386: iAPX286: id: ident: indent: install: iostat: join: kermit: kill: ld: ldd: less: lex: lid: lint: ln: login: look: lookbib: lorder: ls: m4: m68k: mach: mail: make: makedist: mc68010: mc68020: mesg: metaconfig: mkdir: mkid: mt: mush: mv: newgrp: newsetup: nice: nm: nroff: od: pack: pagesize: passwd: paste: patch: pbm: pcat: pdp11: perl: pgrind: plot: pnm: pgm: postnews: pr: ps: psroff: ptroff: ptx: pwd: ranlib: rcs: rcsclean: rcsdiff: rcsfreeze: rcsmerge: refer: rlog: rm: rmail: rmdir: rn: rnews: roffbib: rolo: rpc: rpcgen: sccstorcs: screen: sed: sh: shar: size: sleep: sort: sortbib: sp: sparc: spell: spline: split: strip: stty: su: sun: sun2: sun3: sun3x: sun4: switcher (mac and sun): sync: tar: tarmail: tbl: tee: time: tip: top: touch: tr: trace: troff: tty: u370: u3b: u3b15: u3b2: u3b5: uncompress: uncompressdir: uniq: units: unpack: unshar: untarmail: uucp: uudecode: uuencode: uulog: uuname: uusend: uustat: uux: uw: vax: vplot: wall: who: write: xargs: xloadimage: xmodem: yacc: zcat: zcmp: zdiff: and a few more off the top of my head: OSF UI UUNET Usenet Open Look Presentation Manager Desqview NeWS NeXT ICE Neuromancer and so on... thanks for your entries, I'd like to get a first version of the glossary out around mid-october. Perhaps with a front end script for perusing... Daniel -- .......Daniel Smith, Island Graphics, daniel@island.com dansmith@well.sf.ca.us ..(415)491 0765 x 250 (W) 4000 CivicCenterDrive SanRafael MarinCounty CA 94903 .disclaimer: If I don't write these things, Island will take away my coffee.