diff options
author | Ted Unangst <tedu@cvs.openbsd.org> | 2010-07-01 20:08:55 +0000 |
---|---|---|
committer | Ted Unangst <tedu@cvs.openbsd.org> | 2010-07-01 20:08:55 +0000 |
commit | 185aa2674424b53d00021bd9c58f19ece6097b4a (patch) | |
tree | 680b640cbb4f1e75a0ab63e05cf1407004c6642f /share/doc | |
parent | 61135645c205feedcb7d51656c429a07b405ec8e (diff) |
more stale documentation
Diffstat (limited to 'share/doc')
26 files changed, 2 insertions, 13372 deletions
diff --git a/share/doc/usd/00.contents b/share/doc/usd/00.contents deleted file mode 100644 index e5c3bd5e35b..00000000000 --- a/share/doc/usd/00.contents +++ /dev/null @@ -1,264 +0,0 @@ -.\" $OpenBSD: 00.contents,v 1.4 2004/04/09 12:10:04 jmc Exp $ -.\" -.\" Copyright (c) 1986, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)00.contents 8.2 (Berkeley) 4/20/94 -.\" -.if n \{\ -.po 5n -.ll 70n -.\} -.de ND -.KE -.sp -.KS -.. -.OH '''USD Contents' -.EH 'USD Contents''' -.TL -UNIX User's Supplementary Documents (USD) -.sp -\s-24.4 Berkeley Software Distribution\s+2 -.sp -\fRJune, 1993\fR -.PP -This volume contains documents which supplement the manual pages in -.I -The Unix User's Reference Manual -.R -for the 4.4BSD system as distributed by U.C. Berkeley. -.sp -.KS -.SH -Getting Started -.ND -.IP -.tl 'Unix for Beginners \- Second Edition''USD:1' -.QP -An introduction to the most basic uses of the system. -.ND -.IP -.tl 'Learn \- Computer\-Aided Instruction on UNIX (Second Edition)''USD:2' -.QP -Describes a computer-aided instruction program that walks new users through -the basics of files, the editor, and document prepararation software. -.ND -.SH -Basic Utilities -.ND -.IP -.tl 'An Introduction to the UNIX Shell''USD:3' -.QP -Steve Bourne's introduction to the capabilities of -.I sh , -a command interpreter especially popular for writing shell scripts. -.ND -.IP -.tl 'An Introduction to the C shell''USD:4' -.QP -This introduction to -.I csh -(a command interpreter popular for interactive work), describes many -commonly used UNIX commands, assumes little prior knowledge of UNIX, -and has a glossary useful for beginners. -.ND -.IP -.tl 'DC \- An Interactive Desk Calculator''USD:5' -.QP -A super HP calculator, if you do not need floating point. -.ND -.IP -.tl 'BC \- An Arbitrary Precision Desk-Calculator Language''USD:6' -.QP -A front end for DC that provides infix notation, control flow, and -built\-in functions. -.ND -.SH -Communicating with the World -.ND -.IP -.tl 'Mail Reference Manual''USD:7' -.QP -Complete details on one of the programs for sending and reading your mail. -.ND -.IP -.tl 'The Rand MH Message Handling System''USD:8' -.QP -This system for managing your computer mail uses lots of small programs, -instead of one large one. -.ND -.SH -Text Editing -.ND -.IP -.tl 'A Tutorial Introduction to the Unix Text Editor''USD:9' -.QP -An easy way to get started with the line editor, -.I ed . -.ND -.IP -.tl 'Advanced Editing on Unix''USD:10' -.QP -The next step. -.ND -.IP -.tl 'Ex: A Tutorial''USD:11' -.QP -The document to learn to use the \fIex\fR editor. -.ND -.IP -.tl 'An Introduction to Display Editing with Vi''USD:12' -.QP -The document to learn to use the \fIvi\fR screen editor. -.ND -.IP -.tl 'Vi/Ex Reference Manual''USD:13' -.QP -The definitive reference for the \fInvi\fR,\fInex\fR editors. -.ND -.IP -.tl 'Jove Manual for UNIX Users''USD:14' -.QP -Jove is a small, self-documenting, customizable display editor, based on -EMACS. A plausible alternative to -.I vi . -.ND -.IP -.tl 'SED \- A Non-interactive Text Editor''USD:15' -.QP -Describes a one-pass variant of -.I ed -useful as a filter for processing large files. -.ND -.IP -.tl 'AWK \- A Pattern Scanning and Processing Language (Second Edition)''USD:16' -.QP -A program for data selection and transformation. -.ND -.SH -Document Preparation -.ND -.IP -.tl 'Typing Documents on UNIX: Using the \-ms Macros with Troff and Nroff''USD:17' -.QP -Describes and gives examples of the basic use of the typesetting tools and -``-ms'', a frequently used package of formatting requests that make it easier -to lay out most documents. -.ND -.IP -.tl 'A Revised Version of \-ms''USD:18' -.QP -A brief description of the Berkeley revisions made to the \-ms formatting -macros for nroff and troff. -.ND -.IP -.tl 'Writing Papers with \fInroff\fR using \-me''USD:19' -.QP -Another popular macro package for -.I nroff . -.ND -.IP -.tl '\-me Reference Manual''USD:20' -.QP -The final word on \-me. -.ND -.IP -.tl 'NROFF/TROFF User\'s Manual''USD:21' -.QP -Extremely detailed information about these document formatting programs. -.ND -.IP -.tl 'A TROFF Tutorial''USD:22' -.QP -An introduction to the most basic uses of -.I troff -for those who really want to know such things, or want to write their -own macros. -.ND -.IP -.tl 'A System for Typesetting Mathematics''USD:23' -.QP -Describes -.I eqn , -an easy-to-learn language for high-quality mathematical typesetting. -.ND -.IP -.tl 'Typesetting Mathematics \- User\'s Guide (Second Edition)''USD:24' -.QP -More details about how to use -.I eqn . -.ND -.IP -.tl 'Tbl \- A Program to Format Tables''USD:25' -.QP -A program for easily typesetting tabular material. -.ND -.IP -.tl 'Refer \- A Bibliography System''USD:26' -.QP -An introduction to one set of tools used to maintain bibliographic databases. -The major program, -.I refer , -is used to automatically retrieve and format the references -based on document citations. -.ND -.IP -.tl 'Some Applications of Inverted Indexes on the UNIX System''USD:27' -.QP -Mike Lesk's paper describes the -.I refer -programs in a somewhat larger context. -.ND -.IP -.tl 'BIB \- A Program for Formatting Bibliographies''USD:28' -.QP -This is an alternative to -.I refer -for expanding citations in documents. -.ND -.IP -.tl 'Writing Tools \- The STYLE and DICTION Programs''USD:29' -.QP -These are programs which can help you understand and improve your -writing style. -.ND -.SH -Amusements -.ND -.IP -.tl 'A Guide to the Dungeons of Doom''USD:30' -.QP -An introduction to the popular game of \fIrogue\fP, a fantasy game -which is one of the biggest known users of VAX cycles. -.ND -.IP -.tl 'Star Trek''USD:31' -.QP -You are the Captain of the Starship Enterprise. Wipe out the -Klingons and save the Federation. -.KE diff --git a/share/doc/usd/01.begin/Makefile b/share/doc/usd/01.begin/Makefile deleted file mode 100644 index 898bf54e92e..00000000000 --- a/share/doc/usd/01.begin/Makefile +++ /dev/null @@ -1,10 +0,0 @@ -# $OpenBSD: Makefile,v 1.3 2004/02/01 14:22:45 jmc Exp $ - -DIR= usd/01.begin -SRCS= u.mac u0 u1 u2 u3 u4 u5 -MACROS= -ms - -paper.txt: ${SRCS} - ${ROFF} -Tascii ${SRCS} > ${.TARGET} - -.include <bsd.doc.mk> diff --git a/share/doc/usd/01.begin/u.mac b/share/doc/usd/01.begin/u.mac deleted file mode 100644 index 2bf7d9dcf53..00000000000 --- a/share/doc/usd/01.begin/u.mac +++ /dev/null @@ -1,82 +0,0 @@ -.\" $OpenBSD: u.mac,v 1.2 2003/08/09 09:00:14 jmc Exp $ -.\" -.\" Copyright (C) Caldera International Inc. 2001-2002. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code and documentation must retain the above -.\" copyright notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed or owned by Caldera -.\" International, Inc. -.\" 4. Neither the name of Caldera International, Inc. nor the names of other -.\" contributors may be used to endorse or promote products derived from -.\" this software without specific prior written permission. -.\" -.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA -.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT, -.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -.\" POSSIBILITY OF SUCH DAMAGE. -.\" -.\" @(#)u.mac 8.1 (Berkeley) 6/8/93 -.\" -.tr |\(bv -.de IT -.if n .ul -\%\&\\$3\f2\\$1\fR\&\\$2 -.. -.de UL -.lg 0 -.if n .ul -\%\&\\$3\f3\\$1\fR\&\\$2 -.lg -.. -.de UC -\\$3\s-1\\$1\s0\\$2 -.. -.de P1 -.DS I .4i -.nf -.lg 0 -.if n .ls 1 -.if n .ta 5 10 15 20 25 30 35 40 45 50 55 60 -.if t .ta .3i .6i .9i 1.2i 1.5i 1.8i -.nr P \\n(.s -.nr S \\n(.s+1 -.nr s \\n(.s-1 -.nr t 5*33u \" width in 9 point CW -.if t .ta 1u*\\ntu 2u*\\ntu 3u*\\ntu 4u*\\ntu 5u*\\ntu 6u*\\ntu 7u*\\ntu 8u*\\ntu 9u*\\ntu 10u*\\ntu 11u*\\ntu 12u*\\ntu 13u*\\ntu 14u*\\ntu -.ft 3 -.tr _\(ul -.tr -\- -.lg 0 -.. -.de P2 -.ps \\n(PS -.vs \\n(VSp -.nr P \\n(PS -.nr S \\n(PS+1 -.nr s \\n(PS-1 -.ft R -.if n .ls 2 -.fi -.DE -.tr -- -.tr '' -.lg -.. -.nr PI .2i diff --git a/share/doc/usd/01.begin/u0 b/share/doc/usd/01.begin/u0 deleted file mode 100644 index 9ec3ff0c5ed..00000000000 --- a/share/doc/usd/01.begin/u0 +++ /dev/null @@ -1,85 +0,0 @@ -.\" $OpenBSD: u0,v 1.3 2004/04/09 10:51:07 jmc Exp $ -.\" -.\" Copyright (C) Caldera International Inc. 2001-2002. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code and documentation must retain the above -.\" copyright notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed or owned by Caldera -.\" International, Inc. -.\" 4. Neither the name of Caldera International, Inc. nor the names of other -.\" contributors may be used to endorse or promote products derived from -.\" this software without specific prior written permission. -.\" -.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA -.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT, -.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -.\" POSSIBILITY OF SUCH DAMAGE. -.\" -.\" @(#)u0 8.1 (Berkeley) 6/8/93 -.\" -.\" ...TM 78-1273-8 -.if n \{\ -.po 5n -.ll 70n -.\} -.EH 'USD:1-%''UNIX For Beginners' -.OH 'UNIX For Beginners''USD:1-%' -.ND October 2, 1978 -.\" ...old TM -74-1273-18, October 29, 1974 -.\".RP -.TL -UNIX For Beginners \(em -Second Edition -.AU -Brian W. Kernighan -.AI -.\" .MH -.AU -(Updated for 4.3BSD by Mark Seiden) -.AB -.PP -This paper is meant to help -new users get started on -the -.UX -operating system. -It includes: -.IP "\ \(bu" -basics needed for day-to-day use of the system \(em -typing commands, correcting typing mistakes, logging in and out, -mail, inter-terminal communication, -the file system, printing files, -redirecting I/O, pipes, and the shell. -.IP "\ \(bu" -document preparation \(em -a brief discussion of the major formatting programs -and macro packages, -hints on preparing documents, -and capsule descriptions of some supporting software. -.IP "\ \(bu" -.UC UNIX -programming \(em -using the editor, programming the shell, programming in C, -other languages and tools. -.IP "\ \(bu" -An annotated -.UC UNIX -bibliography. -.AE diff --git a/share/doc/usd/01.begin/u1 b/share/doc/usd/01.begin/u1 deleted file mode 100644 index 3e7b05de509..00000000000 --- a/share/doc/usd/01.begin/u1 +++ /dev/null @@ -1,638 +0,0 @@ -.\" $OpenBSD: u1,v 1.2 2003/08/09 09:00:14 jmc Exp $ -.\" -.\" Copyright (C) Caldera International Inc. 2001-2002. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code and documentation must retain the above -.\" copyright notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed or owned by Caldera -.\" International, Inc. -.\" 4. Neither the name of Caldera International, Inc. nor the names of other -.\" contributors may be used to endorse or promote products derived from -.\" this software without specific prior written permission. -.\" -.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA -.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT, -.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -.\" POSSIBILITY OF SUCH DAMAGE. -.\" -.\" @(#)u1 8.1 (Berkeley) 6/8/93 -.\" -.nr PS 9 -.if t .nr VS 11 -.if n .ls 2 -.nr PI .25i -.SH -INTRODUCTION -.PP -From the user's point of view, -the -.UC UNIX -operating system -is easy -to learn and use, -and presents few of the usual impediments -to getting the job done. -It is hard, however, for the beginner -to know where to start, -and how to make the best use -of the facilities available. -The purpose of this introduction -is to help new users -get used to the main ideas of -the -.UC UNIX -system -and start making effective use of it quickly. -.PP -You should have a couple of other documents with you -for easy reference as you read this one. -The most important is -.ul -The -.ul -.UC UNIX -.IT Programmer's -.IT Manual \|; -it's often easier to tell you to read about something -in the manual -than to repeat its contents here. -The other useful document is -.ul -A Tutorial Introduction to the -.ul -.UC UNIX -.ul -Text Editor, -which will tell you how to use the editor -to get text \(em -programs, data, documents \(em -into the computer. -.PP -A word of warning: -the -.UC UNIX -system -has become quite popular, -and there are several major variants -in widespread use. -Of course details also change with time. -So although the basic structure of -.UC UNIX -and how to use it is common to all versions, -there will certainly be a few things -which are different on your system from -what is described here. -We have tried to minimize the problem, -but be aware of it. -In cases of doubt, -this paper describes Version 7 -.UC UNIX . -.PP -This paper has five sections: -.IP "\ \ 1." -Getting Started: -How to log in, -how to type, -what to do about mistakes in typing, -how to log out. -Some of this is dependent on which -system -you log into -(phone numbers, for example) -and what terminal you use, -so this section must necessarily be supplemented -by local information. -.IP "\ \ 2." -Day-to-day Use: -Things you need every day to use -the system -effectively: -generally useful commands; -the file system. -.IP "\ \ 3." -Document Preparation: -Preparing manu\%scripts is one of the most common uses -for -.UC UNIX -systems. -This section contains advice, -but not -extensive instructions on any -of the formatting tools. -.IP "\ \ 4." -Writing Programs: -.UC UNIX -is an excellent system for developing programs. -This section talks about some of the tools, -but again is not a tutorial in any of the programming languages -provided by the system. -.IP "\ \ 5." -A -.UC UNIX -Reading List. -An annotated bibliography of -documents that new users should be aware of. -.SH -I. GETTING STARTED -.SH -Logging In -.PP -You must have a -.UC UNIX -login name, which you can get from -whoever administers your system. -You also need to know the phone number, -unless your system uses permanently connected terminals. -The -.UC UNIX -system -is capable of dealing with a wide variety of terminals: -Terminet 300's; Execuport, TI and similar -portables; -video (CRT) terminals like the HP2640, etc.; -high-priced graphics terminals like the Tektronix 4014; -plotting terminals like those from GSI and DASI; -and even the venerable -Teletype in its various forms. -But note: -.UC UNIX -is strongly oriented towards devices with -.ul -lower case. -If your terminal produces only upper case (e.g., model 33 Teletype, some video and portable terminals), -life will be so difficult that you should look for another -terminal. -.PP -Be sure to set the switches appropriately on your device. -Switches that might need to be adjusted include the speed, -upper/lower case mode, -full duplex, even parity, and any others -that local wisdom advises. -Establish a connection using whatever -magic is needed for your terminal; -this may involve dialing a telephone call or merely flipping a switch. -In either case, -.UC UNIX -should type -.UL login: '' `` -at you. -If it types garbage, you may be at the wrong speed; -check the switches. -If that fails, -push the ``break'' or ``interrupt'' key a few times, slowly. -If that fails to produce a login message, consult a guru. -.PP -When you get a -.UL login: -message, -type your -login name -.ul -in lower case. -Follow it by a -.UC RETURN ; -the system will not do anything until you type a -.UC RETURN . -If a password is required, -you will be asked for it, -and (if possible) -printing will be turned off while you type it. -Don't forget -.UC RETURN . -.PP -The culmination of your login efforts is a -``prompt character,'' -a single character that indicates that -the system -is ready to accept commands from you. -The prompt character is usually a -dollar sign -.UL $ -or a -percent sign -.UL % . -(You may also get a message of the day just before the -prompt character, or a notification that you have mail.) -.SH -Typing Commands -.PP -Once you've seen the prompt character, you can type commands, -which are -requests that -the system -do something. -Try typing -.P1 -date -.P2 -followed by -.UC RETURN. -You should get back something like -.P1 -Mon Jan 16 14:17:10 EST 1978 -.P2 -Don't forget the -.UC RETURN -after the command, -or nothing will happen. -If you think you're being ignored, -type a -.UC RETURN ; -something should happen. -.UC RETURN -won't be mentioned -again, -but don't forget it \(em -it has to be there -at the end of each line. -.PP -Another command you might try is -.UL who , -which tells you everyone who is currently logged in: -.P1 -who -.P2 -gives something like -.P1 -.ta .5i 1i -mb tty01 Jan 16 09:11 -ski tty05 Jan 16 09:33 -gam tty11 Jan 16 13:07 -.P2 -The time is when the user logged in; -``ttyxx'' is the system's idea of what terminal -the user is on. -.PP -If you make a mistake typing the command name, -and refer to a non-existent command, -you will be told. -For example, if you type -.P1 -whom -.P2 -you will be told -.P1 -whom: not found -.P2 -Of course, if you inadvertently type the name of some other command, -it will run, -with more or less mysterious results. -.SH -Strange Terminal Behavior -.PP -Sometimes you can get into a state -where your terminal acts strangely. -For example, -each letter may be typed twice, -or the -.UC RETURN -may not cause a line feed -or a return to the left margin. -You can often fix this by logging out and logging back in.\(dg -.FS -\(dg In Berkeley Unix, the command "reset<control-j>" -will often reset a terminal apparently in a strange state because a fullscreen -editor crashed. -.FE -Or you can read the description of the command -.UL stty -in section 1 of the manual. -To get intelligent treatment of -tab characters -(which are much used in -.UC UNIX ) -if your terminal doesn't have tabs, -type the command -.P1 -stty \-tabs -.P2 -and the system will convert each tab into the right number -of blanks for you. -.SH -Mistakes in Typing -.PP -If you make a typing mistake, and see it before -.UC RETURN -has been typed, -there are two ways to recover. -The sharp-character -.UL # -erases the last character typed; -in fact successive uses of -.UL # -erase characters back to -the beginning of the line (but not beyond). -So if you type badly, you can correct as you go: -.P1 -dd#atte##e -.P2 -is the same as -.UL date .\(dd -.FS -\(dd Many installations set the erase character for display terminals to -the delete or backspace key. "stty all" tells you what it actually is. -.FE -.PP -The at-sign -.UL @ -erases all of the characters -typed so far -on the current input line, -so if the line is irretrievably fouled up, type an -.UL @ -and start the line over. -.PP -What if you must enter a sharp or at-sign -as part of the text? -If you precede either -.UL # -or -.UL @ -by a backslash -.UL \e , -it loses its erase meaning. -So to enter a sharp or at-sign in something, type -.UL \e# -or -.UL \e@ . -The system will always echo a newline at you after your at-sign, -even if preceded by a backslash. -Don't worry \(em -the at-sign has been recorded. -.PP -To erase a backslash, -you have to type two sharps or two at-signs, as in -.UL \e## . -The backslash is used extensively in -.UC UNIX -to indicate that the following character is in some way special. -.SH -Read-ahead -.PP -.UC UNIX -has full read-ahead, -which means that you can type as fast as you want, -whenever you want, -even when some command is typing at you. -If you type during output, -your input characters will appear intermixed with the output characters, -but they will be stored away -and interpreted in the correct order. -So you can type several commands one after another without -waiting for the first to finish or even begin. -.SH -Stopping a Program -.PP -You can stop most programs by -typing the character -.UC DEL '' `` -(perhaps called ``delete'' or ``rubout'' on your terminal). -The ``interrupt'' or ``break'' key found on most terminals -can also be used.\(dg -.FS -\(dg In Berkeley Unix, "control-c" is the usual way to stop programs. "stty all" -tells you the value of your "intr" key. -.FE -In a few programs, like the text editor, -.UC DEL -stops whatever the program is doing but leaves you in that program. -Hanging up the phone will stop most programs.\(dd -.FS -\(dd In most modern shells, programs running in the background continue -running even if you hang up. -.FE -.SH -Logging Out -.PP -The easiest way to log out is to hang up the phone. -You can also type -.P1 -login -.P2 -and let someone else use the terminal you were on.* -.FS -* "control-d" and "logout" are other alternatives. -.FE -It is usually not sufficient just to turn off the terminal. -Most -.UC UNIX -systems -do not use a time-out mechanism, so you'll be -there forever unless you hang up. -.SH -Mail -.PP -When you log in, you may sometimes get the message -.P1 -You have mail. -.P2 -.UC UNIX -provides a postal system so you can -communicate with -other users of the system. -To read your mail, -type the command -.P1 -mail -.P2 -The headers of your mail will be printed, in the order of their receipt. -A message can be read with the -.UL print -command, -or specified directly by number. -Other commands are described in the manual. -(Earlier versions of -.UL mail -do not process one message at a time, -but are otherwise similar.) -.PP -How do you send mail to someone else? -Suppose it is to go to ``joe'' (assuming ``joe'' is someone's login name). -The easiest way is this: -.P1 -mail joe -.ft I -now type in the text of the letter -on as many lines as you like ... -After the last line of the letter -type the character ``.'', -alone on the last line, -like so: -\&. -.P2 -And that's it. -.PP -For practice, send mail to yourself. -(This isn't as strange as it might sound \(em -mail to oneself is a handy reminder mechanism.) -.PP -There are other ways to send mail \(em -you can send a previously prepared letter, -and you can mail to a number of people all at once. -For more details, see -.UL mail (1). -(The notation -.UL mail (1) -means the command -.UL mail -in section 1 -of the -.ul -.UC UNIX -.ul -.IT Programmer's -.IT Manual .) -.SH -Writing to other users\(dg -.FS -\(dg Although "write" works on Berkeley -.UC UNIX, -there is a much nicer way of communicating using display-terminals \(em -"talk" splits the screen into two sections, and both of you can type -simultaneously (see talk(1)). -.FE -.PP -At some point, -out of the blue will come a message -like -.P1 -Message from joe tty07... -.P2 -accompanied by a startling beep. -It means that Joe wants to talk to you, -but unless you take explicit action you won't be able to talk back. -To respond, -type the command -.P1 -write joe -.P2 -This establishes a two-way communication path. -Now whatever Joe types on his terminal will appear on yours -and vice versa. -The path is slow, rather like talking to the moon. -(If you are in the middle of something, you have to -get to a state where you can type a command. -Normally, whatever program you are running has to terminate or be terminated. -If you're editing, you can escape temporarily from the editor \(em -read the editor tutorial.) -.PP -A protocol is needed to keep what you type from getting -garbled up with what Joe types. -Typically it's like this: -.P1 -.tr -- -.fi -.ft R -Joe types -.UL write -.UL smith -and waits. -.br -Smith types -.UL write -.UL joe -and waits. -.br -Joe now types his message -(as many lines as he likes). -When he's ready for a reply, he -signals it by typing -.UL (o) , -which -stands for ``over''. -.br -Now Smith types a reply, also -terminated by -.UL (o) . -.br -This cycle repeats until -someone gets tired; he then -signals his intent to quit with -.UL (oo) , -for ``over -and out''. -.br -To terminate -the conversation, each side must -type a ``control-d'' character alone -on a line. -When the other person types his ``control-d'', -you will get the message -.UL EOF -on your terminal. -.P2 -.PP -If you write to someone who isn't logged in, -or who doesn't want to be disturbed, -you'll be told. -If the target is logged in but doesn't answer -after a decent interval, -simply type ``control-d''. -.SH -On-line Manual -.PP -The -.ul -.UC UNIX -.ul -Programmer's Manual -is typically kept on-line. -If you get stuck on something, -and can't find an expert to assist you, -you can print on your terminal some manual section that might help. -This is also useful for getting the most up-to-date -information on a command. -To print a manual section, type -``man command-name''. -Thus to read up on the -.UL who -command, -type -.P1 -man who -.P2 -and, of course, -.P1 -man man -.P2 -tells all about the -.UL man -command. -.SH -Computer Aided Instruction -.PP -Your -.UC UNIX -system may have available -a program called -.UL learn , -which provides computer aided instruction on -the file system and basic commands, -the editor, -document preparation, -and even C programming. -Try typing the command -.P1 -learn -.P2 -If -.UL learn -exists on your system, -it will tell you what to do from there. diff --git a/share/doc/usd/01.begin/u2 b/share/doc/usd/01.begin/u2 deleted file mode 100644 index 8e30ccdb5a3..00000000000 --- a/share/doc/usd/01.begin/u2 +++ /dev/null @@ -1,1222 +0,0 @@ -.\" $OpenBSD: u2,v 1.2 2003/08/09 09:00:14 jmc Exp $ -.\" -.\" Copyright (C) Caldera International Inc. 2001-2002. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code and documentation must retain the above -.\" copyright notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed or owned by Caldera -.\" International, Inc. -.\" 4. Neither the name of Caldera International, Inc. nor the names of other -.\" contributors may be used to endorse or promote products derived from -.\" this software without specific prior written permission. -.\" -.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA -.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT, -.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -.\" POSSIBILITY OF SUCH DAMAGE. -.\" -.\" @(#)u2 8.1 (Berkeley) 6/8/93 -.\" -.SH -II. DAY-TO-DAY USE -.SH -Creating Files \(em The Editor -.PP -If you have to type a paper or a letter or a program, -how do you get the information stored in the machine? -Most of these tasks are done with -the -.UC UNIX -``text editor'' -.UL ed . -Since -.UL ed -is thoroughly documented in -.UL ed (1) -and explained in -.ul -A Tutorial Introduction to the UNIX Text Editor, -we won't spend any time here describing how to use it. -All we want it for right now is to make some -.ul -files. -(A file is just a collection of information stored in the machine, -a simplistic but adequate definition.) -.PP -To create a file -called -.UL junk -with some text in it, do the following: -.P1 -.ta .65i -ed junk \fR(invokes the text editor)\f3 -a \fR(command to ``ed'', to add text)\f3 -.ft I -now type in -whatever text you want ... -.ft 3 -\&. \fR(signals the end of adding text)\f3 -.P2 -The ``\f3.\fR'' that signals the end of adding text must be -at the beginning of a line by itself. -Don't forget it, -for until it is typed, -no other -.UL ed -commands will be recognized \(em -everything you type will be treated as text to be added. -.PP -At this point you can do various editing operations -on the text you typed in, such as correcting spelling mistakes, -rearranging paragraphs and the like. -Finally, you must write the information you have typed -into a file with the editor command -.UL w : -.P1 -w -.P2 -.UL ed -will respond with the number of characters it wrote -into the file -.UL junk . -.PP -Until the -.UL w -command, -nothing is stored permanently, -so if you hang up and go home -the information is lost.\(dg -.FS -\(dg This is not strictly true \(em -if you hang up while editing, the data you were -working on is saved in a file called -.UL ed.hup , -which you can continue with at your next session. -.FE -But after -.UL w -the information is there permanently; -you can re-access it any time by typing -.P1 -ed junk -.P2 -Type a -.UL q -command -to quit the editor. -(If you try to quit without writing, -.UL ed -will print a -.UL ? -to remind you. -A second -.UL q -gets you out regardless.) -.PP -Now create a second file called -.UL temp -in the same manner. -You should now have two files, -.UL junk -and -.UL temp . -.SH -What files are out there? -.PP -The -.UL ls -(for ``list'') command lists the names -(not contents) -of any of the files that -.UC UNIX -knows about. -If you type -.P1 -ls -.P2 -the response will be -.P1 -junk -temp -.P2 -which are indeed the two files just created. -The names are sorted into alphabetical order automatically, -but other variations are possible. -For example, -the command -.P1 -ls -t -.P2 -causes the files to be listed in the order in which they were last changed, -most recent first. -The -.UL \-l -option gives a ``long'' listing: -.P1 -ls -l -.P2 -will produce something like -.P1 --rw-rw-rw- 1 bwk users 41 Jul 22 2:56 junk --rw-rw-rw- 1 bwk users 78 Jul 22 2:57 temp -.P2 -The date and time are of the last change to the file. -The 41 and 78 are the number of characters -(which should agree with the numbers you got from -.UL ed ). -.UL bwk -is the owner of the file, that is, the person -who created it. -.UL users -is the name of the file's group. -The -.UL \-rw\-rw\-rw\- -tells who has permission to read and write the file, -in this case everyone. -.PP -Options can be combined: -.UL ls\ \-lt -gives the same thing as -.UL ls\ \-l , -but sorted into time order. -You can also name the files you're interested in, -and -.UL ls -will list the information about them only. -More details can be found in -.UL ls (1). -.PP -The use of optional arguments that begin with a minus sign, -like -.UL \-t -and -.UL \-lt , -is a common convention for -.UC UNIX -programs. -In general, if a program accepts such optional arguments, -they precede any filename arguments. -It is also vital that you separate the various arguments with spaces: -.UL ls\-l -is not the same as -.UL ls\ \ \-l . -.SH -Printing Files -.PP -Now that you've got a file of text, -how do you print it so people can look at it? -There are a host of programs that do that, -probably more than are needed. -.PP -One simple thing is to use the editor, -since printing is often done just before making changes anyway. -You can say -.P1 -ed junk -1,$p -.P2 -.UL ed -will reply with the count of the characters in -.UL junk -and then print all the lines in the file. -After you learn how to use the editor, -you can be selective about the parts you print. -.PP -There are times when it's not feasible to use the editor for printing. -For example, there is a limit on how big a file -.UL ed -can handle -(several thousand lines). -Secondly, -it -will only print one file at a time, -and sometimes you want to print several, one after another. -So here are a couple of alternatives. -.PP -First is -.UL cat , -the simplest of all the printing programs. -.UL cat -simply prints on the terminal the contents of all the files -named in a list. -Thus -.P1 -cat junk -.P2 -prints one file, and -.P1 -cat junk temp -.P2 -prints two. -The files are simply concatenated (hence the name -.UL cat '') `` -onto the terminal. -.PP -.UL pr -produces formatted printouts of files. -As with -.UL cat , -.UL pr -prints all the files named in a list. -The difference is that it produces -headings with date, time, page number and file name -at the top of each page, -and -extra lines to skip over the fold in the paper. -Thus, -.P1 -pr junk temp -.P2 -will print -.UL junk -neatly, -then skip to the top of a new page and print -.UL temp -neatly. -.PP -.UL pr -can also produce multi-column output: -.P1 -pr -3 junk -.P2 -prints -.UL junk -in 3-column format. -You can use any reasonable number in place of ``3'' -and -.UL pr -will do its best. -.UL pr -has other capabilities as well; -see -.UL pr (1). -.PP -It should be noted that -.UL pr -is -.ul -not -a formatting program in the sense of shuffling lines around -and justifying margins. -The true formatters are -.UL nroff -and -.UL troff , -which we will get to in the section on document preparation. -.PP -There are also programs that print files -on a high-speed printer. -Look in your manual under -.UL lpr . -.SH -Shuffling Files About -.PP -Now that you have some files in the file system -and some experience in printing them, -you can try bigger things. -For example, -you can move a file from one place to another -(which amounts to giving it a new name), -like this: -.P1 -mv junk precious -.P2 -This means that what used to be ``junk'' is now ``precious''. -If you do an -.UL ls -command now, -you will get -.P1 -precious -temp -.P2 -Beware that if you move a file to another one -that already exists, -the already existing contents are lost forever. -.PP -If you want -to make a -.ul -copy -of a file (that is, to have two versions of something), -you can use the -.UL cp -command: -.P1 -cp precious temp1 -.P2 -makes a duplicate copy of -.UL precious -in -.UL temp1 . -.PP -Finally, when you get tired of creating and moving -files, -there is a command to remove files from the file system, -called -.UL rm . -.P1 -rm temp temp1 -.P2 -will remove both of the files named. -.PP -You will get a warning message if one of the named files wasn't there, -but otherwise -.UL rm , -like most -.UC UNIX -commands, -does its work silently. -There is no prompting or chatter, -and error messages are occasionally curt. -This terseness is sometimes disconcerting -to new\%comers, -but experienced users find it desirable. -.SH -What's in a Filename -.PP -So far we have used filenames without ever saying what's -a legal name, -so it's time for a couple of rules. -First, filenames are limited to 14 characters, -which is enough to be descriptive.\(dg -.FS -\(dg In 4.2 BSD the limit was extended to 255 characters. -.FE -Second, although you can use almost any character -in a filename, -common sense says you should stick to ones that are visible, -and that you should probably avoid characters that might be used -with other meanings. -We have already seen, for example, -that in the -.UL ls -command, -.UL ls\ \-t -means to list in time order. -So if you had a file whose name -was -.UL \-t , -you would have a tough time listing it by name. -Besides the minus sign, there are other characters which -have special meaning. -To avoid pitfalls, -you would do well to -use only letters, numbers and the period -until you're familiar with the situation. -.PP -On to some more positive suggestions. -Suppose you're typing a large document -like a book. -Logically this divides into many small pieces, -like chapters and perhaps sections. -Physically it must be divided too, -for -.UL ed -will not handle really big files. -Thus you should type the document as a number of files. -You might have a separate file for each chapter, -called -.P1 -chap1 -chap2 -.ft R -etc... -.P2 -Or, if each chapter were broken into several files, you might have -.P1 -chap1.1 -chap1.2 -chap1.3 -\&... -chap2.1 -chap2.2 -\&... -.P2 -You can now tell at a glance where a particular file fits into the whole. -.PP -There are advantages to a systematic naming convention which are not obvious -to the novice -.UC UNIX -user. -What if you wanted to print the whole book? -You could say -.P1 -pr chap1.1 chap1.2 chap1.3 ...... -.P2 -but you would get tired pretty fast, and would probably even make mistakes. -Fortunately, there is a shortcut. -You can say -.P1 -pr chap* -.P2 -The -.UL * -means ``anything at all,'' -so this translates into ``print all files -whose names begin with -.UL chap '', -listed in alphabetical order. -.PP -This shorthand notation -is not a property of the -.UL pr -command, by the way. -It is system-wide, a service of the program -that interprets commands -(the ``shell,'' -.UL sh (1)). -Using that fact, you can see how to list the names of the files in the book: -.P1 -ls chap* -.P2 -produces -.P1 -chap1.1 -chap1.2 -chap1.3 -\&... -.P2 -The -.UL * -is not limited to the last position in a filename \(em -it can be anywhere -and can occur several times. -Thus -.P1 -rm *junk* *temp* -.P2 -removes all files that contain -.UL junk -or -.UL temp -as any part of their name. -As a special case, -.UL * -by itself matches every filename, -so -.P1 -pr * -.P2 -prints all your files -(alphabetical order), -and -.P1 -rm * -.P2 -removes -.ul -all files. -(You had better be -.IT very -sure that's what you wanted to say!) -.PP -The -.UL * -is not -the only pattern-matching feature available. -Suppose you want to print only chapters 1 through 4 and 9. -Then you can say -.P1 -pr chap[12349]* -.P2 -The -.UL [...] -means to match any of the characters inside the brackets. -A range of consecutive letters or digits can be abbreviated, -so you can also do this -with -.P1 -pr chap[1-49]* -.P2 -Letters can also be used within brackets: -.UL [a\-z] -matches any character in the range -.UL a -through -.UL z . -.PP -The -.UL ? -pattern matches any single character, -so -.P1 -ls ? -.P2 -lists all files which have single-character names, -and -.P1 -ls -l chap?.1 -.P2 -lists information about the first file of each chapter -.UL chap1.1 \&, ( -.UL chap2.1 , -etc.). -.PP -Of these niceties, -.UL * -is certainly the most useful, -and you should get used to it. -The others are frills, but worth knowing. -.PP -If you should ever have to turn off the special meaning -of -.UL * , -.UL ? , -etc., -enclose the entire argument in single quotes, -as in -.P1 -ls \(fm?\(fm -.P2 -We'll see some more examples of this shortly. -.SH -What's in a Filename, Continued -.PP -When you first made that file called -.UL junk , -how did -the system -know that there wasn't another -.UL junk -somewhere else, -especially since the person in the next office is also -reading this tutorial? -The answer is that generally each user -has a private -.IT directory , -which contains only the files that belong to him. -When you log in, you are ``in'' your directory. -Unless you take special action, -when you create a new file, -it is made in the directory that you are currently in; -this is most often your own directory, -and thus the file is unrelated to any other file of the same name -that might exist in someone else's directory. -.PP -The set of all files -is organized into a (usually big) tree, -with your files located several branches into the tree. -It is possible for you to ``walk'' around this tree, -and to find any file in the system, by starting at the root -of the tree and walking along the proper set of branches. -Conversely, you can start where you are and walk toward the root. -.PP -Let's try the latter first. -The basic tools is the command -.UL pwd -(``print working directory''), -which prints the name of the directory you are currently in. -.PP -Although the details will vary according to the system you are on, -if you give the -command -.UL pwd , -it will print something like -.P1 -/usr/your\(hyname -.P2 -This says that you are currently in the directory -.UL your-name , -which is in turn in the directory -.UL /usr , -which is in turn in the root directory -called by convention just -.UL / . -(Even if it's not called -.UL /usr -on your system, -you will get something analogous. -Make the corresponding mental adjustment and read on.) -.PP -If you now type -.P1 -ls /usr/your\(hyname -.P2 -you should get exactly the same list of file names -as you get from a plain -.UL ls : -with no arguments, -.UL ls -lists the contents of the current directory; -given the name of a directory, -it lists the contents of that directory. -.PP -Next, try -.P1 -ls /usr -.P2 -This should print a long series of names, -among which is your own login name -.UL your-name . -On many systems, -.UL usr -is a directory that contains the directories -of all the normal users of the system, -like you. -.PP -The next step is to try -.P1 -ls / -.P2 -You should get a response something like this -(although again the details may be different): -.P1 -bin -dev -etc -lib -tmp -usr -.P2 -This is a collection of the basic directories of files -that -the system -knows about; -we are at the root of the tree. -.PP -Now try -.P1 -cat /usr/your\(hyname/junk -.P2 -(if -.UL junk -is still around in your directory). -The name -.P1 -/usr/your\(hyname/junk -.P2 -is called the -.UL pathname -of the file that -you normally think of as ``junk''. -``Pathname'' has an obvious meaning: -it represents the full name of the path you have to follow from the root -through the tree of directories to get to a particular file. -It is a universal rule in -the -.UC UNIX -system -that anywhere you can use an ordinary filename, -you can use a pathname. -.PP -Here is a picture which may make this clearer: -.P1 1 -.ft R -.if t .vs 9p -.if t .tr /\(sl -.if t .tr || -.ce 100 -(root) -/ | \e -/ | \e -/ | \e - bin etc usr dev tmp -/ | \e / | \e / | \e / | \e / | \e -/ | \e -/ | \e -adam eve mary -/ / \e \e - / \e junk -junk temp -.ce 0 -.br -.tr // -.P2 -.LP -Notice that Mary's -.UL junk -is unrelated to Eve's. -.PP -This isn't too exciting if all the files of interest are in your own -directory, but if you work with someone else -or on several projects concurrently, -it becomes handy indeed. -For example, your friends can print your book by saying -.P1 -pr /usr/your\(hyname/chap* -.P2 -Similarly, you can find out what files your neighbor has -by saying -.P1 -ls /usr/neighbor\(hyname -.P2 -or make your own copy of one of his files by -.P1 -cp /usr/your\(hyneighbor/his\(hyfile yourfile -.P2 -.PP -If your neighbor doesn't want you poking around in his files, -or vice versa, -privacy can be arranged. -Each file and directory has read-write-execute permissions for the owner, -a group, and everyone else, -which can be set -to control access. -See -.UL ls (1) -and -.UL chmod (1) -for details. -As a matter of observed fact, -most users most of the time find openness of more -benefit than privacy. -.PP -As a final experiment with pathnames, try -.P1 -ls /bin /usr/bin -.P2 -Do some of the names look familiar? -When you run a program, by typing its name after the prompt character, -the system simply looks for a file of that name. -It normally looks first in your directory -(where it typically doesn't find it), -then in -.UL /bin -and finally in -.UL /usr/bin . -There is nothing magic about commands like -.UL cat -or -.UL ls , -except that they have been collected into a couple of places to be easy to find and administer. -.PP -What if you work regularly with someone else on common information -in his directory? -You could just log in as your friend each time you want to, -but you can also say -``I want to work on his files instead of my own''. -This is done by changing the directory that you are -currently in: -.P1 -cd /usr/your\(hyfriend -.P2 -(On some systems, -.UL cd -is spelled -.UL chdir .) -Now when you use a filename in something like -.UL cat -or -.UL pr , -it refers to the file in your friend's directory. -Changing directories doesn't affect any permissions associated -with a file \(em -if you couldn't access a file from your own directory, -changing to another directory won't alter that fact. -Of course, -if you forget what directory you're in, type -.P1 -pwd -.P2 -to find out. -.PP -It is usually convenient to arrange your own files -so that all the files related to one thing are in a directory separate -from other projects. -For example, when you write your book, you might want to keep all the text -in a directory called -.UL book . -So make one with -.P1 -mkdir book -.P2 -then go to it with -.P1 -cd book -.P2 -then start typing chapters. -The book is now found in (presumably) -.P1 -/usr/your\(hyname/book -.P2 -To remove the directory -.UL book , -type -.P1 -rm book/* -rmdir book -.P2 -The first command removes all files from the directory; -the second -removes the empty directory. -.PP -You can go up one level in the tree of files -by saying -.P1 -cd .. -.P2 -.UL .. '' `` -is the name of the parent of whatever directory you are currently in. -For completeness, -.UL . '' `` -is an alternate name -for the directory you are in. -.SH -Using Files instead of the Terminal -.PP -Most of the commands we have seen so far produce output -on the terminal; -some, like the editor, also take their input from the terminal. -It is universal in -.UC UNIX -systems -that the terminal can be replaced by a file -for either or both of input and output. -As one example, -.P1 -ls -.P2 -makes a list of files on your terminal. -But if you say -.P1 -ls >filelist -.P2 -a list of your files will be placed in the file -.UL filelist -(which -will be created if it doesn't already exist, -or overwritten if it does). -The symbol -.UL > -means ``put the output on the following file, -rather than on the terminal.'' -Nothing is produced on the terminal. -As another example, you could combine -several files into one by capturing the output of -.UL cat -in a file: -.P1 -cat f1 f2 f3 >temp -.P2 -.PP -The symbol -.UL >> -operates very much like -.UL > -does, -except that it means -``add to the end of.'' -That is, -.P1 -cat f1 f2 f3 >>temp -.P2 -means to concatenate -.UL f1 , -.UL f2 -and -.UL f3 -to the end of whatever is already in -.UL temp , -instead of overwriting the existing contents. -As with -.UL > , -if -.UL temp -doesn't exist, it will be created for you. -.PP -In a similar way, the symbol -.UL < -means to take the input -for a program from the following file, -instead of from the terminal. -Thus, you could make up a script of commonly used editing commands -and put them into a file called -.UL script . -Then you can run the script on a file by saying -.P1 -ed file <script -.P2 -As another example, you can use -.UL ed -to prepare a letter in file -.UL let , -then send it to several people with -.P1 -mail adam eve mary joe <let -.P2 -.SH -Pipes -.PP -One of the novel contributions of -the -.UC UNIX -system -is the idea of a -.ul -pipe. -A pipe is simply a way to connect the output of one program -to the input of another program, -so the two run as a sequence of processes \(em -a pipeline. -.PP -For example, -.P1 -pr f g h -.P2 -will print the files -.UL f , -.UL g , -and -.UL h , -beginning each on a new page. -Suppose you want -them run together instead. -You could say -.P1 -cat f g h >temp -pr <temp -rm temp -.P2 -but this is more work than necessary. -Clearly what we want is to take the output of -.UL cat -and -connect it to the input of -.UL pr . -So let us use a pipe: -.P1 -cat f g h | pr -.P2 -The vertical bar -.UL | -means to -take the output from -.UL cat , -which would normally have gone to the terminal, -and put it into -.UL pr -to be neatly formatted. -.PP -There are many other examples of pipes. -For example, -.P1 -ls | pr -3 -.P2 -prints a list of your files in three columns. -The program -.UL wc -counts the number of lines, words and characters in -its input, and as we saw earlier, -.UL who -prints a list of currently-logged on people, -one per line. -Thus -.P1 -who | wc -.P2 -tells how many people are logged on. -And of course -.P1 -ls | wc -.P2 -counts your files. -.PP -Any program -that reads from the terminal -can read from a pipe instead; -any program that writes on the terminal can drive -a pipe. -You can have as many elements in a pipeline as you wish. -.PP -Many -.UC UNIX -programs are written so that they will take their input from one or more files -if file arguments are given; -if no arguments are given they will read from the terminal, -and thus can be used in pipelines. -.UL pr -is one example: -.P1 -pr -3 a b c -.P2 -prints files -.UL a , -.UL b -and -.UL c -in order in three columns. -But in -.P1 -cat a b c | pr -3 -.P2 -.UL pr -prints the information coming down the pipeline, -still in -three columns. -.SH -The Shell -.PP -We have already mentioned once or twice the mysterious -``shell,'' -which is in fact -.UL sh (1). -The shell is the program that interprets what you type as -commands and arguments. -It also looks after translating -.UL * , -etc., -into lists of filenames, -and -.UL < , -.UL > , -and -.UL | -into changes of input and output streams. -.PP -The shell has other capabilities too. -For example, you can run two programs with one command line -by separating the commands with a semicolon; -the shell recognizes the semicolon and -breaks the line into two commands. -Thus -.P1 -date; who -.P2 -does both commands before returning with a prompt character. -.PP -You can also have more than one program running -.ul -simultaneously -if you wish. -For example, if you are doing something time-consuming, -like the editor script -of an earlier section, -and you don't want to wait around for the results before starting something else, -you can say -.P1 -ed file <script & -.P2 -The ampersand at the end of a command line -says ``start this command running, -then take further commands from the terminal immediately,'' -that is, -don't wait for it to complete. -Thus the script will begin, -but you can do something else at the same time. -Of course, to keep the output from interfering -with what you're doing on the terminal, -it would be better to say -.P1 -ed file <script >script.out & -.P2 -which saves the output lines in a file -called -.UL script.out . -.PP -When you initiate a command with -.UL & , -the system -replies with a number -called the process number, -which identifies the command in case you later want -to stop it. -If you do, you can say -.P1 -kill process\(hynumber -.P2 -If you forget the process number, -the command -.UL ps -will tell you about everything you have running. -(If you are desperate, -.UL kill\ 0 -will kill all your processes.) -And if you're curious about other people, -.UL ps\ a -will tell you about -.ul -all -programs that are currently running. -.PP -You can say -.P1 1 -(command\(hy1; command\(hy2; command\(hy3) & -.P2 -to start three commands in the background, -or you can start a background pipeline with -.P1 -command\(hy1 | command\(hy2 & -.P2 -.PP -Just as you can tell the editor -or some similar program to take its input -from a file instead of from the terminal, -you can tell the shell to read a file -to get commands. -(Why not? The shell, after all, is just a program, -albeit a clever one.) -For instance, suppose you want to set tabs on -your terminal, and find out the date -and who's on the system every time you log in. -Then you can put the three necessary commands -.UL tabs , ( -.UL date , -.UL who ) -into a file, let's call it -.UL startup , -and then run it with -.P1 -sh startup -.P2 -This says to run the shell with the file -.UL startup -as input. -The effect is as if you had typed -the contents of -.UL startup -on the terminal. -.PP -If this is to be a regular thing, -you can eliminate the -need to type -.UL sh : -simply type, once only, the command -.P1 -chmod +x startup -.P2 -and thereafter you need only say -.P1 -startup -.P2 -to run the sequence of commands. -The -.UL chmod (1) -command marks the file executable; -the shell recognizes this and runs it as a sequence of commands. -.PP -If you want -.UL startup -to run automatically every time you log in, -create a file in your login directory called -.UL .profile , -and place in it the line -.UL startup . -When the shell first gains control when you log in, -it looks for the -.UL .profile -file and does whatever commands it finds in it.\(dg -.FS -\(dg The c shell instead reads a file called -.UL .login -. -.FE -We'll get back to the shell in the section -on programming. diff --git a/share/doc/usd/01.begin/u3 b/share/doc/usd/01.begin/u3 deleted file mode 100644 index dcd2c4e1771..00000000000 --- a/share/doc/usd/01.begin/u3 +++ /dev/null @@ -1,357 +0,0 @@ -.\" $OpenBSD: u3,v 1.2 2003/08/09 09:00:14 jmc Exp $ -.\" -.\" Copyright (C) Caldera International Inc. 2001-2002. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code and documentation must retain the above -.\" copyright notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed or owned by Caldera -.\" International, Inc. -.\" 4. Neither the name of Caldera International, Inc. nor the names of other -.\" contributors may be used to endorse or promote products derived from -.\" this software without specific prior written permission. -.\" -.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA -.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT, -.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -.\" POSSIBILITY OF SUCH DAMAGE. -.\" -.\" @(#)u3 8.1 (Berkeley) 6/8/93 -.\" -.sp -.SH -III. DOCUMENT PREPARATION -.PP -.UC UNIX -systems are used extensively for document preparation. -There are two major -formatting -programs, -that is, -programs that produce a text with -justified right margins, automatic page numbering and titling, -automatic hyphenation, -and the like. -.UL nroff -is designed to produce output on terminals and -line-printers. -.UL troff -(pronounced ``tee-roff'') -instead drives a phototypesetter, -which produces very high quality output -on photographic paper. -This paper was formatted with -.UL troff . -.SH -Formatting Packages -.PP -The basic idea of -.UL nroff -and -.UL troff -is that the text to be formatted contains within it -``formatting commands'' that indicate in detail -how the formatted text is to look. -For example, there might be commands that specify how long -lines are, whether to use single or double spacing, -and what running titles to use on each page. -.PP -Because -.UL nroff -and -.UL troff -are relatively hard to learn to use effectively, -several -``packages'' of canned formatting requests are available -to let you specify -paragraphs, running titles, footnotes, multi-column output, -and so on, with little effort -and without having to learn -.UL nroff -and -.UL troff . -These packages take a modest effort to learn, -but the rewards for using them are so great -that it is time well spent. -.PP -In this section, -we will provide a hasty look at the ``manuscript'' -package known as -.UL \-ms . -Formatting requests typically consist of a period and two upper-case letters, -such as -.UL .TL , -which is used to introduce a title, -or -.UL .PP -to begin a new paragraph. -.PP -A document is typed so it looks something like this: -.P1 -\&.TL -title of document -\&.AU -author name -\&.SH -section heading -\&.PP -paragraph ... -\&.PP -another paragraph ... -\&.SH -another section heading -\&.PP -etc. -.P2 -The lines that begin with a period are the formatting requests. -For example, -.UL .PP -calls for starting a new paragraph. -The precise meaning of -.UL .PP -depends on what output device is being used -(typesetter or terminal, for instance), -and on what publication the document will appear in. -For example, -.UL \-ms -normally assumes that a paragraph is preceded by a space -(one line in -.UL nroff , -\(12 line in -.UL troff ), -and the first word is indented. -These rules can be changed if you like, -but they are changed by changing the interpretation -of -.UL .PP , -not by re-typing the document. -.PP -To actually produce a document in standard format -using -.UL \-ms , -use the command -.P1 -troff -ms files ... -.P2 -for the typesetter, and -.P1 -nroff -ms files ... -.P2 -for a terminal. -The -.UL \-ms -argument tells -.UL troff -and -.UL nroff -to use the manuscript package of formatting requests. -.PP -There are several similar packages; -check with a local expert to determine which ones -are in common use on your machine. -.SH -Supporting Tools -.PP -In addition to the basic formatters, -there is -a host of supporting programs -that help with document preparation. -The list in the next few paragraphs -is far from complete, -so browse through the manual -and check with people around you for other possibilities. -.PP -.UL eqn -and -.UL neqn -let you integrate mathematics -into the text of a document, -in an easy-to-learn language that closely resembles the way -you would speak it aloud. -For example, the -.UL eqn -input -.P1 -sum from i=0 to n x sub i ~=~ pi over 2 -.P2 -produces the output -.EQ -sum from i=0 to n x sub i ~=~ pi over 2 -.EN -.PP -The program -.UL tbl -provides an analogous service for preparing tabular material; -it does all the computations necessary to align complicated columns -with elements of varying widths. -.PP -.UL refer -prepares bibliographic citations from a data base, -in whatever style is defined by the formatting package. -It looks after all the details of numbering references in sequence, -filling in page and volume numbers, -getting the author's initials and the journal name right, -and so on. -.PP -.UL spell -and -.UL typo -detect possible spelling mistakes in a document.\(dg -.FS -\(dg "typo" is not provided with Berkeley Unix. -.FE -.UL spell -works by comparing the words in your document -to a dictionary, -printing those that are not in the dictionary. -It knows enough about English spelling to detect plurals and the like, -so it does a very good job. -.UL typo -looks for words which are ``unusual'', -and prints those. -Spelling mistakes tend to be more unusual, -and thus show up early when the most unusual words -are printed first. -.PP -.UL grep -looks through a set of files for lines -that contain a particular text pattern -(rather like the editor's context search does, -but on a bunch of files). -For example, -.P1 -grep \(fming$\(fm chap* -.P2 -will find all lines that end with -the letters -.UL ing -in the files -.UL chap* . -(It is almost always a good practice to put single quotes around -the pattern you're searching for, -in case it contains characters like -.UL * -or -.UL $ -that have a special meaning to the shell.) -.UL grep -is often useful for finding out in which of a set of files -the misspelled words detected by -.UL spell -are actually located. -.PP -.UL diff -prints a list of the differences between -two files, -so you can compare -two versions of something automatically -(which certainly beats proofreading by hand). -.PP -.UL wc -counts the words, lines and characters in a set of files. -.UL tr -translates characters into other characters; -for example it will convert upper to lower case and vice versa. -This translates upper into lower: -.P1 -tr A-Z a-z <input >output -.P2 -.PP -.UL sort -sorts files in a variety of ways; -.UL sed -provides many of the editing facilities -of -.UL ed , -but can apply them to arbitrarily long inputs. -.UL awk -provides the ability to do both pattern matching and numeric computations, -and to conveniently process fields within lines. -These programs are for more advanced users, -and they are not limited to document preparation. -Put them on your list of things to learn about. -.PP -Most of these programs are either independently documented -(like -.UL eqn -and -.UL tbl ), -or are sufficiently simple that the description in -the -.ul 2 -.UC UNIX -Programmer's Manual -is adequate explanation. -.SH -Hints for Preparing Documents -.PP -Most documents go through several versions (always more than you expected) before they -are finally finished. -Accordingly, you should do whatever possible to make -the job of changing them easy. -.PP -First, when you do the purely mechanical operations of typing, -type so that subsequent editing will be easy. -Start each sentence on a new line. -Make lines short, -and break lines at natural places, -such as after commas and semicolons, -rather than randomly. -Since most people change documents by rewriting phrases -and adding, deleting and rearranging sentences, -these precautions simplify any editing -you have to do later. -.PP -Keep the individual files of a document down -to modest size, -perhaps ten to fifteen thousand characters. -Larger files edit more slowly, -and of course if you make a dumb mistake -it's better to have clobbered a small file than a big one. -Split into files at natural boundaries in the document, -for the same reasons that you start each sentence -on a new line. -.PP -The second aspect of making change easy -is to not commit yourself to formatting details too early. -One of the advantages of formatting packages like -.UL \-ms -is that they permit you to delay decisions -to the last possible moment. -Indeed, -until a document is printed, -it is not even decided whether it will be typeset -or put on a line printer. -.PP -As a rule of thumb, for all but the most trivial jobs, -you should type a document in terms of a set of requests -like -.UL .PP , -and then define them appropriately, -either by using one of the canned packages -(the better way) -or by defining your own -.UL nroff -and -.UL troff -commands. -As long as you have entered the text in some systematic way, -it can always be cleaned up and re-formatted -by a judicious combination of -editing commands and request definitions. diff --git a/share/doc/usd/01.begin/u4 b/share/doc/usd/01.begin/u4 deleted file mode 100644 index 60684f1cd63..00000000000 --- a/share/doc/usd/01.begin/u4 +++ /dev/null @@ -1,323 +0,0 @@ -.\" $OpenBSD: u4,v 1.2 2003/08/09 09:00:14 jmc Exp $ -.\" -.\" Copyright (C) Caldera International Inc. 2001-2002. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code and documentation must retain the above -.\" copyright notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed or owned by Caldera -.\" International, Inc. -.\" 4. Neither the name of Caldera International, Inc. nor the names of other -.\" contributors may be used to endorse or promote products derived from -.\" this software without specific prior written permission. -.\" -.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA -.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT, -.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -.\" POSSIBILITY OF SUCH DAMAGE. -.\" -.\" @(#)u4 8.1 (Berkeley) 6/8/93 -.\" -.SH -IV. PROGRAMMING -.PP -There will be no attempt made to teach any of -the programming languages available -but a few words of advice are in order. -One of the reasons why the -.UC UNIX -system is a productive programming environment -is that there is already a rich set of tools available, -and facilities like pipes, I/O redirection, -and the capabilities of the shell -often make it possible to do a job -by pasting together programs that already exist -instead of writing from scratch. -.SH -The Shell -.PP -The pipe mechanism lets you fabricate quite complicated operations -out of spare parts that already exist. -For example, -the first draft of the -.UL spell -program was (roughly) -.P1 -.ta .6i 1.2i -cat ... \f2collect the files\f3 -| tr ... \f2put each word on a new line\f3 -| tr ... \f2delete punctuation, etc.\f3 -| sort \f2into dictionary order\f3 -| uniq \f2discard duplicates\f3 -| comm \f2print words in text\f3 - \f2 but not in dictionary\f3 -.P2 -More pieces have been added subsequently, -but this goes a long way -for such a small effort. -.PP -The editor can be made to do things that would normally -require special programs on other systems. -For example, to list the first and last lines of each of a -set of files, such as a book, -you could laboriously type -.P1 -ed -e chap1.1 -1p -$p -e chap1.2 -1p -$p -.ft R -etc. -.P2 -But you can do the job much more easily. -One way is to type -.P1 -ls chap* >temp -.P2 -to get the list of filenames into a file. -Then edit this file to make the necessary -series of editing commands -(using the global commands of -.UL ed ), -and write it into -.UL script . -Now the command -.P1 -ed <script -.P2 -will produce -the same output as the laborious hand typing. -Alternately -(and more easily), -you can use the fact that the shell will perform loops, -repeating a set of commands over and over again -for a set of arguments: -.P1 -for i in chap* -do - ed $i <script -done -.P2 -This sets the shell variable -.UL i -to each file name in turn, -then does the command. -You can type this command at the terminal, -or put it in a file for later execution. -.SH -Programming the Shell -.PP -An option often overlooked by newcomers -is that the shell is itself a programming language, -with variables, -control flow -.UL if-else , ( -.UL while , -.UL for , -.UL case ), -subroutines, -and interrupt handling. -Since -there are -many building-block programs, -you can sometimes avoid writing a new program -merely by piecing together some of the building blocks -with shell command files. -.PP -We will not go into any details here; -examples and rules can be found in -.ul -An Introduction to the -.ul -.UC UNIX -.IT Shell , -by S. R. Bourne. -.SH -Programming in C -.PP -If you are undertaking anything substantial, -C is the only reasonable choice of programming language: -everything in -the -.UC UNIX -system -is tuned to it. -The -system -itself -is written in C, -as are most of the programs that run on it. -It is also an easy language to use -once you get started. -C is introduced and fully described in -.ul -The C Programming Language -by -B. W. Kernighan and D. M. Ritchie -(Prentice-Hall, 1978). -Several sections of the manual -describe the system interfaces, that is, -how you do I/O -and similar functions. -Read -.ul -UNIX Programming -for more complicated things. -.PP -Most input and output in C is best handled with the -standard I/O library, -which provides a set of I/O functions -that exist in compatible form on most machines -that have C compilers. -In general, it's wisest to confine the system interactions -in a program to the facilities provided by this library. -.PP -C programs that don't depend too much on special features of -.UC UNIX -(such as pipes) -can be moved to other computers that have C compilers. -The list of such machines grows daily; -in addition to the original -.UC PDP -11, -it currently includes -at least -Honeywell 6000, -IBM 370 and PC families, -Interdata 8/32, -Data General Nova and Eclipse, -HP 2100, -Harris /7, -Motorola 68000 family (including machines like Sun Microsystems and -Apple Macintosh), -VAX 11 family, -SEL 86, -and -Zilog Z80. -Calls to the standard I/O library will work on all of these machines. -.PP -There are a number of supporting programs that go with C. -.UL lint -checks C programs for potential portability problems, -and detects errors such as mismatched argument types -and uninitialized variables. -.PP -For larger programs -(anything whose source is on more than one file) -.UL make -allows you to specify the dependencies among the source files -and the processing steps needed to make a new version; -it then checks the times that the pieces were last changed -and does the minimal amount of recompiling -to create a consistent updated version. -.PP -The debugger -.UL gdb -is useful for digging through the dead bodies -of C programs, -but is rather hard to learn to use effectively. -The most effective debugging tool is still -careful thought, coupled with judiciously placed -print statements. -.PP -The C compiler provides a limited instrumentation service, -so you can find out -where programs spend their time and what parts are worth optimizing. -Compile the routines with the -.UL \-pg -option; -after the test run, use -.UL gprof -to print an execution profile. -The command -.UL time -will give you the gross run-time statistics -of a program, but they are not super accurate or reproducible. -.SH -Other Languages -.PP -If you -.ul -have -to use Fortran, -there are two possibilities. -You might consider -Ratfor, -which gives you the decent control structures -and free-form input that characterize C, -yet lets you write code that -is still portable to other environments. -Bear in mind that -.UC UNIX -Fortran -tends to produce large and relatively slow-running -programs. -Furthermore, supporting software like -.UL gdb , -.UL prof , -etc., are all virtually useless with Fortran programs. -There may also be a Fortran 77 compiler on your system. -If so, -this is a viable alternative to -Ratfor, -and has the non-trivial advantage that it is compatible with C -and related programs. -(The Ratfor processor -and C tools -can be used with Fortran 77 too.) -.PP -If your application requires you to translate -a language into a set of actions or another language, -you are in effect building a compiler, -though probably a small one. -In that case, -you should be using -the -.UL yacc -compiler-compiler, -which helps you develop a compiler quickly. -The -.UL lex -lexical analyzer generator does the same job -for the simpler languages that can be expressed as regular expressions. -It can be used by itself, -or as a front end to recognize inputs for a -.UL yacc -based -program. -Both -.UL yacc -and -.UL lex -require some sophistication to use, -but the initial effort of learning them -can be repaid many times over in programs -that are easy to change later on. -.PP -Most -.UC UNIX -systems also make available other languages, -such as -Algol 68, APL, Basic, Lisp, Pascal, and Snobol. -Whether these are useful depends largely on the local environment: -if someone cares about the language and has worked on it, -it may be in good shape. -If not, the odds are strong that it -will be more trouble than it's worth. diff --git a/share/doc/usd/01.begin/u5 b/share/doc/usd/01.begin/u5 deleted file mode 100644 index d7d904132a9..00000000000 --- a/share/doc/usd/01.begin/u5 +++ /dev/null @@ -1,219 +0,0 @@ -.\" $OpenBSD: u5,v 1.1 2003/06/26 16:39:51 mickey Exp $ -.\" -.\" Copyright (C) Caldera International Inc. 2001-2002. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code and documentation must retain the above -.\" copyright notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed or owned by Caldera -.\" International, Inc. -.\" 4. Neither the name of Caldera International, Inc. nor the names of other -.\" contributors may be used to endorse or promote products derived from -.\" this software without specific prior written permission. -.\" -.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA -.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT, -.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -.\" POSSIBILITY OF SUCH DAMAGE. -.\" -.\" @(#)u5 8.1 (Berkeley) 6/8/93 -.\" -.SH -V. UNIX READING LIST -.SH -General: -.LP -K. L. Thompson and D. M. Ritchie, -.IT The -.ul -.UC UNIX -.ul -Programmer's Manual, -Bell Laboratories, 1978 (PS2:3)\(dd -Lists commands, -system routines and interfaces, file formats, -and some of the maintenance procedures. -You can't live without this, -although you will probably only need to read section 1. -.LP -D. M. Ritchie and K. L. Thompson, -``The -.UC UNIX -Time-sharing System,'' -CACM, July 1974. (PS2:1)\(dd -.FS -\(dg These documents (previously in Volume 2 of the Bell Labs -Unix distribution) are provided among the "User Supplementary" -Documents for 4.3BSD, available from the Usenix Association. -.FE -.FS -\(dd These are among the "Programmer Supplementary" Documents for 4.3BSD. -PS1 is Volume 1, PS2 is Volume 2. -.FE -An overview of the system, -for people interested in operating systems. -Worth reading by anyone who programs. -Contains a remarkable number of one-sentence observations -on how to do things right. -.LP -The Bell System Technical Journal -(BSTJ) -Special Issue on -.UC UNIX , -July/August, 1978, -contains many papers describing recent developments, -and some retrospective material. -.LP -The 2nd International Conference on Software Engineering -(October, 1976) -contains several -papers describing the use of the -Programmer's Workbench -.UC PWB ) ( -version of -.UC UNIX . -.SH -Document Preparation: -.LP -B. W. Kernighan, -``A Tutorial Introduction to the -.UC UNIX -Text Editor'' (USD:12) -and -``Advanced Editing on -.UC UNIX ,'' -(USD:13) Bell Laboratories, 1978.\(dg -Beginners need the introduction; -the advanced material will help you get the most -out of the editor. -.LP -M. E. Lesk, -``Typing Documents on -.UC UNIX ,'' -Bell Laboratories, 1978. (USD:20)\(dg -Describes the -.UL \-ms -macro package, which isolates the novice -from the vagaries of -.UL nroff -and -.UL troff , -and takes care of most formatting situations. -If this specific package isn't available on your system, -something similar probably is. -The most likely alternative is the -.UC PWB/UNIX -macro package -.UL \-mm ; -see your local guru if you use -.UC PWB/UNIX .* -.FS -*The macro package -me is additionally available on Berkeley Unix Systems. --mm is typically not available. -.FE -.LP -B. W. Kernighan and L. L. Cherry, -``A System for Typesetting Mathematics,'' -Bell Laboratories Computing Science Tech. Rep. 17. (USD:26)\(dg -.LP -M. E. Lesk, -``Tbl \(em A Program to Format Tables,'' -Bell Laboratories CSTR 49, 1976. (USD:28)\(dg -.LP -J. F. Ossanna, Jr., -``NROFF/TROFF User's Manual,'' -Bell Laboratories CSTR 54, 1976. (USD:24)\(dg -.UL troff -is the basic formatter used by -.UL \-ms , -.UL eqn -and -.UL tbl . -The reference manual is indispensable -if you are going to write or maintain these -or similar programs. -But start with: -.LP -B. W. Kernighan, -``A TROFF Tutorial,'' -Bell Laboratories, 1976. (USD:25)\(dg -An attempt to unravel the intricacies of -.UL troff . -.SH -Programming: -.LP -B. W. Kernighan and D. M. Ritchie, -.ul -The C Programming Language, -Prentice-Hall, 1978. -Contains a tutorial introduction, -complete discussions of all language features, -and the reference manual. -.LP -B. W. Kernighan and R. Pike, -.ul -The Unix Programming Environment, -Prentice-Hall, 1984. -Contains many examples of C programs which use the system -interfaces, and explanations of ``why''. -.LP -B. W. Kernighan and D. M. Ritchie, -.UC UNIX \& `` -Programming,'' -Bell Laboratories, 1978. (PS2:3)\(dd -Describes how to interface with the system from C programs: -I/O calls, signals, processes. -.LP -S. R. Bourne, -``An Introduction to the -.UC UNIX -Shell,'' -Bell Laboratories, 1978. (USD:3)\(dg -An introduction and reference manual for the Version 7 shell. -Mandatory reading if you intend to make effective use -of the programming power -of this shell. -.LP -S. C. Johnson, -``Yacc \(em Yet Another Compiler-Compiler,'' -Bell Laboratories CSTR 32, 1978. (PS1:15)\(dd -.LP -M. E. Lesk, -``Lex \(em A Lexical Analyzer Generator,'' -Bell Laboratories CSTR 39, 1975. (PS1:16)\(dd -.LP -S. C. Johnson, -``Lint, a C Program Checker,'' -Bell Laboratories CSTR 65, 1977. (PS1:9)\(dd -.LP -S. I. Feldman, -``MAKE \(em A Program for Maintaining Computer Programs,'' -Bell Laboratories CSTR 57, 1977. (PS1:12)\(dd -.LP -J. F. Maranzano and S. R. Bourne, -``A Tutorial Introduction to ADB,'' -Bell Laboratories CSTR 62, 1977. (PS1:10)\(dd -An introduction to a powerful but complex debugging tool. -.LP -S. I. Feldman and P. J. Weinberger, -``A Portable Fortran 77 Compiler,'' -Bell Laboratories, 1978. (PS1:2)\(dd -A full Fortran 77 for -.UC UNIX -systems. diff --git a/share/doc/usd/02.learn/COPYRIGHT b/share/doc/usd/02.learn/COPYRIGHT deleted file mode 100644 index d0072bf5e3b..00000000000 --- a/share/doc/usd/02.learn/COPYRIGHT +++ /dev/null @@ -1,25 +0,0 @@ -.\" $OpenBSD: COPYRIGHT,v 1.2 2001/02/03 08:15:10 niklas Exp $ -.\" -.\" /**************************************************************** -.\" Copyright (C) AT&T 1995 -.\" All Rights Reserved -.\" -.\" Permission to use, copy, modify, and distribute this software and -.\" its documentation for any purpose and without fee is hereby -.\" granted, provided that the above copyright notice appear in all -.\" copies and that both that the copyright notice and this -.\" permission notice and warranty disclaimer appear in supporting -.\" documentation, and that the name of AT&T or any of its entities -.\" not be used in advertising or publicity pertaining to -.\" distribution of the software without specific, written prior -.\" permission. -.\" -.\" AT&T DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, -.\" INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. -.\" IN NO EVENT SHALL AT&T OR ANY OF ITS ENTITIES BE LIABLE FOR ANY -.\" SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER -.\" IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, -.\" ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF -.\" THIS SOFTWARE. -.\" ****************************************************************/ diff --git a/share/doc/usd/02.learn/Makefile b/share/doc/usd/02.learn/Makefile deleted file mode 100644 index 8d04fdbb7ec..00000000000 --- a/share/doc/usd/02.learn/Makefile +++ /dev/null @@ -1,15 +0,0 @@ -# $OpenBSD: Makefile,v 1.2 2004/02/01 14:22:45 jmc Exp $ -# @(#) This version did not come via Berkeley, but direct from Bell Labs. - -DIR= usd/02.learn -SRCS= learn.ms -FILES= COPYRIGHT $(SRCS) -MACROS= -ms - -paper.ps: ${SRCS} - ${TBL} ${SRCS} | ${ROFF} > ${.TARGET} - -paper.txt: ${SRCS} - ${TBL} ${SRCS} | ${ROFF} -Tascii > ${.TARGET} - -.include <bsd.doc.mk> diff --git a/share/doc/usd/02.learn/learn.ms b/share/doc/usd/02.learn/learn.ms deleted file mode 100644 index 15b17d0245b..00000000000 --- a/share/doc/usd/02.learn/learn.ms +++ /dev/null @@ -1,1375 +0,0 @@ -.RP -.\" .TM "79-1274-xx 79-1273-yy" 39199 39199-11 -.ND January 30, 1979 -.\" .TM "76-1274-6 76-1273-5" 39199 39199-11 -.TL -LEARN \(em Computer-Aided Instruction on UNIX -.br -(Second Edition) -.AU "MH 2C-518" 6021 -Brian W. Kernighan -.AU "MH 2C-569" 6377 -Michael E. Lesk -.AI -.\" .MH -.\" .OK -.\" CAI -.AB -.PP -This paper describes the -second version of the -.I -learn -.R -program for interpreting CAI -scripts on -the -.UX -operating system, -and a set of scripts that provide a computerized introduction -to the system. -.PP -Six current scripts cover basic commands and file -handling, the editor, additional file handling commands, the -.I -eqn -.R -program for mathematical -typing, -the ``\-ms'' package of formatting macros, -and an introduction to the C programming language. -These scripts now include a total of -about 530 lessons. -.PP -Many users from a wide variety of backgrounds have used -.I learn -to acquire basic UNIX skills. -Most usage involves the first two scripts, -an introduction to -.UX -files and commands, and -the -.UX -editor. -.PP -The second version of -.I learn -is about four times faster than the previous one -in CPU utilization, -and much faster in perceived time -because of better overlap of computing and printing. -It also requires less file space than the first version. -Many of the lessons have been revised; -new material has been added to reflect changes -and enhancements in -.UX -itself. -Script-writing is also easier -because of revisions to the script language. -.AE -.\" .CS 11 2 13 4 0 0 -.NH -Educational Assumptions and Design. -.PP -First, the way to teach people how to do something -is to have them do it. Scripts should -not contain long pieces of explanation; they should -instead frequently ask the student to do some task. -So teaching is always by example: the typical -script fragment shows a small example of some -technique and then asks the -user to either repeat that example or -produce a variation on it. -All are intended to be easy enough that most students will get most questions -right, reinforcing the desired behavior. -.PP -Most lessons fall into one of three types. -The simplest presents a lesson and asks for a yes or no -answer to a question. -The student is given a chance to experiment before replying. -The script checks for the correct reply. -Problems of this form are sparingly used. -.PP -The second type asks for a word or number as an answer. -For example a lesson on files might say -.IP -.I -How many files are there in the current directory? -Type ``answer N'', where N is the number of files. -.R -.LP -The student is expected to respond (perhaps after experimenting) with -.LP -.I - answer 17 -.R -.LP -or whatever. -Surprisingly often, however, the idea of a substitutable argument -(i.e., replacing -.I -N -.R -by -17) -is difficult for non-programmer students, -so the first few such lessons need real care. -.PP -The third type of lesson is open-ended \(em -a task is set for the student, -appropriate parts of the input or output are monitored, -and the student types -.ul -ready -when the task is done. -Figure 1 shows a sample dialog that illustrates the last of these, using two -lessons about the -.I cat -(concatenate, i.e., print) command taken -from early in the script that teaches -file handling. -Most -.I learn -lessons are of this form. -.KF -.TS -box, center; -c. -T{ -Figure 1: Sample dialog from basic files script -.sp -(Student responses -in italics; `$' is the prompt) -.nf -.sp -A file can be printed on your terminal -by using the "cat" command. Just say -"cat file" where "file" is the file name. -For example, there is a file named -"food" in this directory. List it -by saying "cat food"; then type "ready". -$ \fIcat food\fR - this is the file - named food. -$ \fIready\fR - -Good. Lesson 3.3a (1) - -Of course, you can print any file with "cat". -In particular, it is common to first use -"ls" to find the name of a file and then "cat" -to print it. Note the difference between -"ls", which tells you the name of the file, -and "cat", which tells you the contents. -One file in the current directory is named for -a President. Print the file, then type "ready". -$ \fIcat President\fR -cat: can't open President -$ \fIready\fR - -Sorry, that's not right. Do you want to try again? \fIyes\fR -Try the problem again. -$ \fIls\fR -\&.ocopy -X1 -roosevelt -$ \fIcat roosevelt\fR - this file is named roosevelt - and contains three lines of - text. -$ \fIready\fR - -Good. Lesson 3.3b (0) - -The "cat" command can also print several files -at once. In fact, it is named "cat" as an abbreviation -for "concatenate".... -.fi -T} -.TE -.sp -.KE -.PP -After each correct response the computer congratulates -the student and indicates the lesson number that -has just been completed, permitting the student -to restart the script after that lesson. -If the answer is wrong, the student -is offered a chance to repeat the lesson. -The ``speed'' rating of the student (explained in -section 5) is given after the lesson number when the lesson is completed successfully; it is -printed only for the aid of script authors checking -out possible errors in the lessons. -.br -.PP -It is assumed that there is no foolproof way -to determine if the student truly ``understands'' -what he or she is doing; -accordingly, -the current -.I -learn -.R -scripts -only measure performance, not comprehension. -If the student can perform a given task, that is deemed to be ``learning.'' -.[ -%A B. F. Skinner -%T Why We Need Teaching Machines -%J Harvard Educational Review -%V 31 -%P 377-398 -%D 1961 -.] -.PP -The main point of using the computer is that what the student -does is checked for correctness immediately. -Unlike many CAI scripts, however, these scripts provide -few facilities for dealing with wrong answers. -In practice, if most of the answers are not right the script is -a failure; the universal solution to student error is to provide -a new, easier script. -Anticipating possible wrong answers is an endless job, and it is really -easier as well as better to provide a simpler script. -.PP -Along with this goes the assumption that -anything can be taught to anybody if it can -be broken into sufficiently small pieces. Anything -not absorbed in a single chunk is just subdivided. -.PP -To avoid boring the faster students, -however, -an effort is made in the files and editor scripts to provide -three tracks of different difficulty. -The fastest sequence of lessons -is aimed at roughly the bulk and speed of a typical tutorial -manual and should be adequate for review and for -well-prepared students. -The next track is intended for most users and is roughly -twice as long. Typically, for example, the fast track -might present an idea and ask for a variation on the -example shown; the normal track will first -ask the student to repeat the example that was shown -before attempting a variation. -The third and slowest track, which is often -three or four times the length of the fast track, -is intended to be adequate for anyone. -(The lessons of Figure 1 are from the third track.) -The multiple tracks also mean that a student repeating a course is unlikely -to hit the same series of lessons; this makes it profitable for a shaky -user to back up and try again, and many students have done so. -.PP -The tracks are not completely distinct, however. -Depending on the number of correct answers the student has given for the -last few lessons, the program may switch tracks. -The driver is actually capable of following -an arbitrary directed graph of lesson sequences, as discussed in section 5. -Some more structured arrangement, however, is used in all current scripts -to aid the script writer in organizing the material into lessons. -It is sufficiently difficult -to write lessons -that the three-track theory -is not followed very closely -except in -the files and editor scripts. -Accordingly, -in some cases, the fast track is produced merely by skipping -lessons from the slower track. -In others, there is essentially only one track. -.PP -The main reason for using the -.I -learn -.R -program rather than -simply writing the same material as a workbook -is not the selection of tracks, but -actual hands-on experience. -Learning by doing -is much more effective -than pencil and paper exercises. -.PP -.I Learn -also provides a mechanical check on performance. -The first version in fact would not let -the student proceed unless it -received correct answers to the questions -it set and it would not tell a student the right answer. -This somewhat Draconian approach has been moderated -in version 2. -Lessons are sometimes badly worded or even just plain wrong; -in such cases, -the student has no recourse. -But if a student is simply unable to complete one lesson, -that should not prevent access to the rest. -Accordingly, the current version of -.I learn -allows the student to skip -a lesson that he cannot pass; -a ``no'' answer to the ``Do you want to try again?'' -question in Figure 1 will pass to the next lesson. -It is still true that -.I learn -will not tell the student the right answer. -.PP -Of course, there are valid objections to the -assumptions above. -In particular, some students may object to -not understanding -what they are doing; -and the procedure of smashing everything into small pieces may provoke -the retort ``you can't cross a ditch in two jumps.'' -Since writing CAI scripts is considerably -more tedious than ordinary manuals, however, it is safe -to assume that there will always be alternatives to the -scripts as a way of learning. -In fact, for a reference manual of 3 or 4 pages it would -not be surprising to have a tutorial manual of 20 pages -and a (multi-track) script of 100 pages. Thus the reference manual -will exist long before the scripts. -.NH -Scripts. -.PP -As mentioned above, the present scripts try -at most -to follow a three-track theory. Thus little -of the potential complexity of the possible directed graph -is employed, since -care must be taken in lesson construction to see -that every necessary fact is presented in -every possible path through the units. In addition, -it is desirable that every unit have alternate successors -to deal with student errors. -.PP -In most existing courses, the first few lessons -are devoted to checking prerequisites. For example, -before the student is allowed to proceed through the editor -script the script verifies that the student understands files -and is able to type. -It is felt that the sooner lack of student preparation -is detected, the easier it will be on the student. -Anyone proceeding through the scripts -should be getting mostly correct answers; otherwise, the -system will be unsatisfactory both because the wrong -habits are being learned and because the -scripts make little effort to deal with wrong answers. -Unprepared students should not be encouraged -to continue with scripts. -.PP -There are some preliminary items which the student must -know before any scripts can be tried. In particular, -the student must know how to connect to -a -.UX -system, -set the terminal properly, -log in, -and execute simple commands (e.g., -.ul -learn -itself). -In addition, the character erase and line kill conventions -(# and @) should be known. -It is hard to see how this much could be taught by -computer-aided instruction, since a student who -does not know these basic skills will not be able -to run the learning program. -A brief description on paper is provided (see Appendix A), although -assistance will be needed for the first few -minutes. This assistance, however, need not be highly skilled. -.PP -The first script in the current set deals with files. It assumes -the basic knowledge above and teaches the student about -the -.I ls , -.I cat , -.I mv , -.I rm , -.I cp -and -.I diff -commands. -.tr ~ -It also deals with the abbreviation characters *, ?, and [\ ] -in file names. -It does not cover pipes or I/O redirection, -nor does it present the many options -on the -.ul -ls -command. -.PP -This script contains 31 lessons -in the fast track; -two are -intended as prerequisite checks, -seven are review exercises. -There are a total of 75 lessons in all three tracks, -and the instructional passages typed at the student -to begin each lesson total 4,476 words. The average -lesson thus begins with a 60-word message. -In general, the fast track lessons have somewhat longer -introductions, and the slow tracks somewhat shorter ones. -The longest message is 144 words and the shortest 14. -.PP -The second script trains students in the use -of the -.UX -context editor -.I ed , -a sophisticated editor -using regular expressions for searching. -(See section \f2ed\f1 (I). -All editor -features except encryption, mark names and `;' in addressing -are covered. -The fast track contains 2 prerequisite checks, -93 lessons, and a review lesson. -It is supplemented by 146 additional lessons in other tracks. -.PP -A comparison of sizes may be of interest. The -.ul -ed -description -in the reference manual is 2,572 words long. The -.ul -ed -tutorial -.[ -%A B. W. Kernighan -%T A Tutorial Introduction to the Unix Editor ed -%D 1974 -.] -is 6,138 words long. -The fast track through -the -.ul -ed -script is 7,407 words of explanatory messages, and the -total -.ul -ed -script, 242 lessons, -has 15,615 words. -The average -.ul -ed -lesson is thus also about 60 words; the largest -is 171 words and the smallest 10. -The -original -.ul -ed -script represents about three man-weeks of effort. -.PP -The advanced file handling script deals with -.ul -ls -options, -I/O diversion, pipes, and supporting programs like -.I pr , -.I wc , -.I tail , -.I spell -and -.I grep . -(The basic file handling script is a prerequisite.) -It is not as refined as the first two scripts; -this is reflected at least partly in the fact that -it provides much less of a full three-track sequence -than they do. -On the other hand, -since it is perceived as ``advanced,'' -it is hoped that the student will have somewhat -more sophistication -and be better able to cope with it at a reasonably -high level of performance. -.PP -A fourth script covers the -.ul -eqn -language for typing mathematics. -This script must be run on a terminal capable of printing -mathematics, for instance the DASI 300 and similar Diablo-based -terminals, or the nearly extinct Model 37 teletype. -Again, this script is relatively short of tracks: -of 76 lessons, only 17 are in the second track and 2 -in the third track. -Most of these provide additional practice for students -who are having trouble in the first track. -.PP -The -.I \-ms -script for formatting macros -is a short one-track only script. -The macro package it describes is no longer the standard, -so this script will undoubtedly be superseded -in the future. -Furthermore, the linear style of a single learn script is somewhat -inappropriate for the macros, since the macro package is composed of many -independent features, and few users need all of them. -It would be better to have a selection of short lesson -sequences dealing with the features independently. -.PP -The script on C is in a state of transition. -It was originally designed to follow -a tutorial on C, -but that document has since become obsolete. -The current script has been partially converted -to follow the order of presentation in -.ul -The C Programming Language, -.[ -%A B. W. Kernighan -%A D. M. Ritchie -%T The C Programming Language -%I Prentice Hall -%D 1978 -.] -but this job is not complete. -The C script was never intended to teach C; -rather it is supposed to be a series of exercises -for which the computer provides checking and -(upon success) a suggested solution. -.PP -This combination of scripts covers much of the material which any -.UX -user -will need to know -to make effective use of the system. -With enlargement of the advanced files -course to include more on the command interpreter, there -will be a relatively complete introduction to -.UX -available via -.ul -learn. -Although we make no pretense that -.ul -learn -will replace other instructional materials, -it should provide a useful supplement to existing tutorials and reference manuals. -.NH -Experience with Students. -.PP -.I -Learn -.R -has been installed on -many different -.UX -systems. -Most of the usage is on the first two scripts, so these -are more thoroughly debugged and polished. -As a (random) sample of user experience, -the -.I learn -program has been used at Bell Labs at Indian Hill -for 10,500 lessons in a four month period. -About 3600 of these are in the files script, -4100 in the editor, -and 1400 in advanced files. -The passing rate is about 80%, -that is, about 4 lessons are passed for every one -failed. -There have been 86 distinct users of the files script, -and 58 of the editor. -On our system at Murray Hill, there have been nearly 2000 lessons -over two weeks that include -Christmas and New Year. -Users have ranged in age from six up. -.PP -It is difficult to characterize typical sessions with the -scripts; -many instances exist of someone doing one or two lessons -and then logging out, as do instances of someone pausing -in a script for twenty minutes or more. -In the earlier version of -.I learn , -the average session in the files course took 32 minutes and covered -23 lessons. -The distribution is quite -broad and skewed, however; the longest session was -130 minutes and there were five sessions shorter than -five minutes. -The average lesson took about 80 seconds. -These numbers are roughly typical for non-programmers; -a -.UX -expert can do the scripts at approximately 30 seconds -per lesson, most of which is the system printing. -.PP -At present working through a section of the middle of the files -script took about 1.4 seconds of processor time per lesson, -and a system expert typing quickly took 15 seconds of real time per lesson. -A novice would probably take at least a minute. -Thus a UNIX system could support ten students working simultaneously -with some spare capacity. -.NH -The Script Interpreter. -.PP -The -.I -learn -.R -program itself merely interprets scripts. It provides -facilities for the script writer to capture student -responses and their effects, and simplifies the job -of passing control to and recovering control from the student. -This section describes the operation and -usage of the driver program, -and indicates what is -required to produce a new script. -Readers only interested in -the existing scripts may skip this section. -.PP -The file structure used by -.I learn -is shown in Figure 2. -There is one parent directory (named \f2lib\f1\^) containing the script data. -Within this directory are subdirectories, one for each -subject in which a course is available, -one for logging (named -.I log ), -and one in which user sub-directories -are created (named -.I play ). -The subject directory contains master copies of all lessons, -plus any supporting material for that subject. -In a given subdirectory, -each lesson is a single text file. -Lessons are usually named systematically; -the file that contains lesson -.I n -is called -.I Ln . -.br -.KF -.sp -.TS -center, box; -c s s s -l l l l. -Figure 2: Directory structure for \fIlearn\fR -.sp -.nf -lib -.if t .sp .5 - play - student1 - files for student1... - student2 - files for student2... -.if t .sp .5 - files - L0.1a lessons for files course - L0.1b - ... -.if t .sp .5 - editor - ... -.if t .sp .5 - (other courses) -.if t .sp .5 - log -.TE -.sp -.KE -.PP -When -.I -learn -.R -is executed, it makes a private directory -for the user to work in, -within the -.I -learn -.R -portion of the file system. -A fresh copy of all the files used in each lesson -(mostly data for the student to operate upon) is made each -time a student starts a lesson, -so the script writer may assume that everything -is reinitialized each time a lesson is entered. -The student directory is deleted after each session; any permanent records -must be kept elsewhere. -.PP -The script writer must provide certain basic items -in each -lesson: -.IP (1) -the text of the lesson; -.IP (2) -the set-up commands to be executed before the user gets control; -.IP (3) -the data, if any, which the user is supposed to edit, transform, or otherwise -process; -.IP (4) -the evaluating commands to be executed after the user -has finished the lesson, to decide whether the answer is right; -and -.IP (5) -a list of possible successor lessons. -.LP -.I -Learn -.R -tries to minimize the work -of bookkeeping and installation, so -that most of the effort involved in -script production is in planning lessons, -writing tutorial paragraphs, -and coding tests of student performance. -.PP -The basic sequence of events is -as follows. -First, -.I learn -creates the working directory. -Then, for each lesson, -.I learn -reads the script for the lesson and processes -it a line at a time. -The lines in the script are: -(1) commands to the script interpreter -to print something, to create a files, -to test something, etc.; -(2) text to be printed or put in a file; -(3) other lines, which are sent to -the shell to be executed. -One line in each lesson turns control over -to the user; -the user can run any -.UX -commands. -The user mode terminates when the user -types -.I yes , -.I no , -.I ready , -or -.I answer . -At this point, the user's work is tested; -if the lesson is passed, -a new lesson is selected, and if not -the old one is repeated. -.PP -Let us illustrate this with the script -for the second lesson of Figure 1; -this is shown in Figure 3. -.KF -.sp -.TS -center, box; -c. -T{ -Figure 3: Sample Lesson -.sp -.nf -#print -Of course, you can print any file with "cat". -In particular, it is common to first use -"ls" to find the name of a file and then "cat" -to print it. Note the difference between -"ls", which tells you the name of the files, -and "cat", which tells you the contents. -One file in the current directory is named for -a President. Print the file, then type "ready". -#create roosevelt - this file is named roosevelt - and contains three lines of - text. -#copyout -#user -#uncopyout -tail \-3 .ocopy >X1 -#cmp X1 roosevelt -#log -#next -3.2b 2 -.fi -T} -.TE -.sp -.KE -.LP -Lines which begin with -# are commands to the -.I learn -script interpreter. -For example, -.LP -.ul - #print -.LP -causes printing of any text that follows, -up to the next line that begins with a sharp. -.LP -.ul - #print file -.LP -prints the contents of -.I file ; -it -is the same as -.ul -cat file -but has -less overhead. -Both forms of -.I #print -have the added property that if a lesson is failed, -the -.ul -#print -will not be executed the second time through; -this avoids annoying the student by repeating the preamble -to a lesson. -.LP -.ul - #create filename -.LP -creates a file of the specified name, -and copies any subsequent text up to a -# to the file. -This is used for creating and initializing working files -and reference data for the lessons. -.LP -.ul - #user -.LP -gives control to the student; -each line he or she types is passed to the shell -for execution. -The -.I #user -mode -is terminated when the student types one of -.I yes , -.I no , -.I ready -or -.I answer . -At that time, the driver -resumes interpretation of the script. -.LP -.ul - #copyin -.br -.ul - #uncopyin -.LP -Anything the student types between these -commands is copied onto a file -called -.ul -\&.copy. -This lets the script writer interrogate the student's -responses upon regaining control. -.LP -.ul - #copyout -.br -.ul - #uncopyout -.LP -Between these commands, any material typed at the student -by any program -is copied to the file -.ul -\&.ocopy. -This lets the script writer interrogate the -effect of what the student typed, -which true believers in the performance theory of learning -usually -prefer to the student's actual input. -.LP -.ul - #pipe -.br -.ul - #unpipe -.LP -Normally the student input and the script commands -are fed to the -.UX -command interpreter (the ``shell'') one line at a time. This won't do -if, for example, a sequence of editor commands -is provided, -since the input to the editor must be handed to the editor, -not to the shell. -Accordingly, the material between -.ul -#pipe -and -.ul -#unpipe -commands -is fed -continuously through a pipe so that such sequences -work. -If -.ul -copyout -is also desired -the -.ul -copyout -brackets must include -the -.ul -pipe -brackets. -.PP -There are several commands for setting status -after the student has attempted the lesson. -.LP -.ul - #cmp file1 file2 -.LP -is an in-line implementation of -.I cmp , -which compares two files for identity. -.LP -.ul - #match stuff -.LP -The last line of the student's input -is compared to -.I stuff , -and the success or fail status is set -according to it. -Extraneous things like the word -.I answer -are stripped before the comparison is made. -There may be several -.I #match -lines; -this provides a convenient mechanism for handling multiple -``right'' answers. -Any text up to a -# on subsequent lines after a successful -.I #match -is printed; -this is illustrated in Figure 4, another sample lesson. -.br -.KF -.sp -.TS -center, box; -c. -T{ -Figure 4: Another Sample Lesson -.sp -.nf -#print -What command will move the current line -to the end of the file? Type -"answer COMMAND", where COMMAND is the command. -#copyin -#user -#uncopyin -#match m$ -#match .m$ -"m$" is easier. -#log -#next -63.1d 10 -T} -.TE -.sp -.KE -.LP -.ul - #bad stuff -.LP -This is similar to -.I #match , -except that it corresponds to specific failure answers; -this can be used to produce hints for particular wrong answers -that have been anticipated by the script writer. -.LP -.ul - #succeed -.br -.ul - #fail -.LP -print a message -upon success or failure -(as determined by some previous mechanism). -.PP -When the student types -one of the ``commands'' -.I yes , -.I no , -.I ready , -or -.I answer , -the driver terminates the -.I #user -command, -and evaluation of the student's work can begin. -This can be done either by -the built-in commands above, such as -.I #match -and -.I #cmp , -or by status returned by normal -.UX -commands, typically -.I grep -and -.I test . -The last command -should return status true -(0) if the task was done successfully and -false (non-zero) otherwise; -this status return tells the driver -whether or not the student -has successfully passed the lesson. -.PP -Performance can be logged: -.LP -.ul - #log file -.LP -writes the date, lesson, user name and speed rating, and -a success/failure indication on -.ul -file. -The command -.LP -.ul - #log -.LP -by itself writes the logging information -in the logging directory -within the -.I learn -hierarchy, -and is the normal form. -.LP -.ul - #next -.LP -is followed by a few lines, each with a successor -lesson name and an optional speed rating on it. -A typical set might read -.LP -.nf - 25.1a 10 - 25.2a 5 - 25.3a 2 -.fi -.LP -indicating that unit 25.1a is a suitable follow-on lesson -for students with -a speed rating of 10 units, -25.2a for student with speed near 5, -and 25.3a for speed near 2. -Speed ratings are maintained for -each session with a student; the -rating is increased by one each tiee -the student gets a lesson right and decreased -by four each -time the student gets a lesson wrong. -Thus the driver tries to maintain a devel such -that the users get 80% right answers. -The maximum rating is limited to 10 afd the minimum to 0. -The initial rating is zero unless the studeft -specifies a differeft rating when starting -a session. -.PP -If the student passes a lesson, -a new lesson is sedected and the process repeats. -If the student fails, a false status is returned -and the program -reverts to the previous lesson and tries -another alternative. -If it can not find another alternative, it skips forward -a lesson. -.I bye , -bye, -which causes a graceful exit -from the -.ul -learn -system. Hanging up is the usual novice's way out. -.PP -The lessons may form an arbitrary directed graph, -although the present program imposes a limitation on cycles in that -it will not present a lesson twice in the -same session. -If the student is unable to answer one of the exercises -correctly, the driver searches for a previous lesson -with a set of alternatives as successors -(following the -.I #next -line). -From the previous lesson with alternatives one route was taken -earlier; the program simply tries a different one. -.PP -It is perfectly possible -to write sophisticated scripts that evaluate -the student's speed of response, or try to estimate the -elegance of the answer, or provide detailed -analysis of wrong answers. -Lesson writing is so tedious already, however, that most -of these abilities are likely to go unused. -.PP -The driver program depends heavily on features -of -.UX -that are not available on many other operating systems. -These include -the ease of manipulating files and directories, -file redirection, -the ability to use the command interpreter -as just another program (even in a pipeline), -command status testing and branching, -the ability to catch signals like interrupts, -and of course -the pipeline mechanism itself. -Although some parts of -.ul -learn -might be transferable to other systems, -some generality will probably be lost. -.PP -A bit of history: -The first version of -.I learn -had fewer built-in words -in the driver program, -and made more use of the -facilities of -.UX . -For example, -file comparison was done by creating a -.I cmp -process, -rather than comparing the two files within -.I learn . -Lessons were not stored as text files, -but as archives. -There was no concept of the in-line document; -even -.I #print -had to be followed by a file name. -Thus the initialization for each lesson -was to extract the archive into the working directory -(typically 4-8 files), -then -.I #print -the lesson text. -.PP -The combination of such things made -.I learn -slower. -The new version is about 4 or 5 times faster. -Furthermore, it appears even faster to the user -because in a typical lesson, -the printing of the message comes first, -and file setup with -.I #create -can be overlapped with the printng, -so that when the program -finishes printing, -it is really ready for the user -to type at it. -.PP -It is also a great advantage to the script maintainer -that lessons are now just ordinary text files. -They can be edited without any difficulty, -and -.UX -text manipulation tools can be applied -to them. -The result has been that -there is much less resistance -to going in and fixing substandard lessons. -.NH -Conclusions -.PP -The following observations can be made about -secretaries, typists, and -other non-programmers who have used -.I learn : -.IP (a) -A novice must have assistance with the mechanics -of communicating with the computer to get through to -the first lesson or two; -once the first few lessons are passed people can proceed -on their own. -.IP (b) -The terminology used in the first few lessons -is obscure to those inexperienced with computers. -It would help if there were a low level -reference card for -.UX -to supplement the existing -programmer oriented bulky manual and bulky reference card. -.IP (c) -The concept of ``substitutable argument'' is hard -to grasp, and requires help. -.IP (d) -They enjoy the system for the most part. -Motivation matters a great deal, however. -.LP -It takes an hour or two for a novice to get through -the script on file handling. -The total time for a reasonably intelligent and motivated novice to proceed from ignorance -to a reasonable ability to create new files and manipulate old ones -seems to be a few days, with perhaps half of each day -spent on the machine. -.PP -The normal way of proceeding has been to have students in the same -room with someone who knows -.UX -and the scripts. -Thus the student is not brought to a halt by -difficult questions. The burden on the counselor, however, -is much lower than that on a teacher of a course. -Ideally, the students should be encouraged to proceed with instruction -immediately prior to their actual use of the computer. -They should exercise the scripts on the same computer and the same -kind of terminal that they will later use -for their real work, and -their first few jobs for the computer should be -relatively easy ones. -Also, both training and initial work should take place on days -when the -.UX -hardware and software -are working reliably. -Rarely is all of this possible, but the closer one comes the better -the result. -For example, if it is known that the hardware is shaky one day, it is better -to attempt to reschedule training for another one. Students are very -frustrated by machine downtime; when nothing is happening, it takes -some sophistication and experience to distinguish -an infinite loop, a slow but functioning program, -a program waiting for the user, and a broken machine.* -.FS -* We have even known an expert programmer to decide the computer -was broken when he had simply left his terminal in local mode. -Novices have great difficulties with such problems. -.FE -.PP -One disadvantage -of training with -.I -learn -.R -is that students come to depend -completely on the CAI system, and do not try -to read manuals or use other learning aids. -This is unfortunate, not only because of the increased -demands for completeness and accuracy of the -scripts, but because the scripts do not cover all of -the -.UX -system. -New users should have manuals (appropriate for their level) and -read them; the scripts ought to be altered -to recommend suitable documents and urge -students to read them. -.PP -There are several other difficulties which are clearly evident. -From the student's viewpoint, -the most serious is that -lessons still crop up which simply can't be passed. -Sometimes this is due to poor explanations, -but just as often it is some error in the lesson itself -\(em a botched setup, a missing file, -an invalid test for correctness, -or some system facility that doesn't work on the local -system in the same way it did on the development system. -It takes knowledge and a certain healthy arrogance on the part of the user to recognize -that the fault is not his or hers, -but the script writer's. -Permitting the student to get on with the next lesson -regardless does alleviate this somewhat, -and the logging facilities make it easy -to watch for lessons that no one -can pass, -but it is still a problem. -.PP -The biggest problem with the previous -.I learn -was speed (or lack thereof) \(em -it was often excruciatingly slow -and made a significant drain on the system. -The current version so far does not seem -to have that difficulty, -although some scripts, -notably -.I eqn , -are intrinsically slow. -.I eqn , -for example, -must do a lot of work even to print its introductions, -let alone check the student responses, -but delay is perceptible in all scripts -from time to time. -.PP -Another potential problem is that it is possible -to break -.ul -learn -inadvertently, by pushing interrupt at the wrong time, -or by removing critical files, -or any number of similar slips. -The defenses against such problems -have steadily been improved, to the point -where most students should not notice difficulties. -Of course, it will always be possible to break -.I -learn -.R -maliciously, but this is not likely to be a problem. -.PP -One area is more fundamental \(em -some -.UX -commands are sufficiently global in their effect -that -.ul -learn -currently -does not allow them to be executed at all. -The most obvious is -.I cd , -which changes to another directory. -The prospect of a student who is learning about directories -inadvertently moving to some random directory -and removing files has deterred us -from even writing lessons on -.I cd , -but ultimately lessons on such topics probably should be added. -.NH -Acknowledgments -.PP -We are grateful to all those who have tried -.ul -learn, -for we have benefited greatly from their -suggestions and criticisms. -In particular, -M. E. Bittrich, -J. L. Blue, -S. I. Feldman, -P. A. Fox, -and -M. J. McAlpin -have provided substantial feedback. -Conversations with E. Z. Rothkopf also provided many of the ideas in the system. -We are also indebted to Don Jackowski -for serving as a guinea pig for the second version, -and to Tom Plum for his efforts to improve the C script. -.\" .SG \s-2MH\s0-1273/4-\s-2MEL/BWK\s0-unix -.[ -$LIST$ -.] diff --git a/share/doc/usd/17.msmacros/Makefile b/share/doc/usd/17.msmacros/Makefile deleted file mode 100644 index 8413714be2b..00000000000 --- a/share/doc/usd/17.msmacros/Makefile +++ /dev/null @@ -1,13 +0,0 @@ -# $OpenBSD: Makefile,v 1.3 2004/02/01 14:22:45 jmc Exp $ - -DIR= usd/17.msmacros -SRCS= ms fig1.pic -MACROS= -ms - -paper.ps: ${SRCS} - ${SOELIM} ${SRCS} | ${PIC} | ${TBL} | ${ROFF} > ${.TARGET} - -paper.txt: ${SRCS} - ${SOELIM} ${SRCS} | ${PIC} | ${TBL} | ${ROFF} -Tascii > ${.TARGET} - -.include <bsd.doc.mk> diff --git a/share/doc/usd/17.msmacros/fig1.pic b/share/doc/usd/17.msmacros/fig1.pic deleted file mode 100644 index 9d90d549ea4..00000000000 --- a/share/doc/usd/17.msmacros/fig1.pic +++ /dev/null @@ -1,45 +0,0 @@ -.\" Copyright (c) 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" @(#)fig1.pic 8.1 (Berkeley) 8/14/93 -.PS -.ps -.ps 10 -line from 5.612,3.388 to 5.612,2.888 -line from 4.237,4.888 to 4.237,4.763 to 5.612,4.763 -line from 3.175,5.700 to 3.175,5.513 to 5.612,5.513 -line from 3.237,9.700 to 3.237,9.512 to 2.425,9.512 -line from 4.237,6.825 to 4.237,5.138 -line from 4.212,5.237 to 4.237,5.138 to 4.263,5.237 -line from 2.425,6.950 to 2.425,6.825 to 5.612,6.825 to 5.612,4.638 -line from 5.587,4.737 to 5.612,4.638 to 5.638,4.737 -line from 2.425,9.387 to 3.175,9.387 to 3.175,6.700 -line from 3.150,6.800 to 3.175,6.700 to 3.200,6.800 -line from 2.425,10.200 to 3.237,10.200 to 3.237,9.950 -line from 3.212,10.050 to 3.237,9.950 to 3.262,10.050 -line from 5.612,4.388 to 5.612,3.575 -line from 5.587,3.675 to 5.612,3.575 to 5.638,3.675 -line from 3.175,6.388 to 3.175,5.825 -line from 3.150,5.925 to 3.175,5.825 to 3.200,5.925 -line from 2.425,7.950 to 2.425,7.200 -line from 2.400,7.300 to 2.425,7.200 to 2.450,7.300 -line from 2.425,8.950 to 2.425,8.137 -line from 2.400,8.237 to 2.425,8.137 to 2.450,8.237 -line from 2.425,10.387 to 2.425,9.200 -line from 2.400,9.300 to 2.425,9.200 to 2.450,9.300 -.ps -.ps 12 -.ft -.ft R -"RP" at 3.175,9.796 ljust -"text..." at 5.487,3.483 ljust -"PP, LP" at 5.425,4.483 ljust -"NH, SH" at 3.987,4.983 ljust -"AE" at 3.112,5.733 ljust -"AB" at 3.112,6.546 ljust -"AI" at 2.362,7.046 ljust -"AU" at 2.362,7.983 ljust -"TL" at 2.362,9.046 ljust -.ps -.ft -.PE diff --git a/share/doc/usd/17.msmacros/fig1.xfig b/share/doc/usd/17.msmacros/fig1.xfig deleted file mode 100644 index d77c89f3d6c..00000000000 --- a/share/doc/usd/17.msmacros/fig1.xfig +++ /dev/null @@ -1,46 +0,0 @@ -#FIG 2.0 -80 2 -2 1 0 1 0 0 0 0 0.000 0 0 - 449 569 449 609 9999 9999 -2 1 0 1 0 0 0 0 0.000 0 0 - 339 449 339 459 449 459 9999 9999 -2 1 0 1 0 0 0 0 0.000 0 0 - 254 384 254 399 449 399 9999 9999 -2 1 0 1 0 0 0 0 0.000 0 0 - 259 64 259 79 194 79 9999 9999 -2 1 0 1 0 0 0 0 0.000 1 0 - 0 0 1.000 4.000 8.000 - 339 294 339 429 9999 9999 -2 1 0 1 0 0 0 0 0.000 1 0 - 0 0 1.000 4.000 8.000 - 194 284 194 294 449 294 449 469 9999 9999 -2 1 0 1 0 0 0 0 0.000 1 0 - 0 0 1.000 4.000 8.000 - 194 89 254 89 254 304 9999 9999 -2 1 0 1 0 0 0 0 0.000 1 0 - 0 0 1.000 4.000 8.000 - 194 24 259 24 259 44 9999 9999 -2 1 0 1 0 0 0 0 0.000 1 0 - 0 0 1.000 4.000 8.000 - 449 489 449 554 9999 9999 -2 1 0 1 0 0 0 0 0.000 1 0 - 0 0 1.000 4.000 8.000 - 254 329 254 374 9999 9999 -2 1 0 1 0 0 0 0 0.000 1 0 - 0 0 1.000 4.000 8.000 - 194 204 194 264 9999 9999 -2 1 0 1 0 0 0 0 0.000 1 0 - 0 0 1.000 4.000 8.000 - 194 124 194 189 9999 9999 -2 1 0 1 0 0 0 0 0.000 1 0 - 0 0 1.000 4.000 8.000 - 194 9 194 104 9999 9999 -4 0 0 12 0 0 0 0.000 1 9 15 254 59 RP -4 0 0 12 0 0 0 0.000 1 7 29 439 564 text... -4 0 0 12 0 0 0 0.000 1 11 34 434 484 PP, LP -4 0 0 12 0 0 0 0.000 1 11 40 319 444 NH, SH -4 0 0 12 0 0 0 0.000 1 9 17 249 384 AE -4 0 0 12 0 0 0 0.000 1 9 17 249 319 AB -4 0 0 12 0 0 0 0.000 1 9 13 189 279 AI -4 0 0 12 0 0 0 0.000 1 9 17 189 204 AU -4 0 0 12 0 0 0 0.000 1 9 14 189 119 TL diff --git a/share/doc/usd/17.msmacros/ms b/share/doc/usd/17.msmacros/ms deleted file mode 100644 index 1fc1858c55e..00000000000 --- a/share/doc/usd/17.msmacros/ms +++ /dev/null @@ -1,932 +0,0 @@ -.\" $OpenBSD: ms,v 1.3 2004/04/09 11:05:50 jmc Exp $ -.\" -.\" Copyright (C) Caldera International Inc. 2001-2002. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code and documentation must retain the above -.\" copyright notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed or owned by Caldera -.\" International, Inc. -.\" 4. Neither the name of Caldera International, Inc. nor the names of other -.\" contributors may be used to endorse or promote products derived from -.\" this software without specific prior written permission. -.\" -.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA -.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT, -.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -.\" POSSIBILITY OF SUCH DAMAGE. -.\" -.\" @(#)ms 8.2 (Berkeley) 6/1/94 -.\" -.if n \{\ -.po 5n -.ll 70n -.\} -.EH 'USD:17-%''Using the \-ms Macros with Troff and Nroff' -.OH 'Using the \-ms Macros with Troff and Nroff''USD:17-%' -.\".RP -.\" ....TM 76-1274-16 39199 39199-11 -.\" ....ND October 8, 1976 -.nr CW 2.85i -.nr GW .3i -.TL -Typing Documents on the UNIX System: -.br -\!.br -Using the \-ms Macros with Troff and Nroff -.AU "MH 2C-572" 6377 -M. E. Lesk -.AI -.\" .MH -.\" .OK -\"Text Formatting -\"Phototypesetting -.AB -This document describes a set of easy-to-use macros -for preparing documents on the UNIX system. -Documents may be produced on either the -phototypesetter or on a computer terminal, -without changing the input. -.PP -The macros provide facilities for paragraphs, sections (optionally -with automatic numbering), page titles, footnotes, -equations, -tables, two-column format, and -cover pages for papers. -.PP -This memo includes, as an appendix, -the text of the ``Guide to Preparing -Documents with \-ms'' -which contains additional examples -of features of \-ms. -.PP -This manual is a revision of, and replaces, -``Typing Documents on UNIX,'' -dated November 22, 1974. -.AE -.\" .CS 6 6 12 1 0 8 -.bd I 3 -.PP -.I -Introduction. -.R -This memorandum describes a package of commands to produce -papers -using the -.bd I -.I -troff -.R -and -.I nroff -formatting programs on the -.SM -UNIX -.NL -system. -As with other -.I roff -derived -programs, -text is prepared interspersed with formatting commands. -However, this package, -which itself is written in -.I troff -commands, -provides higher-level commands -than those provided with the basic -.I troff -program. -The commands available in this package are listed in -Appendix A. -.bd I 3 -.PP -.I -Text. -.R -Type normally, except that instead of indenting for paragraphs, -place a line reading ``.PP'' before each paragraph. -This will produce indenting and extra space. -.LP -Alternatively, the command .LP that was used here will produce -a left-aligned (block) paragraph. -The paragraph spacing can be changed: see below under ``Registers.'' -.PP -.I -Beginning. -.R -For a document with a paper-type cover sheet, the input should start as follows: -.DS L - [optional overall format .RP \- see below] - .TL - Title of document (one or more lines) - .AU - Author(s) (may also be several lines) - .AI - Author's institution(s) - .AB - Abstract; to be placed on the cover sheet of a paper. - Line length is 5/6 of normal; use .ll here to change. - .AE (abstract end) - text ... (begins with .PP, which see) -.DE -To omit some of the standard headings -(e.g. no abstract, or no author's institution) just -omit the corresponding fields and command lines. -The word -.SM -ABSTRACT -.NL -can be suppressed by writing ``.AB no'' for ``.AB''. -Several interspersed .AU and .AI lines can be used for multiple authors. -The headings are not compulsory: beginning -with a .PP command is perfectly OK and will just -start printing an ordinary paragraph. -.I Warning: -You can't just begin a document with a line of text. -Some \-ms command must -precede any text input. When in doubt, use .LP -to get proper initialization, although any of -the commands .PP, .LP, .TL, .SH, .NH is good enough. -Figure 1 shows the legal arrangement of commands at the -start of a document. -.PP -.I -Cover Sheets and First Pages. -.R -The first line -of a document signals the general format of the first page. -In particular, if it is ".RP" a cover sheet with title and -abstract is prepared. -The default format -is useful for scanning drafts. -.PP -In general \-ms is arranged so that only one form -of a document need be stored, containing all -information; the first command gives the format, -and unnecessary items for that format are ignored. -.PP -Warning: don't put extraneous material -between the .TL and .AE commands. Processing -of the titling items is -special, and other data placed in them may not behave -as you expect. -Don't forget that some \-ms command must precede any input text. -.PP -.I -Page headings. -.R -The \-ms macros, by default, will print a page heading containing -a page number (if greater than 1). -A default page footer is provided only in -.I nroff , -where the date is used. -The user can make minor adjustments to the page headings/footings -by redefining the -strings -LH, CH, and RH -which are the left, center and right portions of the page headings, -respectively; and the -strings -LF, CF, and RF, -which are the left, center and right portions of the page footer. -For more complex formats, the user can redefine -the macros PT and BT, which are invoked respectively at the top -and bottom of each page. -The margins (taken from registers HM and FM for the top and bottom -margin respectively) are normally 1 inch; the page header/footer are -in the middle of that space. -The user who redefines these macros should be careful -not to change parameters such as point size or font -without resetting them to default values. -.PP -.I -Multi-column formats. -.R -If you place the command ``.2C'' in your document, the document will -be printed in double column format beginning -at that point. This feature is not too useful in computer -terminal output, but is often desirable on the typesetter. -The command ``.1C'' will go -back to one-column format and also skip to a new page. -The ``.2C'' command is actually a special case of the command -.DS L - .MC [column width [gutter width]] -.DE -which makes multiple columns with the specified column -and gutter width; as many columns as will fit across the page -are used. -Thus triple, quadruple, ... column pages can be printed. -Whenever the number of columns is changed (except going from -full width to some larger number of columns) -a new page is started. -.PP -.I -Headings. -.R -To produce a special heading, there are two commands. -If you type -.DS L - .NH - type section heading here - may be several lines -.DE -you will get automatically numbered section headings (1, 2, 3, ...), -in boldface. -For example, -.DS L - .NH - Care and Feeding of Department Heads -.DE -produces -.NH -Care and Feeding of Department Heads -.PP -Alternatively, -.DS L - .SH - Care and Feeding of Directors -.DE -will print the heading with no number added: -.SH -Care and Feeding of Directors -.PP -Every section heading, of either type, should be followed -by a paragraph beginning with .PP or .LP, indicating -the end of the heading. -Headings may contain more than one line -of text. -.PP -The .NH command also supports more complex numbering schemes. -If a numerical argument is given, it is taken to be a -``level'' number and an appropriate sub-section -number is generated. -Larger level numbers indicate deeper -sub-sections, as in this example: -.DS L - .NH - Erie-Lackawanna - .NH 2 - Morris and Essex Division - .NH 3 - Gladstone Branch - .NH 3 - Montclair Branch - .NH 2 - Boonton Line -.DE -.ne 1i -generates: -.NH -Erie-Lackawanna -.NH 2 -Morris and Essex Division -.NH 3 -Gladstone Branch -.NH 3 -Montclair Branch -.NH 2 -Boonton Line -.PP -An explicit ``.NH 0'' will reset the numbering of level 1 -to one, as here: -.DS L - .NH 0 - Penn Central -.DE -.ft 3 -.if n .ul 1 -.sp 1 -1. Penn Central -.PP -.I -Indented paragraphs. -.R -(Paragraphs with hanging numbers, e.g. references.) -The sequence -.DS L - .IP [1] - Text for first paragraph, typed - normally for as long as you would - like on as many lines as needed. - .IP [2] - Text for second paragraph, ... -.DE -produces -.IP [1] -Text for first paragraph, typed normally for as long -as you would like on as many lines as -needed. -.IP [2] -Text for second paragraph, ... -.LP -A series of indented paragraphs may be followed by an ordinary paragraph -beginning with .PP or .LP, -depending on whether you wish indenting or not. -The command .LP was used here. -.PP -More sophisticated uses of .IP are also possible. -If the label is omitted, for example, a plain block indent -is produced. -.DS L - .IP - This material will - just be turned into a - block indent suitable for quotations or - such matter. - .LP -.DE -will produce -.IP -This material -will just be turned -into a block indent -suitable for -quotations or such matter. -.LP -If a non-standard amount of indenting is required, -it may be specified after the label (in character positions) -and will remain in effect until the next .PP or .LP. -Thus, the general form of the .IP command -contains two additional fields: the label and the indenting -length. For example, -.DS L - .IP first: 9 - Notice the longer label, requiring larger - indenting for these paragraphs. - .IP second: - And so forth. - .LP -.DE -produces this: -.IP first: 9 -Notice the longer label, requiring larger -indenting for these paragraphs. -.IP second: -And so forth. -.LP -It is also possible to produce multiple nested indents; -the command .RS indicates that the next .IP starts from the -current indentation level. -Each .RE will eat up one level of indenting -so you should balance .RS and .RE commands. -The .RS command should be thought of as ``move right'' and -the .RE command as ``move left''. -As an example -.DS L - .IP 1. - Bell Laboratories - .RS - .IP 1.1 - Murray Hill - .IP 1.2 - Holmdel - .IP 1.3 - Whippany - .RS - .IP 1.3.1 - Madison - .RE - .IP 1.4 - Chester - .RE - .LP -.DE -will result in -.IP 1. -Bell Laboratories -.RS -.IP 1.1 -Murray Hill -.IP 1.2 -Holmdel -.IP 1.3 -Whippany -.RS -.IP 1.3.1 -Madison -.RE -.IP 1.4 -Chester -.RE -.LP -All of these variations on .LP leave the right -margin untouched. Sometimes, for purposes -such as setting off a quotation, a paragraph indented -on both right and left is required. -.QP -A single paragraph -like this is obtained -by preceding it with .QP. -More complicated material (several paragraphs) should be -bracketed with .QS and .QE. -.LP -.I -Emphasis. -.R -To get -italics -(on the typesetter) or underlining (on the terminal) -say -.DS L - .I - as much text as you want - can be typed here - .R -.DE -.bd I -.br -as was done for -.I -these three words. -.R -The .R command restores the normal (usually Roman) font. -If only one word is to be italicized, it -may be just given on the line with the .I command, -.br -.bd I 3 -.DS - .I word -.DE -and in this case no .R is needed to restore -the previous font. -.B -Boldface -.R -can be produced by -.DS L - .B - Text to be set in boldface - goes here - .R -.DE -and also will be underlined on the terminal or line printer. -As with .I, a single word can be placed in boldface -by placing it on the same line as the .B command. -.PP -A few size changes -can be specified similarly with -the commands .LG (make larger), .SM (make smaller), and .NL -(return to normal size). -The size change -is two points; the commands may be repeated for -.SM -increased -.SM -effect -.NL -(here one .NL canceled two .SM commands). -.PP -If actual -.UL underlining -as opposed to italicizing is required on the typesetter, -the command -.DS - .UL word -.DE -will underline a word. There is no way to underline -multiple words on the typesetter. -.PP -.I -Footnotes. -.R -Material placed between lines with the commands .FS -(footnote) and .FE (footnote end) will -be collected, remembered, and finally placed -at the bottom of the current page*. -By default, footnotes are 11/12th the -length of normal text, -but this can be changed using the FL register (see below). -.FS -* Like this. -.FE -.PP -.I -Displays and Tables. -.R -To prepare displays of lines, such as tables, in which -the lines should not be re-arranged, -enclose them in the commands .DS and .DE -.DS L - .DS - table lines, like the - examples here, are placed - between .DS and .DE - .DE -.DE -By default, lines between .DS and .DE are indented and left-adjusted. -You can also center lines, or retain the left margin. -Lines bracketed by .DS C and .DE commands are -centered (and not re-arranged); lines bracketed -by .DS L and .DE are left-adjusted, not indented, and -not re-arranged. -A plain .DS is equivalent -to .DS I, which indents and left-adjusts. Thus, -.DS C -these lines were preceded -by .DS C and followed by -a .DE command; -.DE -whereas -.DS L -these lines were preceded -by .DS L and followed by -a .DE command. -.DE -Note that .DS C centers each line; there is a variant .DS B -that makes the display into a left-adjusted block of text, and -then centers that entire block. -Normally a display is kept together, on one page. -If you wish to have a long display which -may be split across page -boundaries, -use .CD, .LD, or .ID in place of -the commands .DS C, .DS L, or .DS I respectively. -An extra argument to the .DS I or .DS command is taken -as an amount to indent. -Note: it is tempting to assume that .DS R will right adjust -lines, but it doesn't work. -.PP -.I -Boxing words or lines. -.R -To draw rectangular boxes around words the command -.DS L - .BX word -.DE -will print -.BX word -as shown. -The boxes will not be neat on a terminal, and this -should not be used as a substitute for italics. -.B1 -Longer pieces of text may be boxed -by enclosing them with .B1 and .B2: -.DS L - .B1 - text... - .B2 -.DE -as has been done here. -.B2 -.ne 1i -.PP -.I -Keeping blocks together. -.R -If you wish to keep a table or other block of lines -together on a page, there are ``keep - release'' commands. -If a block of lines preceded by .KS and followed by .KE does -not fit on the remainder of the current page, it will begin -on a new page. -Lines bracketed by .DS and .DE commands are automatically -kept together this way. -There is also a ``keep floating'' command: if the -block to be kept together is preceded by .KF instead of .KS -and does not fit -on the current page, it will be moved down through the text -until the top of the next page. Thus, no large blank space -will be introduced in the document. -.PP -.I -Nroff/Troff commands. -.R -Among the useful commands from the basic formatting programs -are the following. They all work with both typesetter and -computer terminal output: -.DS L - .bp - begin new page. - .br - ``break'', stop running text - from line to line. - .sp n - insert n blank lines. - .na - don't adjust right margins. -.DE -.PP -.I -Date. -.R -By default, documents produced on computer terminals have the -date at the bottom of each page; documents produced on -the typesetter don't. -To force the date, say ``.DA''. To force no date, say ``.ND''. -To lie about the date, say ``.DA July 4, 1776'' -which puts the specified date at the bottom of each page. -The command -.DS L - .ND May 8, 1945 -.DE -in ".RP" format -places the specified date on the cover sheet and nowhere else. -Place this line before the title. -.PP -.I -Registers. -.R -Certain of the registers used by \-ms can -be altered to change default -settings. -They should be changed with .nr commands, -as with -.DS - .nr PS 9 -.DE -.bd I -to make the default point size 9 point. -If the effect is needed immediately, the -normal -.I -troff -.R -command should be used -in addition to changing the number register. -.br -.ps 9 -.vs 10p -.TS -c0 c c c -c c c c -a l l l. -Register Defines Takes Default - effect -PO page offset next page 1\(fm\(fm -LL line length next para. 6\(fm\(fm -LT title length next para. 6\(fm\(fm -HM top margin next page 1\(fm\(fm -FM bottom margin next page 1\(fm\(fm -PS point size next para. 10 pts -VS line spacing next para. 12 pts -PI para. indent next para. 5 ens -PD para. spacing next para. 0.3 VS -QI quote para ind next para. 5 ens -FL footnote length next FS *5/6 LL -FI footnote indent next FS *5/6 LL -FF footnote format next FS *5/6 LL -MINGW min. column wid next page 2 ens -.TE -.ps \n(PS -.vs \n(VS -You may also alter -the strings -LH, CH, and RH which are the left, center, and right headings -respectively; and similarly LF, CF, and RF which are strings in the -page footer. -The page number on -.I -output -.R -is taken from register PN, to permit -changing its output style. -For more complicated headers and footers -the macros PT and BT can be redefined, as -explained earlier. -.bd I 3 -.PP -.I -Accents. -.R -To simplify typing certain foreign words, -strings representing common accent marks are defined. -They precede the letter over which the mark -is to appear. -Here are the strings: -.TS -center; -c c6 c c. -Input Output Input Output -\e*\(fme \*'e \e*~a \*~a -\e*\(gae \*`e \e*Ce \h'0.15m'\v'-0.6m'\s6\zv\s0\v'0.6m'\h'-0.15m'e -\e*:u \*:u \e*,c \*,c -\e*^e \o'^e' -.TE -.PP -.I -Use. -.R -After your document is prepared and stored on a file, -you can print it on a terminal with the command* -.bd I -.FS -* If .2C was used, pipe the -.I nroff -output -through -.I col; -make the first line of the input -``.pi /usr/bin/col.'' -.br -.FE -.DS L -.I - nroff \-ms file -.R -.DE -and you can print it on the typesetter with the -command -.DS L -.I - troff \-ms file -.R -.DE -(many options are possible). -In each case, if your document is stored in several files, -just list all the filenames -where we have used ``file''. -If equations or tables are used, -.I -eqn -.R -and/or -.I -tbl -.R -must be invoked as preprocessors. -.br -.bd I 3 -.PP -.I -References and further study. -.R -If you have to do Greek or mathematics, see -.I eqn -[1] -for equation setting. -To aid -.I eqn -users, -.I \-ms -provides definitions of .EQ and .EN -which normally center the equation and set it off slightly. -An argument on .EQ is taken to be an equation -number and placed in the right margin near the equation. -In addition, there are three special arguments to EQ: -the letters C, I, and L indicate centered (default), -indented, and left adjusted equations, respectively. -If there is both a format argument -and an equation number, -give the format argument first, as in -.bd I -.DS - .EQ L (1.3a) -.DE -for a left-adjusted equation numbered (1.3a). -.PP -Similarly, -the macros .TS and .TE -are defined -to separate tables (see [2]) from text with a little space. -A very long table with a heading may be broken -across pages by beginning it with .TS H -instead of .TS, -and placing the line .TH in the table data -after the heading. If the table -has no heading repeated from page to page, -just use the ordinary .TS and .TE macros. -.PP -To learn more about -.I troff -see -[3] for a general introduction, and [4] -for the full details (experts only). -Information on related UNIX commands -is in [5]. -For jobs that do not seem well-adapted -to \-ms, consider other macro packages. -It is often far easier to write a specific macro packages -for such tasks as imitating particular journals than -to try to adapt \-ms. -.PP -.bd I 3 -.I -Acknowledgment. -.R -Many thanks are due to Brian Kernighan for -his help in the design and implementation of this package, -and for his assistance in preparing this manual. -.bd I -.SH -.ce -References -.PP -.IP [1] -B. W. Kernighan and L. L. Cherry, -.I -Typesetting Mathematics \(em Users Guide (2nd edition), -.R -Bell Laboratories Computing Science Report no. 17. -.IP [2] -M. E. Lesk, -.I -Tbl \(em A Program to Format Tables, -.R -Bell Laboratories Computing Science Report no. 45. -.IP [3] -B. W. Kernighan, -.I -A Troff Tutorial, -.R -Bell Laboratories, 1976. -.IP [4] -J. F. Ossanna, -.I -Nroff\|/Troff Reference Manual, -.R -Bell Laboratories Computing Science Report no. 51. -.IP [5] -K. Thompson and D. M. Ritchie, -.I -UNIX Programmer's Manual, -.R -Bell Laboratories, 1978. -.1C -.SH -.ce -Appendix A -.ce -List of Commands -.ft R -.TS -expand; -l2 l5 l2 l. -1C Return to single column format. LG Increase type size. -2C Start double column format. LP Left aligned block paragraph. -AB Begin abstract. -AE End abstract. -AI Specify author's institution. -AU Specify author. ND Change or cancel date. -B Begin boldface. NH Specify numbered heading. -DA Provide the date on each page. NL Return to normal type size. -DE End display. PP Begin paragraph. -DS Start display (also CD, LD, ID). -EN End equation. R Return to regular font (usually Roman). -EQ Begin equation. RE End one level of relative indenting. -FE End footnote. RP Use released paper format. -FS Begin footnote. RS Relative indent increased one level. -I Begin italics. SH Specify section heading. - SM Change to smaller type size. -IP Begin indented paragraph. TL Specify title. -KE Release keep. -KF Begin floating keep. UL Underline one word. -KS Start keep. -.TE -.sp -.ce -.ft B -Register Names -.ft R -.PP -The following register names are used by \-ms internally. -Independent use of these names in one's own macros may -produce incorrect output. -Note that no lower case letters are used in any \-ms internal name. -.TS - expand; -c s s s s s s s s s s -l l l l l l l l l l l. -Number registers used in \-ms -: DW GW HM IQ LL NA OJ PO T. TV -#T EF H1 HT IR LT NC PD PQ TB VS -\&.T FC H2 IF IT MF ND PE PS TC WF -1T FL H3 IK KI MM NF PF PX TD YE -AV FM H4 IM L1 MN NS PI RO TN YY -CW FP H5 IP LE MO OI PN ST TQ ZN -.TE -.sp -.TS -expand; -c s s s s s s s s s s -l l l l l l l l l l l. -String registers used in \-ms -\(fm A5 CB DW EZ I KF MR R1 RT TL -\(ga AB CC DY FA I1 KQ ND R2 S0 TM -^ AE CD E1 FE I2 KS NH R3 S1 TQ -~ AI CF E2 FJ I3 LB NL R4 S2 TS -: AU CH E3 FK I4 LD NP R5 SG TT -, B CM E4 FN I5 LG OD RC SH UL -1C BG CS E5 FO ID LP OK RE SM WB -2C BT CT EE FQ IE ME PP RF SN WH -A1 C D EL FS IM MF PT RH SY WT -A2 C1 DA EM FV IP MH PY RP TA XD -A3 C2 DE EN FY IZ MN QF RQ TE XF -A4 CA DS EQ HO KE MO R RS TH XK -.TE -.\" .(z -.\".so fig1.pic -.ce 2 -Figure 1:\ \ Order of Commands in Input -.ce 0 -.\" .)z diff --git a/share/doc/usd/17.msmacros/refcard b/share/doc/usd/17.msmacros/refcard deleted file mode 100644 index d04811a740d..00000000000 --- a/share/doc/usd/17.msmacros/refcard +++ /dev/null @@ -1,1289 +0,0 @@ -.\" $OpenBSD: refcard,v 1.1 2003/06/26 16:33:36 mickey Exp $ -.\" -.\" Copyright (C) Caldera International Inc. 2001-2002. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code and documentation must retain the above -.\" copyright notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed or owned by Caldera -.\" International, Inc. -.\" 4. Neither the name of Caldera International, Inc. nor the names of other -.\" contributors may be used to endorse or promote products derived from -.\" this software without specific prior written permission. -.\" -.\" USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA -.\" INTERNATIONAL, INC. AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR -.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -.\" IN NO EVENT SHALL CALDERA INTERNATIONAL, INC. BE LIABLE FOR ANY DIRECT, -.\" INDIRECT INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, -.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING -.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -.\" POSSIBILITY OF SUCH DAMAGE. -.\" -.\" @(#)refcard 8.1 (Berkeley) 6/8/93 -.\" -.fp 3 gB -.po .5i -.de I -.ft 2 -.. -.de R -.ft 1 -.. -.de B -.bd R 2 -\\$1 -.bd R -.. -.de hh -.br -.vs 10p -.ps 12 -.bd 1 3 -.ce -\\$1 -.ps 9 -.br -.bd 1 -.sp -.. -.de NP -'po 0 -.ps 9 -.ta .25i 3.75i 7.25i 7.7i -\(rn\t|\t|\t|\t\(rn -'po -'sp .2i -.mk z -.. -.de FT -.po 0 -.ps 9 -.ta .25i 3.75i 7.25i - | | | -.po .5i -.. -.wh -8p FT -.de b1 -.br -.tm left col bottom at \\n(nl -.po +3.5i -.sp |\\nzu -.ph -.. -.de b2 -.br -.tm right col bottom at \\n(nl -.po -3.5i -.bp -.ph -.. -.de ph -.nr x +1 -.tl ''\\nx'' -.sp .2i -.. -.nr x 1 -.wh 0 NP -.ll 3i -.lt 3i -.nr LL 3i -.nr IQ 4 -.nr IR 4 -.de IP -.RT -.if \\n(IP=0 .nr IP +1 -.if \\n(.$ .LB "\\$1" -.if !\\n(.$ .LB -.. -.de RT -.if \\n(IP .in -\\n(IQn -.if \\n(IP .nr IP -1 -.. -.de LP -.RT -.ti 0 -.ne 3 -.if \\n(.$ .LB \\$1 -.. -.de LB -.in +\\n(IQn -.ta \\n(IQn -.if \\n(.$ .ti -\\n(IQn -.if \\n(.$ \\$1\t\c -.. -.de RS -.in +\\n(IRn -.. -. \"RE - retreat to the left -.de RE -.br -.in -\\n(IRn -.. -.br -.rs -.sp 1i -.ps 14 -.vs 16p -.ce 3 -A Guide to Preparing -Documents with \-ms -.sp 2 -.ps 10 -.vs 12p -.ft I -.ce -M. E. Lesk -.ft R -.lt \n(.lu -.sp .5 -.tl 'Bell Laboratories''August 1978' -.sp .5 -.tl xx\l'\n(.lu'xx -.sp 1 -.bd I 2 -.vs 11p -.fi -This guide gives some simple examples of -document preparation on Bell Labs computers, -emphasizing the use of the \fI\-ms\fR macro -package. -It enormously abbreviates -information in -.IP 1. -.I -Typing Documents on UNIX and GCOS, -.R -by M. E. Lesk; -.IP 2. -.I -Typesetting Mathematics \- User's Guide, -.R -by B. W. Kernighan and L. L. Cherry; and -.IP 3. -.I -Tbl \- A Program to Format Tables, -.R -by M. E. Lesk. -.LP -These memos are all included in the -.I -UNIX Programmer's Manual, Volume 2. -.R -The new user should also have -.I -A Tutorial Introduction to the UNIX Text Editor, -.R -by B. W. Kernighan. -.sp .5 -For more detailed information, read -.I -Advanced Editing on UNIX -.R -and -.I -A Troff Tutorial, -.R -by B. W. Kernighan, -and (for experts) -.I -Nroff\^/Troff Reference Manual -.R -by J. F. Ossanna. -Information on related commands is -found (for UNIX users) in -.I -UNIX for Beginners -.R -by B. W. Kernighan -and the -.I -UNIX Programmer's Manual -.R -by K. Thompson and D. M. Ritchie. -.br -.vs 12p -.sp 1.5 -.ce -.ps +2 -Contents -.nf -.ps -.sp .5 -.in .2i -.bd I -.ta 2.4i -.cs I 25 -A TM \fI\fR 2 -A released paper \fI\fR 3 -An internal memo, and headings \fI\fR 4 -Lists, displays, and footnotes \fI\fR 5 -Indents, keeps, and double column \fI\fR 6 -Equations and registers \fI\fR 7 -Tables and usage \fI\fR 8 -.in 0 -.cs I -.sp 1 -.fi -.EQ -delim $$ -.EN -Throughout the examples, input is shown in -.ft 3 -.br -.ti +2n -this Helvetica sans serif font -.ft R -.br -while the resulting output is shown in -.ti +2n -this Times Roman font. -.nf -.sp 2 -.ce -UNIX Document no. 1111 -.ps 9 -.vs 10p -.EQ -gsize 9 -.EN -.b1 -.hh "Commands for a TM" -.nf -.ft 3 -\&.TM 1978-5b3 99999 99999-11 -\&.ND April 1, 1976 -\&.TL -\&The Role of the Allen Wrench in Modern -\&Electronics -\&.AU "MH 2G-111" 2345 -\&J. Q. Pencilpusher -\&.AU "MH 1K-222" 5432 -\&X. Y. Hardwired -\&.AI -\&.MH -\&.OK -\&Tools -\&Design -\&.AB -\&This abstract should be short enough to -\&fit on a single page cover sheet. -\&It must attract the reader into sending for -\&the complete memorandum. -\&.AE -\&.CS 10 2 12 5 6 7 -\&.NH -\&Introduction. -\&.PP -\&Now the first paragraph of actual text ... -\&... -\&Last line of text. -\&.SG MH-1234-JQP/XYH-unix -\&.NH -\&References ... -.ft -.sp -.fi -Commands not needed in a particular -format are ignored. -.sp -.ps 8 -.vs 9p -.mk a -.sp .20i -.ll 3i -.nf -\h'2n'\s16\(bs\s7 $fat roman size 7 "Bell Laboratories"$ \s8Cover Sheet for TM -.sp -\s6\l'3i' -.fi -.ps 7 -.ft 2 -.sp 1p -This information is for employees of Bell Laboratories. (GEI 13.9-3)\p -.ft 1 -.nf -.vs 4p -\s6\l'3i' -.vs 9p -.sp -.ll 3.0i -.ps 7 -.ta .25i 2.25i 2.45i -.mk -Title- \s8 -.rt -.in .25i -.hy 0 -.bd 1 2 -The Role of the Allen Wrench -in Modern Electronics -.hy 14 -.br -.bd 1 -.rt -.ll \\n(LLu -.in 2.1i -\s7Date- \s8 -.rt -.in 2.35i -.bd 1 2 -.ps 8 -April 1, 1976 -.sp -.bd 1 -.ti 2.1i -.mk -\s7TM- \s8 -.br -.rt -.bd 1 2 -1978-5b3 -.rt -.in 0 -.bd 1 -.sp -.mk -\s7Other Keywords- \kQ -.rt -.in \nQu -.bd 1 2 -.ps 8 -Tools -Design -.rm OK -.rm OD -.in 0 -.bd 1 -.if t .sp .35i -.ps 7 -.ta 1.05i 1.7i 2.0i -Author Location Ext. Charging Case- \s8$fat roman size 8 99999$ -.nf -.mk -.bd 1 2 -.ps 8 -J. Q. Pencilpusher MH 2G-111 2345 -.rt -.br -.bd 1 - \s7Filing Case- \s8$fat roman size 8 "99999a"$ -.br -.bd 1 2 -X. Y. Hardwired MH 1K-222 5432 -.sp .2i -.bd 1 -.br -.ll 3i -.ce -.ft I -ABSTRACT -.ft 1 -.sp -.fi -.ps 8 -.ll 2.5i -.in +.25i -.ti +2 -This abstract should be short enough to fit -on a single page cover sheet. -It must attract the reader into sending for the -complete memorandum. -.in -.ll -.sp .4i -.nf -\l'3i' -.ta .9i 1.8i 2.7i -.sp 5p -Pages Text 10 Other 2 Total 12 -.if t .sp 8p -.if n .sp -.if t No. Figures 5 No. Tables 6 No. Refs. 7 \b'|||||\ \ ' -\l'3i' -.ps 6 -.if n .sp -.lt 3i -.tl 'E-1932-U (6-73)''SEE REVERSE SIDE FOR DISTRIBUTION LIST' -.sp .20i -.de eb -.sp -1 -.nf -\h'-1m'\L'|\\nau-1'\l'\\n(.lu+2m\(ul'\L'-|\\nau+1'\l'|0u-1m\(ul' -.fi -.. -.eb -.b2 -.hh "A Released Paper with Mathematics" -.ft 3 -.nf -.EQ -delim off -.EN -\&.EQ -\&delim $$ -\&.EN -\&.RP -.sp -.ft 1 -\&... (as for a TM) -.sp -.ft 3 -\&.CS 10 2 12 5 6 7 -\&.NH -\&Introduction -\&.PP -\&The solution to the torque handle equation -\&.EQ (1) -\&sum from 0 to inf F ( x sub i ) = G ( x ) -\&.EN -\&is found with the transformation $ x = rho over -\&theta $ where $ rho = G prime (x) $ and $theta$ -\&is derived ... -.ft 1 -.sp 2 -.mk a -.ll 3i -.ps 9 -.bd 1 2 -.sp .4i -.ce 2 -.vs 11p -The Role of the Allen Wrench -in Modern Electronics -.sp .7 -.ce 3 -.ft 2 -.bd 1 -.ps 8 -.vs 9p -J. Q. Pencilpusher -.sp .7 -X. Y. Hardwired -.sp .7 -.ce 2 -.ft 1 -Bell Laboratories -Murray Hill, New Jersey 07974 -.sp 2 -.ce -.ft 2 -ABSTRACT -.ft 1 -.sp .7 -.in +.25i -.ll 2.75i -.fi -.ad -.ti +2n -This abstract should be short enough to fit -on a single page cover sheet. -It must attract the reader into sending for the -complete memorandum. -.sp 5v -.in -.ll -April 1, 1976 -.sp .2i -.eb -.ll 3i -.sp .5v -.sp 3.5p -.mk a -.lt 3i -.ps 9 -.sp .25i -.bd 1 2 -.ce 2 -.vs 11p -The Role of the Allen Wrench -in Modern Electronics -.sp -.ce 3 -.bd 1 -.ft 2 -.ps 8 -.vs 9p -J. Q. Pencilpusher -.sp -X. Y. Hardwired -.sp -.ce 2 -.ft 1 -Bell Laboratories -Murray Hill, New Jersey 07974 -.sp 3 -.ce -.de SH -.bd 1 2 -.sp -.ce 0 -.in 0 -.. -.de PP -.sp .3 -.ft 1 -.bd 1 -.ti +2n -.. -.SH -1. Introduction -.PP -The solution to the torque handle equation -.br -.di xx -.EQ -delim $$ -gsize 8 -sum from 0 to inf F ( x sub i ) = G ( x ) -.EN -.br -.di -.tl ''\*(10'(1)' -is found with the transformation -$ x = rho over theta $ where $ rho = G prime ( x )$ -and $theta$ is derived from well-known principles. -......PP -......ft 2 -.....The Ascent of the Riffelberg, -......ft 1 -.....by Mark Twain. -.....I sat silent some time, then turned to Harris and said: -.....``My mind is made up.'' -.....Something in my tone struck him; and when he glanced -.....at my eye and read what was written there, his face paled -.....perceptibly. He hesitated a moment, then said: -.....``Speak.'' -.....I answered, with perfect calmness: -......ft 2 -.....``I will ascend the Riffelberg.'' -......ft 1 -.....If I had shot my poor friend he could not have fallen from -.....his chair more suddenly. If I had been his father he -.....could not have pleaded harder to get me to give up my -.....purpose. But I turned a deaf ear to all he said. When he -.....perceived at last that nothing could alter my determination, -.....he ceased to urge, and for a while the deep\p -.sp .5v -.sp 3.5p -.eb -.b1 -.hh "An Internal Memorandum" -.ft 3 -.nf -\&.IM -\&.ND January 24, 1956 -\&.TL -\&The 1956 Consent Decree -\&.AU -\&Able, Baker & -\&Charley, Attys. -\&.PP -Plaintiff, United States of America, having filed -its complaint herein on January 14, 1949; the -defendants having appeared and filed their -answer to such complaint denying the -substantive allegations thereof; and the parties, -by their attorneys, ... -.ft -.sp -.ft 1 -.mk a -.br -.sp .20i -.ta 2.1i -.ll 3i -.ps 18 -.br - \(bs -.vs .20i -.ps 7 -.br -.bd 1 2 -.nf - Bell Laboratories -.fi -.na -.bd 1 -.ps 7 -.vs 8p -.sp .12i -.mk -.fi -.ll -.ll 2.0i -Subject: -.ps 8 -.hy 0 -.br -.bd 1 2 -.sp -1 -\h'\w'\s7Subject: \s0'u'The 1956 Consent Decree -.hy 14 -.br -.bd 1 -.rt -.ll 3.25i -.in 2.10i -.ps 7 -.mk -.ti -6n -date: -.br -.bd 1 2 -.rt -.ps 8 -January 24, 1956 -.sp -.bd 1 -.ps 7 -.mk -.ti -6n -from: -.ps 8 -.nf -.br -.bd 1 2 -.rt -Able, Baker & -Charley, Attys. -.br -.bd 1 -.sp -.sp -.ll 3i -.ad -.fi -.in 0 -.de SH -.sp .5 -.bd 1 2 -.. -.de PP -.sp .3 -.bd 1 -.ti +2n -.. -.PP -Plaintiff, United States of America, having filed its complaint -herein on January 14, 1949; the defendants having appeared and -filed their answer to such complaint denying the substantive -allegations thereof; and the parties, by their attorneys, having -severally consented to the entry of this Final Judgment without -trial or adjudication of any issues of fact or law herein and without -this Final Judgment constituting any evidence or admission by any -party in respect of any such issues; -.PP -Now, therefore before any testimony has been taken herein, and -without trial or adjudication of any issue of fact or law herein, -and upon the consent of all parties hereto, it is hereby -.PP -Ordered, adjudged and decreed as follows: -.SH -I. -[Sherman Act] -.PP -This Court has jurisdiction of the subject matter herein and of all -the parties hereto. -The complaint states a claim upon which relief may be granted -against each of the defendants under Sections 1, 2 and 3 of the -Act of Congress of July 2, 1890, entitled ``An act to protect -trade and commerce against unlawful restraints and monopolies,'' -commonly known as the Sherman Act, as amended. -.SH -II. -[Definitions] -.PP -For the purposes of this Final Judgment: -.PP -(a) ``Western'' shall mean the defendant Western Electric -Company, Incorporated. -.sp .25i -.eb -.sp -.ft 1 -.bd 1 - -.ps 9 -.vs 10p -Other formats possible (specify before \f3.TL\f1) are: -\&\f3.MR\f1 (``memo for record''), \f3.MF\f1 -(``memo for file''), -\&\f3.EG\f1 (``engineer's notes'') and \f3.TR\f1 -(Computing Science Tech. Report). -.sp 2 -.hh "Headings" -.sp .5 -.nf -.ft 3 -.ta 2i -\&.NH .SH -Introduction. Appendix I -\&.PP .PP -text text text text text text -.ft 1 -.bd 1 2 -.sp -.br -1. Introduction Appendix I -.br -.sp .3v -.bd 1 -\0\0text text text \0\0text text text -.br -.b2 -.hh "A Simple List" -.ft 3 -.nf -\&.IP 1. -\&J. Pencilpusher and X. Hardwired, -\&.I -\&A New Kind of Set Screw, -\&.R -\&Proc. IEEE -\&.B 75 -\&(1976), 23-255. -\&.IP 2. -\&H. Nails and R. Irons, -\&.I -\&Fasteners for Printed Circuit Boards, -\&.R -\&Proc. ASME -\&.B 23 -\&(1974), 23-24. -\&.LP \fP(terminates list) -.sp 1.5 -.EQ -delim $$ -gsize 9 -.EN -.fi -.IP 1. -J. Pencilpusher and X. Hardwired, -.I -A New Kind of Set Screw, -.R -Proc. IEEE -$fat 75$ -(1976), 23-255. -.IP 2. -H. Nails and R. Irons, -.I -Fasteners for Printed Circuit Boards, -.R -Proc. ASME -$fat 23$ -(1974), 23-24. -.LP -.sp 2 -.EQ -delim off -.EN -.hh "Displays" -.nf -.ft 3 -\&text text text text text text -\&.DS -\&and now -\&for something -\&completely different -\&.DE -\&text text text text text text -.ft -.sp 1 -.fi -hoboken harrison newark roseville avenue grove street -east orange brick church orange highland avenue -mountain station south orange maplewood millburn short hills -summit new providence -.in .4i -.sp .5 -.nf -and now -for something -completely different -.sp .5 -.in -.fi -murray hill berkeley heights -gillette stirling millington lyons basking ridge -bernardsville far hills peapack gladstone -.sp .5 -Options: \f3.DS L\f1: left-adjust; -\&\f3.DS C\f1: line-by-line center; \f3.DS B\f1: make block, then center. -.sp 2 -.hh "Footnotes" -.nf -.ft 3 -\&Among the most important occupants -\&of the workbench are the long-nosed pliers. -\&Without these basic tools* -\&.FS -\&* As first shown by Tiger & Leopard -\&(1975). -\&.FE -\&few assemblies could be completed. They may -\&lack the popular appeal of the sledgehammer -.ft -.sp 1.5 -.fi -Among the most important occupants -of the workbench are the long-nosed -pliers. -Without these basic tools* -few assemblies could be completed. -They may lack the -popular appeal of the sledgehammer -.br -\l'1i' -.ps -1 -.br -* As first shown by Tiger & Leopard (1975). -.ps -.br -.nf -.b1 -.hh "Multiple Indents" -.ft 3 -\&This is ordinary text to point out -\&the margins of the page. -\&.IP 1. -\&First level item -\&.RS -\&.IP a) -\&Second level. -\&.IP b) -\&Continued here with another second -\&level item, but somewhat longer. -\&.RE -\&.IP 2. -\&Return to previous value of the -\&indenting at this point. -\&.IP 3. -\&Another -\&line. -.ft -.sp 1.5v -.fi -This is ordinary text to point out -the margins of the page. -.IP 1. -First level item -.RS -.IP a) -Second level. -.IP b) -Continued here with another second level -item, but somewhat longer. -.RE -.IP 2. -Return to previous value of the -indenting at this point. -.IP 3. -Another -line. -.LP -.sp 2 -.hh "Keeps" -.fi -Lines bracketed by the following commands are kept together, -and will appear entirely on one page: -.TS -center; -Lf3 5 L8 Lf3 5 L. -\&.KS not moved .KF may float -\&.KE through text .KE in text -.TE -.nf -.sp 2 -.hh "Double Column" -.nf -.hy 0 -.ft 3 -\&.TL -The Declaration of Independence -\&.2C -.na -.fi -\&.PP -.br -When in the course of human events, it becomes -necessary for one people to dissolve the political bonds -which have connected them with another, and to assume -among the powers of the earth the separate and equal station -to which the laws of Nature and of Nature's God entitle them, -a decent respect to the opinions of -.ft -.de xy -.if \\n(xy=0 'rt -.if \\n(xy=0 'po +1.58i -.nr xy +1 -.. -.wh 10.45i xy -.br -.ad -.hy 1 -.sp 1.5 -.ce -The Declaration of Independence -.sp .5 -.ll 1.42i -.mk -.fi -.ti +2n -When in the course of human events, it becomes -necessary for one people to dissolve the political bonds which have -connected them with another, and to assume among the -powers of the earth the separate and equal station to which -the laws of Nature and of Nature's God entitle them, a decent -respect to the opinions of mankind requires that they should -declare the causes which impel them to the separation. -.ti +2n -We hold these truths to be self-evident, that all men -are created equal, that they are endowed by their creator -with certain unalienable rights, that among these are life, liberty, -and the pursuit of happiness. That to secure these rights, -governments are instituted among men,\p -.br -.po -1.58i -.ll 3i -.lt 3i -.rm xy -.b2 -.hh "Equations" -.nf -.de EQ \"equation, breakout and display -.nr EF \\n(.u -.rm EE -.nr LE 1 \" 1 is center -.ds EL \\$1 -.if "\\$1"L" .ds EL \\$2 -.if "\\$1"L" .nr LE 0 -.if "\\$1"C" .ds EL \\$2 -.if "\\$1"I" .nr LE 0 -.if "\\$1"I" .ds EE \\h'5n' -.if "\\$1"I" .if !"\\$3"" .ds EE \\h'\\$3n' -.if "\\$1"I" .ds EL \\$2 -.nf -.di EZ -.. -.de EN \" end of a displayed equation -.di -.rm EZ -.lt \\n(.lu -.pc -.if \\n(dn>0 .if \\n(LE>0 .tl \(ts\(ts\\*(10\(ts\\*(EL\(ts -.if \\n(dn>0 .if \\n(LE=0 .tl '\\*(EE\\*(10''\\*(EL' -.pc % -.lt \\n(LLu -.if \\n(EF>0 .fi -.rm EL -.rm 10 -.nr PE \\n(.d -.. -.ft 3 -A displayed equation is marked -with an equation number at the right margin -by adding an argument to the EQ line: -\&.EQ (1.3) -x sup 2 over a sup 2 ~=~ sqrt {p z sup 2 +qz+r} -\&.EN -.ft -.sp -.fi -A displayed equation is marked with an equation number -at the right margin by adding an argument to the EQ line: -.sp .4 -.EQ (1.3) -x sup 2 over a sup 2 -~=~ sqrt { p z sup 2 + q z + r } -.EN -.sp -.nf -.ft 3 -\&.EQ I (2.2a) -bold V bar sub nu~=~left [ pile {a above b above -c } right ] + left [ matrix { col { A(11) above . -above . } col { . above . above .} col {. above . -above A(33) }} right ] cdot left [ pile { alpha -above beta above gamma } right ] -.nf -\&.EN -.ft -.sp -.EQ I (2.2a) -fat {roman V} bar sub nu~=~left [ pile {a above b above c} -right ] + left [ matrix { col { A(11) above . -above . } col { . above . above .} col {. above . -above A(33) }} right ] cdot left [ pile { alpha -above beta above gamma } right ] -.EN -.sp -.ft 3 -\&.EQ L -F hat ( chi ) ~ mark = ~ | del V | sup 2 -\&.EN -\&.EQ L -.fi -.na -lineup =~ {left ( {partial V} over {partial x} right ) } sup 2 -+ { left ( {partial V} over {partial y} right ) } sup 2 -~~~~~~ lambda -> inf -.nf -\&.EN -.ft -.ta .25i -.sp -.EQ L -F hat ( chi ) ~ mark = ~ | del V | sup 2 -.EN -.sp 1 -.EQ L -delim off -lineup =~ {left ( {partial V} over {partial x} right ) } sup 2 -+ { left ( {partial V} over {partial y} right ) } sup 2 -~~~~~~ lambda -> inf -.EN -.rm EQ -.rm EN -.fi -.sp -.ft 3 -$ a dot $, $ b dotdot$, $ xi tilde times -y vec$: -.EQ -delim $$ -.EN -.ft R -.br -.sp -$ a dot $, $ b dotdot$, $ xi tilde times -y vec$. -.EQ -delim off -.EN -\h'.3i'(with delim $$ on, see panel 3). -.sp .5 -See also the equations in the second table, panel 8. -.nf -.br -.bd I -.sp 2 -.ft R -.hh "Some Registers You Can Change" -.nf -.mk -Line length - .nr LL 7i -.sp .4 -Title length - .nr LT 7i -.sp .4 -Point size - .nr PS 9 -.sp .4 -Vertical spacing - .nr VS 11 -.sp .4 -Column width - .nr CW 3i -.sp .4 -Intercolumn spacing - .nr GW .5i -.sp .4 -Margins \- head and foot - .nr HM .75i - .nr FM .75i -.sp .4 -Paragraph indent - .nr PI 2n -.rt -.po +1.6i -Paragraph spacing - .nr PD 0 -.sp .4 -Page offset - .nr PO 0.5i -.sp .4 -Page heading - .ds CH Appendix - (center) - .ds RH 7-25-76 - (right) - .ds LH Private - (left) -.sp .4 -Page footer - .ds CF Draft - .ds LF - .ds RF \u similar \d -.sp .4 -Page numbers - .nr % 3 -.po -1.6i -.b1 -.hh Tables -.nf -.ds T \|\h'.35n'\v'-.1n'\s6\zT\s0\v'.1n'\h'-.35n'\(ci\| -.ft 3 -.EQ -delim off -.EN -\&.TS\h'.5i'\fR(\f3\*T\f1 indicates a tab)\f3 -\&allbox; -.nr x \n(nl -\&c s s -\&c c c -\&n n n. -\&AT&T Common Stock -\&Year\*TPrice\*TDividend -\&1971\*T41-54\*T$2.60 -\&2\*T41-54\*T2.70 -\&3\*T46-55\*T2.87 -\&4\*T40-53\*T3.24 -\&5\*T45-52\*T3.40 -\&6\*T51-59\*T.95* -\&.TE -\&* (first quarter only) -.ft 1 -.nr y \n(nl -.sp |\nxu -.di qq -.TS -allbox; -c s s -c c c -n1 n1 n1. -AT&T Common Stock -Year Price Dividend -1971 41-54 $2.60 -2 41-54 2.70 -3 46-55 2.87 -4 40-53 3.24 -5 45-52 3.40 -6 51-59 .95* -.TE -* (first quarter only) -.br -.di -.in 3i-\n(TWu -.nf -.qq -.in 0 -.if \ny>\n(nl .sp |\nyu -.sp .5 -.ft 1 -.fi -.ad -The meanings of the key-letters describing -the alignment of each entry are: -.br -.nf -.TS -center; -cf3 l6 cf3 l. -c center n numerical -r right-adjust a subcolumn -l left-adjust s spanned -.TE -.fi -The global table options are -.ft 3 -.bd I 2 -.hy 0 -center, expand, box, doublebox, allbox, -tab (\f2x\fP\|) -.ft 1 -and -.ft 3 -linesize (\f2n\fP\|). -.br -.hy 1 -.ft 1 -.bd I -.sp 1 -.nf -.ta .1i -.ft 3 -\&.TS\h'.5i'\fR(with delim $$ on, see panel 3)\fP -\&doublebox, center; -\&c c -\&l l. -\&Name\*TDefinition -\&.sp -\&Gamma\*T$GAMMA (z) = int sub 0 sup inf \e - t sup {z-1} e sup -t dt$ -\&Sine\*T$sin (x) = 1 over 2i ( e sup ix - e sup -ix )$ -\&Error\*T$ roman erf (z) = 2 over sqrt pi \e - int sub 0 sup z e sup {-t sup 2} dt$ -\&Bessel\*T$ J sub 0 (z) = 1 over pi \e - int sub 0 sup pi cos ( z sin theta ) d theta $ -\&Zeta\*T$ zeta (s) = \e - sum from k=1 to inf k sup -s ~~( Re~s > 1)$ -\&.TE -.ft -.sp -.EQ -delim $$ -.EN -.vs +2p -.TS -doublebox, center; -c c -l l. -Name Definition -.sp -Gamma $GAMMA (z) = int sub 0 sup inf t sup {z-1} e sup -t dt$ -Sine $sin (x) = 1 over 2i ( e sup ix - e sup -ix )$ -Error $ roman erf (z) = 2 over sqrt pi int sub 0 sup z e sup {-t sup 2} dt$ -Bessel $ J sub 0 (z) = 1 over pi int sub 0 sup pi cos ( z sin theta ) d theta $ -Zeta $ zeta (s) = sum from k=1 to inf k sup -s ~~( Re~s > 1)$ -.TE -.vs -2p -.br -.bd I 2 -.sp 1 -.hh "Usage" -.ps 9 -.vs 10p -.ds & \\s-1&\\s0 -.TS -l. -\h'.25i'Documents with just text: -troff -ms files -\h'.25i'With equations only: -eqn files | troff -ms -\h'.25i'With tables only: -tbl files | troff -ms -\h'.25i'With both tables and equations: -tbl files\||\|eqn\||\|troff -ms -_ -.TE -.ft R -.fi -.sp .5 -The above generates \s-2STARE\s0 output on -\s-2GCOS\s0: replace -.ft 3 -\-st -.ft R -with -.ft 3 -\-ph -.ft R -for typesetter output. -.ft 1 -.bd I -.b2 diff --git a/share/doc/usd/17.msmacros/refcard.bad b/share/doc/usd/17.msmacros/refcard.bad deleted file mode 100644 index fc5b646ce52..00000000000 --- a/share/doc/usd/17.msmacros/refcard.bad +++ /dev/null @@ -1,1253 +0,0 @@ -\".fp 3 H -\" no Helvetica on dandelion printer -.fp 3 El -.po .5i -.de I -.ft 2 -.. -.de R -.ft 1 -.. -.de B -.bd R 2 -\\$1 -.bd R -.. -.de hh -.br -.vs 10p -.ps 12 -.bd 1 3 -.ce -\\$1 -.ps 9 -.br -.bd 1 -.sp -.. -.de NP -'po 0 -.ps 9 -.ta .25i 3.75i 7.25i 7.7i -\(rn\t|\t|\t|\t\(rn -'po -'sp .2i -.mk z -.. -.de FT -.po 0 -.ps 9 -.ta .25i 3.75i 7.25i - | | | -.po .5i -.. -.wh -8p FT -.de b1 -.br -.tm left col bottom at \\n(nl -.po +3.5i -.sp |\\nzu -.ph -.. -.de b2 -.br -.tm right col bottom at \\n(nl -.po -3.5i -.bp -.ph -.. -.de ph -.nr x +1 -.tl ''\\nx'' -.sp .2i -.. -.nr x 1 -.wh 0 NP -.ll 3i -.lt 3i -.nr LL 3i -.nr IQ 4 -.nr IR 4 -.de IP -.RT -.if \\n(IP=0 .nr IP +1 -.if \\n(.$ .LB "\\$1" -.if !\\n(.$ .LB -.. -.de RT -.if \\n(IP .in -\\n(IQn -.if \\n(IP .nr IP -1 -.. -.de LP -.RT -.ti 0 -.ne 3 -.if \\n(.$ .LB \\$1 -.. -.de LB -.in +\\n(IQn -.ta \\n(IQn -.if \\n(.$ .ti -\\n(IQn -.if \\n(.$ \\$1\t\c -.. -.de RS -.in +\\n(IRn -.. -. \"RE - retreat to the left -.de RE -.br -.in -\\n(IRn -.. -.br -.rs -.sp .5i -.ps 14 -.vs 16p -.ce 3 -A Guide to Preparing -Documents with \-ms -.sp -.ps 10 -.vs 12p -.ft I -.ce -M. E. Lesk -.ft R -.lt \n(.lu -.sp .5 -.tl 'Bell Laboratories''August 1978' -.sp .5 -.tl xx\l'\n(.lu'xx -.sp 1 -.bd I 2 -.vs 11p -.fi -This guide gives some simple examples of -document preparation on Bell Labs computers, -emphasizing the use of the \fI\-ms\fR macro -package. -It enormously abbreviates -information in -.IP 1. -.I -Typing Documents on the UNIX System -.R -by M. E. Lesk; -.IP 2. -.I -Typesetting Mathematics \- User's Guide, -.R -by B. W. Kernighan and L. L. Cherry; and -.IP 3. -.I -Tbl \- A Program to Format Tables, -.R -by M. E. Lesk. -.LP -These memos are all included in the -.I -UNIX User Supplementary Documents. -.R -The new user should also have -.I -A Tutorial Introduction to the UNIX Text Editor, -.R -by B. W. Kernighan. -.sp .5 -For more detailed information, read -.I -Advanced Editing on UNIX -.R -and -.I -A Troff Tutorial, -.R -by B. W. Kernighan, -and (for experts) -.I -Nroff\^/Troff Reference Manual -.R -by J. F. Ossanna. -Information on related commands is -found in -.I -UNIX for Beginners -.R -by B. W. Kernighan -and the -.I -UNIX User's Manual. -.R -.br -.vs 12p -.sp 1.5 -.ce -.ps +2 -Contents -.nf -.ps -.sp .5 -.in .2i -.bd I -.ta 2.4i -.cs I 25 -A TM \fI\fR 2 -A released paper \fI\fR 3 -An internal memo, and headings \fI\fR 4 -Lists, displays, and footnotes \fI\fR 5 -Indents, keeps, and double column \fI\fR 6 -Equations and registers \fI\fR 7 -Tables and usage \fI\fR 8 -.in 0 -.cs I -.sp 1 -.fi -.EQ -delim $$ -.EN -Throughout the examples, input is shown in -.ft 3 -.br -.ti +2n -this sans serif font -.ft R -.br -while the resulting output is shown in -.ti +2n -this Roman font. -.nf -.sp 2 -.ce -UNIX Document no. 1111 -.ps 9 -.vs 10p -.EQ -gsize 9 -.EN -.b1 -.hh "Commands for a TM" -.nf -.ft 3 -\&.TM 1978-5b3 99999 99999-11 -\&.ND April 1, 1976 -\&.TL -\&The Role of the Allen Wrench in Modern -\&Electronics -\&.AU "MH 2G-111" 2345 -\&J. Q. Pencilpusher -\&.AU "MH 1K-222" 5432 -\&X. Y. Hardwired -\&.AI -\&.MH -\&.OK -\&Tools -\&Design -\&.AB -\&This abstract should be short enough to fit -\&on a single page cover sheet. It must attract -\&the reader into sending for the complete report. -\&.AE -\&.CS 10 2 12 5 6 7 -\&.NH -\&Introduction. -\&.PP -\&Now the first paragraph of actual text ... -\&... -\&Last line of text. -\&.SG MH-1234-JQP/XYH-unix -\&.NH -\&References ... -.ft -.sp -.fi -Commands not needed in a particular -format are ignored. -.sp -.ps 8 -.vs 9p -.mk a -.sp .20i -.ll 3i -.nf -\h'2n'\s16\(bs\s7 $fat roman size 7 "Bell Laboratories"$ \s8Cover Sheet for TM -.sp -\s6\l'3i' -.fi -.ps 7 -.ft 2 -.sp 1p -This information is for employees of Bell Laboratories. (GEI 13.9-3)\p -.ft 1 -.nf -.vs 4p -\s6\l'3i' -.vs 9p -.sp -.ll 3.0i -.ps 7 -.ta .25i 2.25i 2.45i -.mk -Title- \s8 -.rt -.in .25i -.hy 0 -.bd 1 2 -The Role of the Allen Wrench -in Modern Electronics -.hy 14 -.br -.bd 1 -.rt -.ll \\n(LLu -.in 2.1i -\s7Date- \s8 -.rt -.in 2.35i -.bd 1 2 -.ps 8 -April 1, 1976 -.sp -.bd 1 -.ti 2.1i -.mk -\s7TM- \s8 -.br -.rt -.bd 1 2 -1978-5b3 -.rt -.in 0 -.bd 1 -.sp -.mk -\s7Other Keywords- \kQ -.rt -.in \nQu -.bd 1 2 -.ps 8 -Tools -Design -.rm OK -.rm OD -.in 0 -.bd 1 -.if t .sp .30i -.ps 7 -.ta 1.05i 1.7i 2.0i -Author Location Ext. Charging Case- \s8$fat roman size 8 99999$ -.nf -.mk -.bd 1 2 -.ps 8 -J. Q. Pencilpusher MH 2G-111 2345 -.rt -.br -.bd 1 - \s7Filing Case- \s8$fat roman size 8 "99999a"$ -.br -.bd 1 2 -X. Y. Hardwired MH 1K-222 5432 -.sp .2i -.bd 1 -.br -.ll 3i -.ce -.ft I -ABSTRACT -.ft 1 -.sp -.fi -.ps 8 -.ll 2.5i -.in +.25i -.ti +2 -This abstract should be short enough to fit -on a single page cover sheet. -It must attract the reader into sending for the -complete report. -.in -.ll -.sp .3i -.nf -\l'3i' -.ta .9i 1.8i 2.7i -.sp 5p -Pages Text 10 Other 2 Total 12 -.if t .sp 8p -.if n .sp -.if t No. Figures 5 No. Tables 6 No. Refs. 7 \b'|||||\ \ ' -\l'3i' -.ps 6 -.if n .sp -.lt 3i -.tl 'E-1932-U (6-73)''SEE REVERSE SIDE FOR DISTRIBUTION LIST' -.sp .20i -.de eb -.sp -1 -.nf -\h'-1m'\L'|\\nau-1'\l'\\n(.lu+2m\(ul'\L'-|\\nau+1'\l'|0u-1m\(ul' -.fi -.. -.eb -.b2 -.hh "A Released Paper with Mathematics" -.ft 3 -.nf -.EQ -delim off -.EN -\&.EQ -\&delim $$ -\&.EN -\&.RP -.sp -.ft 1 -\&... (as for a TM) -.sp -.ft 3 -\&.CS 10 2 12 5 6 7 -\&.NH -\&Introduction -\&.PP -\&The solution to the torque handle equation -\&.EQ (1) -\&sum from 0 to inf F ( x sub i ) = G ( x ) -\&.EN -\&is found with the transformation $ x = rho over -\&theta $ where $ rho = G prime (x) $ and $theta$ -\&is derived ... -.ft 1 -.sp 2 -.mk a -.ll 3i -.ps 9 -.bd 1 2 -.sp .4i -.ce 2 -.vs 11p -The Role of the Allen Wrench -in Modern Electronics -.sp .7 -.ce 3 -.ft 2 -.bd 1 -.ps 8 -.vs 9p -J. Q. Pencilpusher -.sp .7 -X. Y. Hardwired -.sp .7 -.ce 2 -.ft 1 -Bell Laboratories -Murray Hill, New Jersey 07974 -.sp 2 -.ce -.ft 2 -ABSTRACT -.ft 1 -.sp .7 -.in +.25i -.ll 2.75i -.fi -.ad -.ti +2n -This abstract should be short enough to fit -on a single page cover sheet. -It must attract the reader into sending for the -complete memorandum. -.sp 5v -.in -.ll -April 1, 1976 -.sp .2i -.eb -.ll 3i -.sp .5v -.sp 3.5p -.mk a -.lt 3i -.ps 9 -.sp .25i -.bd 1 2 -.ce 2 -.vs 11p -The Role of the Allen Wrench -in Modern Electronics -.sp -.ce 3 -.bd 1 -.ft 2 -.ps 8 -.vs 9p -J. Q. Pencilpusher -.sp -X. Y. Hardwired -.sp -.ce 2 -.ft 1 -Bell Laboratories -Murray Hill, New Jersey 07974 -.sp 3 -.ce -.de SH -.bd 1 2 -.sp -.ce 0 -.in 0 -.. -.de PP -.sp .3 -.ft 1 -.bd 1 -.ti +2n -.. -.SH -1. Introduction -.PP -The solution to the torque handle equation -.br -.di xx -.EQ -delim $$ -gsize 8 -sum from 0 to inf F ( x sub i ) = G ( x ) -.EN -.br -.di -.tl ''\*(10'(1)' -is found with the transformation -$ x = rho over theta $ where $ rho = G prime ( x )$ -and $theta$ is derived from well-known principles. -......PP -......ft 2 -.....The Ascent of the Riffelberg, -......ft 1 -.....by Mark Twain. -.....I sat silent some time, then turned to Harris and said: -.....``My mind is made up.'' -.....Something in my tone struck him; and when he glanced -.....at my eye and read what was written there, his face paled -.....perceptibly. He hesitated a moment, then said: -.....``Speak.'' -.....I answered, with perfect calmness: -......ft 2 -.....``I will ascend the Riffelberg.'' -......ft 1 -.....If I had shot my poor friend he could not have fallen from -.....his chair more suddenly. If I had been his father he -.....could not have pleaded harder to get me to give up my -.....purpose. But I turned a deaf ear to all he said. When he -.....perceived at last that nothing could alter my determination, -.....he ceased to urge, and for a while the deep\p -.sp .5v -.sp 3.5p -.eb -.b1 -.hh "An Internal Memorandum" -.ft 3 -.nf -\&.IM -\&.ND January 24, 1956 -\&.TL -\&The 1956 Consent Decree -\&.AU -\&Able, Baker & -\&Charley, Attys. -\&.PP -Plaintiff, United States of America, having filed -its complaint herein on January 14, 1949; the -defendants having appeared and filed their -answer to such complaint denying the -substantive allegations thereof; and the parties, -by their attorneys, ... -.ft -.sp -.ft 1 -.mk a -.br -.sp .20i -.ta 2.1i -.ll 3i -.ps 18 -.br - \(bs -.vs .20i -.ps 7 -.br -.bd 1 2 -.nf - Bell Laboratories -.fi -.na -.bd 1 -.ps 7 -.vs 8p -.sp .12i -.mk -.fi -.ll -.ll 2.0i -Subject: -.ps 8 -.hy 0 -.br -.bd 1 2 -.sp -1 -\h'\w'\s7Subject: \s0'u'The 1956 Consent Decree -.hy 14 -.br -.bd 1 -.rt -.ll 3.25i -.in 2.10i -.ps 7 -.mk -.ti -6n -date: -.br -.bd 1 2 -.rt -.ps 8 -January 24, 1956 -.sp -.bd 1 -.ps 7 -.mk -.ti -6n -from: -.ps 8 -.nf -.br -.bd 1 2 -.rt -Able, Baker & -Charley, Attys. -.br -.bd 1 -.sp -.sp -.ll 3i -.ad -.fi -.in 0 -.de SH -.sp .5 -.bd 1 2 -.. -.de PP -.sp .3 -.bd 1 -.ti +2n -.. -.PP -Plaintiff, United States of America, having filed its complaint -herein on January 14, 1949; the defendants having appeared and -filed their answer to such complaint denying the substantive -allegations thereof; and the parties, by their attorneys, having -severally consented to the entry of this Final Judgment without -trial or adjudication of any issues of fact or law herein and without -this Final Judgment constituting any evidence or admission by any -party in respect of any such issues; -.PP -Now, therefore before any testimony has been taken herein, and -without trial or adjudication of any issue of fact or law herein, -and upon the consent of all parties hereto, it is hereby -.PP -Ordered, adjudged and decreed as follows: -.SH -I. -[Sherman Act] -.PP -This Court has jurisdiction of the subject matter herein and of all -the parties hereto. -The complaint states a claim upon which relief may be granted -against each of the defendants under Sections 1, 2 and 3 of the -Act of Congress of July 2, 1890, entitled ``An act to protect -trade and commerce against unlawful restraints and monopolies,'' -commonly known as the Sherman Act, as amended. -.SH -II. -[Definitions] -.PP -For the purposes of this Final Judgment: -.PP -(a) ``Western'' shall mean the defendant Western Electric -Company, Incorporated. -.sp .25i -.eb -.sp -.ft 1 -.bd 1 - -.ps 9 -.vs 10p -Other formats possible (specify before \f3.TL\f1) are: -\&\f3.MR\f1 (``memo for record''), \f3.MF\f1 -(``memo for file''), -\&\f3.EG\f1 (``engineer's notes'') and \f3.TR\f1 -(Computing Science Tech. Report). -.sp 2 -.hh "Headings" -.sp .5 -.nf -.ft 3 -.ta 2i -\&.NH .SH -Introduction. Appendix I -\&.PP .PP -text text text text text text -.ft 1 -.bd 1 2 -.sp -.br -1. Introduction Appendix I -.br -.sp .3v -.bd 1 -\0\0text text text \0\0text text text -.br -.b2 -.hh "A Simple List" -.ft 3 -.nf -\&.IP 1. -\&J. Pencilpusher and X. Hardwired, -\&.I -\&A New Kind of Set Screw, -\&.R -\&Proc. IEEE -\&.B 75 -\&(1976), 23-255. -\&.IP 2. -\&H. Nails and R. Irons, -\&.I -\&Fasteners for Printed Circuit Boards, -\&.R -\&Proc. ASME -\&.B 23 -\&(1974), 23-24. -\&.LP \fP(terminates list) -.sp 1.5 -.EQ -delim $$ -gsize 9 -.EN -.fi -.IP 1. -J. Pencilpusher and X. Hardwired, -.I -A New Kind of Set Screw, -.R -Proc. IEEE -$fat 75$ -(1976), 23-255. -.IP 2. -H. Nails and R. Irons, -.I -Fasteners for Printed Circuit Boards, -.R -Proc. ASME -$fat 23$ -(1974), 23-24. -.LP -.sp 2 -.EQ -delim off -.EN -.hh "Displays" -.nf -.ft 3 -\&text text text text text text -\&.DS -\&and now -\&for something -\&completely different -\&.DE -\&text text text text text text -.ft -.sp 1 -.fi -hoboken harrison newark roseville avenue grove street -east orange brick church orange highland avenue -mountain station south orange maplewood millburn short hills -summit new providence -.in .4i -.sp .5 -.nf -and now -for something -completely different -.sp .5 -.in -.fi -murray hill berkeley heights -gillette stirling millington lyons basking ridge -bernardsville far hills peapack gladstone -.sp .5 -Options: \f3.DS L\f1: left-adjust; -\&\f3.DS C\f1: line-by-line center; \f3.DS B\f1: make block, then center. -.sp 2 -.hh "Footnotes" -.nf -.ft 3 -\&Among the most important occupants -\&of the workbench are the long-nosed pliers. -\&Without these basic tools* -\&.FS -\&* As first shown by Tiger & Leopard -\&(1975). -\&.FE -\&few assemblies could be completed. They may -\&lack the popular appeal of the sledgehammer -.ft -.sp 1.5 -.fi -Among the most important occupants -of the workbench are the long-nosed -pliers. -Without these basic tools* -few assemblies could be completed. -They may lack the -popular appeal of the sledgehammer -.br -\l'1i' -.ps -1 -.br -* As first shown by Tiger & Leopard (1975). -.ps -.br -.nf -.b1 -.hh "Multiple Indents" -.ft 3 -\&This is ordinary text to point out -\&the margins of the page. -\&.IP 1. -\&First level item -\&.RS -\&.IP a) -\&Second level. -\&.IP b) -\&Continued here with another second -\&level item, but somewhat longer. -\&.RE -\&.IP 2. -\&Return to previous value of the -\&indenting at this point. -\&.IP 3. -\&Another -\&line. -.ft -.sp 1.5v -.fi -This is ordinary text to point out -the margins of the page. -.IP 1. -First level item -.RS -.IP a) -Second level. -.IP b) -Continued here with another second level -item, but somewhat longer. -.RE -.IP 2. -Return to previous value of the -indenting at this point. -.IP 3. -Another -line. -.LP -.sp 2 -.hh "Keeps" -.fi -Lines bracketed by the following commands are kept together, -and will appear entirely on one page: -.TS -center; -Lf3 5 L8 Lf3 5 L. -\&.KS not moved .KF may float -\&.KE through text .KE in text -.TE -.nf -.sp 2 -.hh "Double Column" -.nf -.hy 0 -.ft 3 -\&.TL -The Declaration of Independence -\&.2C -.na -.fi -\&.PP -.br -When in the course of human events, it becomes -necessary for one people to dissolve the political bonds -which have connected them with another, and to assume -among the powers of the earth the separate and equal station -to which the laws of Nature and of Nature's God entitle them, -a decent respect to the opinions of -.ft -.de xy -.if \\n(xy=0 'rt -.if \\n(xy=0 'po +1.58i -.nr xy +1 -.. -.wh 10.45i xy -.br -.ad -.hy 1 -.sp 1.5 -.ce -The Declaration of Independence -.sp .5 -.ll 1.42i -.mk -.fi -.ti +2n -When in the course of human events, it becomes -necessary for one people to dissolve the political bonds which have -connected them with another, and to assume among the -powers of the earth the separate and equal station to which -the laws of Nature and of Nature's God entitle them, a decent -respect to the opinions of mankind requires that they should -declare the causes which impel them to the separation. -.ti +2n -We hold these truths to be self-evident, that all men -are created equal, that they are endowed by their creator -with certain unalienable rights, that among these are life, liberty, -and the pursuit of happiness. That to secure these rights, -governments are instituted among men,\p -.br -.po -1.58i -.ll 3i -.lt 3i -.rm xy -.b2 -.hh "Equations" -.nf -.de EQ \"equation, breakout and display -.nr EF \\n(.u -.rm EE -.nr LE 1 \" 1 is center -.ds EL \\$1 -.if "\\$1"L" .ds EL \\$2 -.if "\\$1"L" .nr LE 0 -.if "\\$1"C" .ds EL \\$2 -.if "\\$1"I" .nr LE 0 -.if "\\$1"I" .ds EE \\h'5n' -.if "\\$1"I" .if !"\\$3"" .ds EE \\h'\\$3n' -.if "\\$1"I" .ds EL \\$2 -.nf -.di EZ -.. -.de EN \" end of a displayed equation -.di -.rm EZ -.lt \\n(.lu -.pc -.if \\n(dn>0 .if \\n(LE>0 .tl \(ts\(ts\\*(10\(ts\\*(EL\(ts -.if \\n(dn>0 .if \\n(LE=0 .tl '\\*(EE\\*(10''\\*(EL' -.pc % -.lt \\n(LLu -.if \\n(EF>0 .fi -.rm EL -.rm 10 -.nr PE \\n(.d -.. -.ft 3 -A displayed equation is marked -with an equation number at the right margin -by adding an argument to the EQ line: -\&.EQ (1.3) -x sup 2 over a sup 2 ~=~ sqrt {p z sup 2 +qz+r} -\&.EN -.ft -.sp -.fi -A displayed equation is marked with an equation number -at the right margin by adding an argument to the EQ line: -.sp .4 -.EQ (1.3) -x sup 2 over a sup 2 -~=~ sqrt { p z sup 2 + q z + r } -.EN -.sp -.nf -.ft 3 -\&.EQ I (2.2a) -bold V bar sub nu~=~left [ pile {a above b above -c } right ] + left [ matrix { col { A(11) above . -above . } col { . above . above .} col {. above . -above A(33) }} right ] cdot left [ pile { alpha -above beta above gamma } right ] -.nf -\&.EN -.ft -.sp -.EQ I (2.2a) -fat {roman V} bar sub nu~=~left [ pile {a above b above c} -right ] + left [ matrix { col { A(11) above . -above . } col { . above . above .} col {. above . -above A(33) }} right ] cdot left [ pile { alpha -above beta above gamma } right ] -.EN -.sp -.ft 3 -\&.EQ L -F hat ( chi ) ~ mark = ~ | del V | sup 2 -\&.EN -\&.EQ L -.fi -.na -lineup =~ {left ( {partial V} over {partial x} right ) } sup 2 -+ { left ( {partial V} over {partial y} right ) } sup 2 -~~~~~~ lambda -> inf -.nf -\&.EN -.ft -.ta .25i -.sp -.EQ L -F hat ( chi ) ~ mark = ~ | del V | sup 2 -.EN -.sp 1 -.EQ L -delim off -lineup =~ {left ( {partial V} over {partial x} right ) } sup 2 -+ { left ( {partial V} over {partial y} right ) } sup 2 -~~~~~~ lambda -> inf -.EN -.rm EQ -.rm EN -.fi -.sp -.ft 3 -$ a dot $, $ b dotdot$, $ xi tilde times -y vec$: -.EQ -delim $$ -.EN -.ft R -.br -.sp -$ a dot $, $ b dotdot$, $ xi tilde times -y vec$. -.EQ -delim off -.EN -\h'.3i'(with delim $$ on, see panel 3). -.sp .5 -See also the equations in the second table, panel 8. -.nf -.br -.bd I -.sp 2 -.ft R -.hh "Some Registers You Can Change" -.nf -.mk -Line length - .nr LL 7i -.sp .4 -Title length - .nr LT 7i -.sp .4 -Point size - .nr PS 9 -.sp .4 -Vertical spacing - .nr VS 11 -.sp .4 -Column width - .nr CW 3i -.sp .4 -Intercolumn spacing - .nr GW .5i -.sp .4 -Margins \- head and foot - .nr HM .75i - .nr FM .75i -.sp .4 -Paragraph indent - .nr PI 2n -.rt -.po +1.6i -Paragraph spacing - .nr PD 0 -.sp .4 -Page offset - .nr PO 0.5i -.sp .4 -Page heading - .ds CH Appendix - (center) - .ds RH 7-25-76 - (right) - .ds LH Private - (left) -.sp .4 -Page footer - .ds CF Draft - .ds LF - .ds RF \u similar \d -.sp .4 -Page numbers - .nr % 3 -.po -1.6i -.b1 -.hh Tables -.nf -.ds T \|\h'.35n'\v'-.1n'\s6\zT\s0\v'.1n'\h'-.35n'\(ci\| -.ft 3 -.EQ -delim off -.EN -\&.TS\h'.5i'\fR(\f3\*T\f1 indicates a tab)\f3 -\&allbox; -.nr x \n(nl -\&c s s -\&c c c -\&n n n. -\&AT&T Common Stock -\&Year\*TPrice\*TDividend -\&1971\*T41-54\*T$2.60 -\&2\*T41-54\*T2.70 -\&3\*T46-55\*T2.87 -\&4\*T40-53\*T3.24 -\&5\*T45-52\*T3.40 -\&6\*T51-59\*T.95* -\&.TE -\&* (first quarter only) -.ft 1 -.nr y \n(nl -.sp |\nxu -.di qq -.TS -allbox; -c s s -c c c -n1 n1 n1. -AT&T Common Stock -Year Price Dividend -1971 41-54 $2.60 -2 41-54 2.70 -3 46-55 2.87 -4 40-53 3.24 -5 45-52 3.40 -6 51-59 .95* -.TE -* (first quarter only) -.br -.di -.in 3i-\n(TWu -.nf -.qq -.in 0 -.if \ny>\n(nl .sp |\nyu -.sp .5 -.ft 1 -.fi -.ad -The meanings of the key-letters describing -the alignment of each entry are: -.br -.nf -.TS -center; -cf3 l6 cf3 l. -c center n numerical -r right-adjust a subcolumn -l left-adjust s spanned -.TE -.fi -The global table options are -.ft 3 -.bd I 2 -.hy 0 -center, expand, box, doublebox, allbox, -tab (\f2x\fP\|) -.ft 1 -and -.ft 3 -linesize (\f2n\fP\|). -.br -.hy 1 -.ft 1 -.bd I -.sp 1 -.nf -.ta .1i -.ft 3 -\&.TS\h'.5i'\fR(with delim $$ on, see panel 3)\fP -\&doublebox, center; -\&c c -\&l l. -\&Name\*TDefinition -\&.sp -\&Gamma\*T$GAMMA (z) = int sub 0 sup inf \e - t sup {z-1} e sup -t dt$ -\&Sine\*T$sin (x) = 1 over 2i ( e sup ix - e sup -ix )$ -\&Error\*T$ roman erf (z) = 2 over sqrt pi \e - int sub 0 sup z e sup {-t sup 2} dt$ -\&Bessel\*T$ J sub 0 (z) = 1 over pi \e - int sub 0 sup pi cos ( z sin theta ) d theta $ -\&Zeta\*T$ zeta (s) = \e - sum from k=1 to inf k sup -s ~~( Re~s > 1)$ -\&.TE -.ft -.sp -.EQ -delim $$ -.EN -.vs +2p -.TS -doublebox, center; -c c -l l. -Name Definition -.sp -Gamma $GAMMA (z) = int sub 0 sup inf t sup {z-1} e sup -t dt$ -Sine $sin (x) = 1 over 2i ( e sup ix - e sup -ix )$ -Error $ roman erf (z) = 2 over sqrt pi int sub 0 sup z e sup {-t sup 2} dt$ -Bessel $ J sub 0 (z) = 1 over pi int sub 0 sup pi cos ( z sin theta ) d theta $ -Zeta $ zeta (s) = sum from k=1 to inf k sup -s ~~( Re~s > 1)$ -.TE -.vs -2p -.br -.bd I 2 -.sp 1 -.hh "Usage" -.ps 9 -.vs 10p -.ds & \\s-1&\\s0 -.TS -l. -\h'.25i'Documents with just text: -troff -ms files -\h'.25i'With equations only: -eqn files | troff -ms -\h'.25i'With tables only: -tbl files | troff -ms -\h'.25i'With both tables and equations: -tbl files\||\|eqn\||\|troff -ms -_ -.TE -.ft R -.fi -.sp .5 -The above generates \s-2STARE\s0 output on -\s-2GCOS\s0: replace -.ft 3 -\-st -.ft R -with -.ft 3 -\-ph -.ft R -for typesetter output. -.ft 1 -.bd I -.b2 diff --git a/share/doc/usd/18.msdiffs/Makefile b/share/doc/usd/18.msdiffs/Makefile deleted file mode 100644 index 1d09f8b77ac..00000000000 --- a/share/doc/usd/18.msdiffs/Makefile +++ /dev/null @@ -1,11 +0,0 @@ -# $OpenBSD: Makefile,v 1.3 2004/02/01 14:22:46 jmc Exp $ - - -DIR= usd/18.msdiffs -SRCS= ms.diffs -MACROS= -ms - -paper.txt: ${SRCS} - ${ROFF} -Tascii ${SRCS} > ${.TARGET} - -.include <bsd.doc.mk> diff --git a/share/doc/usd/18.msdiffs/ms.diffs b/share/doc/usd/18.msdiffs/ms.diffs deleted file mode 100644 index 0e0dd1e0009..00000000000 --- a/share/doc/usd/18.msdiffs/ms.diffs +++ /dev/null @@ -1,289 +0,0 @@ -.\" $OpenBSD: ms.diffs,v 1.5 2004/12/05 04:31:58 jsg Exp $ -.\" -.\" Copyright (c) 1983, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)ms.diffs 8.1 (Berkeley) 6/8/93 -.\" -.if n \{\ -.po 5n -.ll 70n -.\} -.nr LL 6.5i -.nr FL 6.0i -.if t .nr PD .5v -.if t .ds m \u\(ul\dm -.if n .ds m -m -.AM -.OH 'A Revised Version of \*ms''USD:18-%' -.EH 'USD:18-%''A Revised Version of \*ms' -.TL -A Revised Version of \*ms -.AU -Bill Tuthill -.AI -Computing Services -University of California -Berkeley, CA 94720 -.PP -The \*ms macros have been slightly revised and re\%arranged for the -Berkeley Unix distribution. -Because of the rearrangement, -the new macros can be read by the computer -in about half the time required by the previous version of \*ms. -This means that output will begin to appear between ten seconds -and several minutes more quickly, depending on the system load. -On long files, however, the savings in total time are not substantial. -The old version of \*ms is still available as \*mos. -.PP -Several bugs in \*ms have been fixed, including -a bad problem with the .1C macro, -minor difficulties with boxed text, -a break induced by .EQ before initialization, -the failure to set tab stops in displays, -and several bothersome errors in the \fBrefer\fP macros. -Macros used only at Bell Laboratories have been removed. -There are a few extensions to previous \*ms macros, -and a number of new macros, but all the documented \*ms macros -still work exactly as they did before, and have the same names as before. -Output produced with \*ms should look like output produced with \*mos. -.PP -One important new feature is automatically numbered footnotes. -Footnote numbers are printed by means of a pre-defined string -(\e\(**\(**), which you invoke separately from .FS and .FE. -Each time it is used, this string increases the footnote number by one, -whether or not you use .FS and .FE in your text. -Footnote numbers will be superscripted on the phototypesetter -and on daisy-wheel terminals, but on low-resolution devices -(such as the lpr and a crt), they will be bracketed. -If you use \e\(**\(** to indicate numbered footnotes, -then the .FS macro will automatically include -the footnote number at the bottom of the page. -This footnote, for example, was produced as follows:\** -.DS -This footnote, for example, was produced as follows:\e\(**\(** -\&.FS -.sp -.2 - ... -\&.FE -.DE -.FS -If you never use the ``\e\(**\(**'' string, -no footnote numbers will appear anywhere in the text, -including down here. -The output footnotes will look exactly like -footnotes produced with \*mos. -.FE -If you are using \e\(**\(** to number footnotes, -but want a particular footnote to be marked with an asterisk or a dagger, -then give that mark as the first argument to .FS: \(dg -.DS -then give that mark as the first argument to .FS: \e(dg -\&.FS \e(dg -.sp -.2 - ... -\&.FE -.DE -.FS \(dg -In the footnote, the dagger will appear where the footnote -number would otherwise appear, as on the left. -.FE -Footnote numbering will be temporarily suspended, -because the \e\(**\(** string is not used. -Instead of a dagger, you could use an asterisk * -or double dagger \(dd, represented as \|\e(dd. -.PP -Another new feature is a macro for printing theses -according to Berkeley standards. -This macro is called .TM, which stands for thesis mode. -(It is much like the .th macro in \*me.) -It will put page numbers in the upper right-hand corner; -number the first page; suppress the date; -and doublespace everything except quotes, displays, and keeps. -Use it at the top of each file making up your thesis. -Calling .TM defines the .CT macro for chapter titles, -which skips to a new page and moves the pagenumber to the center footer. -The .P1 (P one) macro can be used even without thesis mode -to print the header on page 1, -which is suppressed except in thesis mode. -If you want roman numeral page numbering, -use an ``.af\0PN\0i'' request. -.PP -There is a new macro especially for bibliography entries, -called .XP, which stands for exdented paragraph. -It will exdent the first line of the paragraph by \en(PI units, -usually 5n (the same as the indent for the first line of a .PP). -Most bibliographies are printed this way. -Here are some examples of exdented paragraphs: -.XP -Lumley, Lyle S., \fISex in Crustaceans: Shell Fish Habits,\fP\| -Harbinger Press, Tampa Bay and San Diego, October 1979. -243 pages. -The pioneering work in this field. -.XP -Leffadinger, Harry A., ``Mollusk Mating Season: 52 Weeks, or All Year?'' -in \fIActa Biologica,\fP\| vol. 42, no. 11, November 1980. -A provocative thesis, but the conclusions are wrong. -.LP -Of course, you will have to take care of -italicizing the book title and journal, -and quoting the title of the journal article. -Indentation or exdentation can be changed -by setting the value of number register PI. -.PP -If you need to produce endnotes rather than footnotes, -put the references in a file of their own. -This is similar to what you would do if you were -typing the paper on a conventional typewriter. -Note that you can use automatic footnote numbering -without actually having .FS and .FE pairs in your text. -If you place footnotes in a separate file, -you can use .IP macros with \e\(**\(**\| as a hanging tag; -this will give you numbers at the left-hand margin. -With some styles of endnotes, -you would want to use .PP rather than .IP macros, -and specify \e\(**\(** before the reference begins. -.PP -There are four new macros to help produce a table of contents. -Table of contents entries must be enclosed in .XS and .XE pairs, -with optional .XA macros for additional entries; -arguments to .XS and .XA specify the page number, -to be printed at the right. -A final .PX macro prints out the table of contents. -Here is a sample of typical input and output text: -.DS -\&.XS ii -Introduction -\&.XA 1 -Chapter 1: Review of the Literature -\&.XA 23 -Chapter 2: Experimental Evidence -\&.XE -\&.PX -.sp .5 -.lt 5.5i -.tl ''\fBTable of Contents\fP'' -.ta 5i 5.5iR -.sp -Introduction ii\| -Chapter 1: Review of the Literature 1 -Chapter 2: Experimental Evidence 23 -.sp .5 -.DE -The .XS and .XE pairs may also be used in the text, -after a section header for instance, -in which case page numbers are supplied automatically. -However, most documents that require a table of contents -are too long to produce in one run, -which is necessary if this method is to work. -It is recommended that you do a table of contents -after finishing your document. -To print out the table of contents, use the .PX macro; -if you forget it, nothing will happen. -.PP -As an aid in producing text that will format correctly -with both \fBnroff\fP and \fBtroff\fP, -there are some new string definitions that define quotation marks -and dashes for each of these two formatting programs. -The \e\(**\^\u_\d string will yield two hyphens in \fBnroff\fP, -but in \fBtroff\fP it will produce an em dash\*- -like this one. -The \e\(**Q and \e\(**U strings will produce -`` and '' in \fBtroff\fP, but " in \fBnroff\fP. -(In typesetting, the double quote is traditionally considered bad form.) -.PP -There are now a large number of optional -foreign accent marks defined by the \*ms macros. -All the accent marks available in \*mos are present, -and they all work just as they always did. -However, there are better definitions available -by placing .AM at the beginning of your document. -Unlike the \*mos accent marks, -the accent strings should come \fIafter\fP\| the letter being accented. -Here is a list of the diacritical marks, -with examples of what they look like. -.DS -.ta 2i 3i -name of accent input output -\l'3.5i' -acute accent e\e\(**\' e\*' -grave accent e\e\(**\` e\*` -circumflex o\e\(**\d^\u o\*^ -cedilla c\e\(**, c\*, -tilde n\e\(**\d~\u n\*~ -question \e\(**? \*? -exclamation \e\(**! \*! -umlaut u\e\(**: u\*: -digraph s \e\(**8 \*8 -hac\*vek c\e\(**v c\*v -macron a\e\(**_ a\*_ -underdot s\e\(**. s\*. -o-slash o\e\(**/ o\*/ -angstrom a\e\(**o a\*o -yogh kni\e\(**3t kni\*3t -Thorn \e\(**(Th \*(Th -thorn \e\(**(th \*(th -Eth \e\(**(D- \*(D- -eth \e\(**(d- \*(d- -hooked o \e\(**q \*q -ae ligature \e\(**(ae \*(ae -AE ligature \e\(**(Ae \*(Ae -oe ligature \e\(**(oe \*(oe -OE ligature \e\(**(Oe \*(Oe -.DE -If you want to use these new diacritical marks, -don't forget the .AM at the top of your file. -Without it, some will not print at all, -and others will be placed on the wrong letter. -.PP -It is also possible to produce custom headers and footers -that are different on even and odd pages. -The .OH and .EH macros define odd and even headers, -while .OF and .EF define odd and even footers. -Arguments to these four macros are specified as with .tl. -This document was produced with: -.DS -\&.OH \'\ef\^IThe -mx Macros\'\'Page %\ef\^P\' -\&.EH \'\ef\^IPage %\'\'The -mx Macros\ef\^P\' -.DE -Note that it would be a error to have an apostrophe in the header text; -if you need one, you will have to use a different delimiter -around the left, center, and right portions of the title. -You can use any character as a delimiter, provided it doesn't appear -elsewhere in the argument to .OH, .EH, .OF, or EF. -.PP -The \*ms macros work in conjunction with -the \fBtbl\fR, \fBeqn\fR, and \fBrefer\fR preprocessors. -Macros to deal with these items are read in only as needed, -as are the thesis macros (.TM), -the special accent mark definitions (.AM), -table of contents macros (.XS and .XE), -and macros to format the optional cover page. -The code for the \*ms package lives in /usr/lib/tmac/tmac.s, -and sourced files reside in the directory /usr/ucb/lib/ms. -.sp -.tl '''\*(DY' diff --git a/share/doc/usd/19.memacros/Makefile b/share/doc/usd/19.memacros/Makefile deleted file mode 100644 index 9a2bd93ac89..00000000000 --- a/share/doc/usd/19.memacros/Makefile +++ /dev/null @@ -1,11 +0,0 @@ -# $OpenBSD: Makefile,v 1.3 2004/02/01 14:22:46 jmc Exp $ - - -DIR= usd/19.memacros -SRCS= intro.me -MACROS= -me - -paper.txt: ${SRCS} - ${ROFF} -Tascii ${SRCS} > ${.TARGET} - -.include <bsd.doc.mk> diff --git a/share/doc/usd/19.memacros/intro.me b/share/doc/usd/19.memacros/intro.me deleted file mode 100644 index 5ce88906127..00000000000 --- a/share/doc/usd/19.memacros/intro.me +++ /dev/null @@ -1,2337 +0,0 @@ -.\" Copyright (c) 1986, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)intro.me 8.1 (Berkeley) 6/8/93 -.\" -.if n \{\ -.po 5n -.\} -.UC 7 -.ll 6.5i -.lt 6.5i -.pn 0 -.ds MO 2.27\" version of -me to which this applies -.nr si 3n -\".he 'USING NROFF AND \-ME''%' -.eh 'USD:19-%''Writing Papers with NROFF using \-me' -.oh 'Writing Papers with NROFF using \-me''USD:19-%' -.ds U \s-1UNIX\s0 -.ds N \s-1NROFF\s0 -.ds T \s-1TROFF\s0 -.+c -.(l C -.sz 14 -.b "Writing Papers with NROFF using \-me" -.sz -.sp 2 -.ul -Eric P. Allman* -.(f -*Author's current address: -Computer Science Division, -EECS, -University of California, -Berkeley, California 94720. -.)f -.sp -Project INGRES -Electronics Research Laboratory -University of California, Berkeley -Berkeley, California 94720 -.)l -.sp 4 -.pp -This document describes -the text processing facilities -available on the \*U** -.(f -**\*U is a trademark -of AT&T Bell Laboratories -.)f -operating system -via \*N and the -\-me -macro package. -It is assumed -that the reader -already is generally familiar -with the \*U operating system -and a text editor -such as -.b ex . -This is intended to be a casual introduction, -and -as such not all material is covered. -In particular, -many variations and additional features -of the \-me macro package -are not explained. -For a complete discussion of this -and other issues, -see /usr/share/doc/usd/20.meref: -.i "The \-me Reference Manual" . -.pp -\*N, a computer program -that runs on the \*U operating system, -reads an input file -prepared by the user -and outputs a formatted paper -suitable for publication or framing. -The input consists of -.i text , -or words to be printed, -and -.i requests , -which give instructions -to the \*N program -telling how to format the printed copy. -.pp -Section 1 -describes the basics -of text processing. -Section 2 -describes the basic requests. -Section 3 -introduces displays. -Annotations, -such as footnotes, -are handled in -section 4. -The more complex requests -which are not discussed in section 2 -are covered in section 5. -Finally, -section 6 -discusses things you will need -to know -if you want to typeset documents. -If you are a novice, -you probably won't want to read beyond section 4 -until you have tried some of the basic features out. -.pp -When you have your raw text ready, -call the \*N formatter by typing -as a request to the \*U shell: -.(b -nroff \-me \-T\c -.i "type file ..." -.)b -where -.i type -describes the type of terminal -you are outputting to. -Common values are -.b ascii -for console viewing with a pager such as less(1), -and -.b ps -for PostScript previewers and printers. -If the -.b \-T -flag is omitted, -.b ps -is assumed. -A complete description of options -to the \*N command can be found in -the groff(1) manual page. -.pp -The word -.i argument -is used in this manual -to mean a word or number -which appears on the same line -as a request -which modifies the meaning -of that request. -For example, -the request -.(b -\&.sp -.)b -spaces one line, -but -.(b -\&.sp 4 -.)b -spaces four lines. -The number -.b 4 -is an -.i argument -to the -.b .sp -request -which says to space four lines -instead of one. -Arguments are separated from the request -and from each other -by spaces. -.sh 1 "Basics of Text Processing" -.pp -The primary function -of \*N -is to -.i collect -words from input lines, -.i fill -output lines with those words, -.i justify -the right hand margin by inserting extra spaces -in the line, -and output the result. -For example, -the input: -.(b -Now is the time -for all good men -to come to the aid -of their party. -Four score and seven -years ago,... -.)b -will be read, -packed onto output lines, -and justified -to produce: -.(b F -Now is the time -for all good men -to come to the aid -of their party. -Four score and seven -years ago,... -.)b -Sometimes you may want to start a new output line -even though the line you are on -is not yet full; -for example, -at the end of a paragraph. -To do this -you can cause a -.i break , -which -starts a new output line. -Some requests -cause a break automatically, -as do blank input lines -and input lines beginning with a space. -.pp -Not all input lines -are text to be formatted. -Some of the input lines -are -.i requests -which describe -how to format the text. -Requests always have a period -or an apostrophe -(\c -.q "\|\(aa\|" ) -as the first character -of the input line. -.pp -The text formatter -also does more complex things, -such as automatically numbering pages, -skipping over page folds, -putting footnotes in the correct place, -and so forth. -.pp -I can offer you a few hints -for preparing text -for input to \*N. -First, -keep the input lines short. -Short input lines are easier to edit, -and \*N will pack words onto longer lines -for you anyhow. -In keeping with this, -it is helpful -to begin a new line -after every period, -comma, -or phrase, -since common corrections -are to add or delete sentences -or phrases. -Second, -do not put spaces at the end of lines, -since this can sometimes confuse the \*N -processor. -Third, -do not hyphenate words at the end of lines -(except words that should have hyphens in them, -such as -.q mother-in-law ); -\*N is smart enough to hyphenate words -for you as needed, -but is not smart enough -to take hyphens out -and join a word back together. -Also, -words such as -.q mother-in-law -should not be broken -over a line, -since then you will get a space -where not wanted, -such as -.tr @- -.nh -.q "mother@\ in@law" . -.br -.tr @@ -.hy 14 -.sh 1 "Basic Requests" -.sh 2 "Paragraphs" -.pp -Paragraphs are begun -by using the -.b .pp -request. -For example, -the input: -.(b -\&.pp -Now is the time for all good men -to come to the aid of their party. -Four score and seven years ago,... -.)b -produces a blank line -followed by an indented first line. -The result is: -.(b F -.ti +\n(piu -Now is the time for all good men -to come to the aid of their party. -Four score and seven years ago,... -.)b -.pp -Notice that the sentences -of the paragraphs -.i "must not" -begin with a space, -since blank lines -and lines beginning with spaces -cause a break. -For example, -if I had typed: -.(b -\&.pp -Now is the time for all good men - to come to the aid of their party. -Four score and seven years ago,... -.)b -The output would be: -.(b F -.ti +\n(piu -Now is the time for all good men - to come to the aid of their party. -Four score and seven years ago,... -.)b -A new line begins after the word -.q men -because the second line began with a space character. -.pp -There are many -fancier -types of paragraphs, -which will be described later. -.sh 2 "Headers and Footers" -.pp -Arbitrary headers and footers -can be put -at the top and bottom -of every page. -Two requests -of the form -.b .he \ \c -.i title -and -.b .fo \ \c -.i title -define the titles to put at the head and the foot -of every page, -respectively. -The titles are called -.i three-part -titles, -that is, -there is a left-justified part, -a centered part, -and a right-justified part. -To separate these three parts -the first character of -.i title -(whatever it may be) -is used as a delimiter. -Any character may be used, -but -backslash -and double quote marks -should be avoided. -The percent sign -is replaced by the current page number -whenever found in the title. -For example, -the input: -.(b -\&.he \(aa\(aa%\(aa\(aa -\&.fo \(aaJane Jones\(aa\(aaMy Book\(aa -.)b -results in the page number -centered at the top -of each page, -.q "Jane Jones" -in the lower left corner, -and -.q "My Book" -in the lower right corner. -.sh 2 "Double Spacing" -.pp -.ls 2 -\*N will double space output text automatically if you -use the request -.b ".ls\ 2" , -as is done in this section. -You can revert to single spaced mode -by typing -.b ".ls\ 1" . -.ls 1 -.sh 2 "Page Layout" -.pp -A number of requests allow -you to change the way the printed copy looks, -sometimes called the -.i layout -of the output page. -Most of these requests adjust the placing -of -.q "whitespace" -(blank lines or spaces). -In these explanations, -characters in italics -should be replaced with values you wish to use; -bold characters -represent characters which should actually be typed. -.pp -The -.b .bp -request -starts a new page. -.pp -The request -.b .sp \ \c -.i N -leaves -.i N -lines of blank space. -.i N -can be omitted -(meaning skip a single line) -or can be of the form -.i N \^\c -.b i -(for -.i N -inches) -or -.i N \^\c -.b c -(for -.i N -centimeters). -For example, the input: -.(b -\&.sp 1.5i -My thoughts on the subject -\&.sp -.)b -leaves one and a half inches of space, -followed by the line -.q "My thoughts on the subject" , -followed by a single blank line. -.pp -The -.b .in\ + \c -.i N -request -changes the amount of whitespace -on the left of the page -(the -.i indent ). -The argument -.i N -can be of the form -.b + \c -.i N -(meaning leave -.i N -spaces more than you are already leaving), -.b \- \c -.i N -(meaning leave less than you do now), -or just -.i N -(meaning leave exactly -.i N -spaces). -.i N -can be of the form -.i N \^\c -.b i -or -.i N \^\c -.b c -also. -For example, -the input: -.(b -initial text -\&.in 5 -some text -\&.in +1i -more text -\&.in \-2c -final text -.)b -produces -.q "some text" -indented exactly five spaces -from the left margin, -.q "more text" -indented five spaces -plus one inch -from the left margin -(fifteen spaces -on a pica typewriter), -and -.q "final text" -indented five spaces -plus one inch -minus two centimeters -from the margin. -That is, -the output is: -.(b -initial text -.in +5 -some text -.in +1i -more text -.in -2c -final text -.)b -.pp -The -.b .ti \ \c -.i +N -(temporary indent) -request is used like -.b .in \ \c -.i +N -when the indent -should apply to one line only, -after which it should revert -to the previous indent. -For example, -the input: -.(b -\&.in 1i -\&.ti 0 -Ware, James R. The Best of Confucius, -Halcyon House, 1950. -An excellent book containing translations of -most of Confucius\(aa most delightful sayings. -A definite must for anyone interested in the early foundations -of Chinese philosophy. -.)b -produces: -.in 1i+\n($iu -.ti \n($iu -Ware, James R. The Best of Confucius, -Halcyon House, 1950. -An excellent book containing translations of -most of Confucius' most delightful sayings. -A definite must for anyone interested in the early foundations -of Chinese philosophy. -.pp -Text lines can be centered -by using the -.b .ce -request. -The line after the -.b .ce -is centered -(horizontally) -on the page. -To center more than one line, -use -.b .ce \ \c -.i N -(where -.i N -is the number of lines to center), -followed by the -.i N -lines. -If you want to center many lines -but don't want to count them, -type: -.(b -\&.ce 1000 -lines to center -\&.ce 0 -.)b -The -.b ".ce\ 0" -request tells \*N to center zero more lines, -in other words, -stop centering. -.pp -All of these requests -cause a break; -that is, -they always start -a new line. -If you want to start a new line -without performing any other action, -use -.b .br . -.sh 2 "Underlining" -.pp -Text can be underlined -using the -.b .ul -request. -The -.b .ul -request -causes the next input line -to be underlined when output. -You can underline multiple lines -by stating a count of -.i input -lines to underline, -followed by those lines -(as with the -.b .ce -request). -For example, -the input: -.(b -\&.ul 2 -Notice that these two input lines -are underlined. -.)b -will underline those eight words in \*N. -(In \*T they will be set in italics.) -.sh 1 "Displays" -.pp -Displays are sections of text -to be set off -from the body of the paper. -Major quotes, -tables, -and figures -are types of displays, -as are all the examples -used in this document. -All displays -except centered blocks -are output -single spaced. -.sh 2 "Major Quotes" -.pp -Major quotes -are quotes which are several lines long, -and hence are set in from the rest -of the text -without quote marks -around them. -These can be generated -using the commands -.b .(q -and -.b .)q -to surround the quote. -For example, -the input: -.(b -As Weizenbaum points out: -\&.(q -It is said that to explain is to explain away. -This maxim is nowhere so well fulfilled -as in the areas of computer programming,... -\&.)q -.)b -generates as output: -.lp -As Weizenbaum points out: -.(q -It is said that to explain is to explain away. -This maxim is nowhere so well fulfilled -as in the areas of computer programming,... -.)q -.sh 2 "Lists" -.pp -A -.i list -is an indented, -single spaced, -unfilled display. -Lists should be used -when the material to be printed -should not be filled and justified -like normal text, -such as columns of figures -or the examples used in this paper. -Lists are surrounded -by the requests -.b .(l -and -.b .)l . -For example, -typing: -.(b -Alternatives to avoid deadlock are: -\&.(l -Lock in a specified order -Detect deadlock and back out one process -Lock all resources needed before proceeding -\&.)l -.)b -will produce: -.br -Alternatives to avoid deadlock are: -.(l -Lock in a specified order -Detect deadlock and back out one process -Lock all resources needed before proceeding -.)l -.sh 2 "Keeps" -.pp -A -.i keep -is a display of lines -which are kept on a single page -if possible. -An example of where you would use a keep -might be a diagram. -Keeps differ from lists -in that lists may be broken -over a page boundary -whereas keeps will not. -.pp -Blocks are the basic kind of keep. -They begin with the request -.b .(b -and end with the request -.b .)b . -If there is not room on the current page -for everything in the block, -a new page is begun. -This has the unpleasant effect -of leaving blank space -at the bottom of the page. -When this is not appropriate, -you can use the alternative, -called -.i "floating keeps" . -.pp -.i "Floating keeps" -move relative to the text. -Hence, -they are good for things -which will be referred to -by name, -such as -.q "See figure 3" . -A floating keep will appear -at the bottom of the current page -if it will fit; -otherwise, -it will appear at the top -of the next page. -Floating keeps begin with the line -.b .(z -and end with the line -.b .)z . -For an example of a floating keep, -see figure 1. -.(z -.in 1i -.xl -1i -.hl -\&.(z -\&.hl -Text of keep to be floated. -\&.sp -\&.ce -Figure 1. Example of a Floating Keep. -\&.hl -\&.)z -.sp -.ce -Figure 1. Example of a Floating Keep. -.hl -.)z -The -.b .hl -request is used -to draw a horizontal line -so that the figure -stands out from the text. -.sh 2 "Fancier Displays" -.pp -Keeps and lists are normally collected in -.i nofill -mode, -so that they are good for tables and such. -If you want a display -in fill mode -(for text), -type -.b ".(l\ F" -(throughout this section, -comments applied to -.b .(l -also apply to -.b .(b -and -.b .(z ). -This kind of display -will be indented from both margins. -For example, -the input: -.(b -\&.(l F -And now boys and girls, -a newer, bigger, better toy than ever before! -Be the first on your block to have your own computer! -Yes kids, you too can have one of these modern -data processing devices. -You too can produce beautifully formatted papers -without even batting an eye! -\&.)l -.)b -will be output as: -.(b F -And now boys and girls, -a newer, bigger, better toy than ever before! -Be the first on your block to have your own computer! -Yes kids, you too can have one of these modern -data processing devices. -You too can produce beautifully formatted papers -without even batting an eye! -.)b -.pp -Lists and blocks are also normally indented -(floating keeps are normally left justified). -To get a left-justified list, -type -.b ".(l\ L" . -To get a list centered -line-for-line, -type -.b ".(l C" . -For example, -to get a filled, -left justified list, enter: -.(b -\&.(l L F -text of block -\&.)l -.)b -The input: -.(b -\&.(l -first line of unfilled display -more lines -\&.)l -.)b -produces the indented text: -.(b -first line of unfilled display -more lines -.)b -Typing the character -.b L -after the -.b .(l -request produces the left justified result: -.(b L -first line of unfilled display -more lines -.)b -Using -.b C -instead of -.b L -produces the line-at-a-time centered output: -.(b C -first line of unfilled display -more lines -.)b -.pp -Sometimes it may be -that you want to center several lines -as a group, -rather than centering them -one line at a time. -To do this -use centered blocks, -which are surrounded by the requests -.b .(c -and -.b .)c . -All the lines are centered as a unit, -such that the longest line is centered -and the rest are -lined up around that line. -Notice that lines -do not move -relative to each other -using centered blocks, -whereas they do -using the -.b C -argument to keeps. -.pp -Centered blocks are -.i not -keeps, -and may be used -in conjunction -with keeps. -For example, -to center a group of lines -as a unit -and keep them -on one page, -use: -.(b -\&.(b L -\&.(c -first line of unfilled display -more lines -\&.)c -\&.)b -.)b -to produce: -.(b L -.(c -first line of unfilled display -more lines -.)c -.)b -If the block requests -(\c -.b .(b -and -.b .)b ) -had been omitted -the result would have been the same, -but with no guarantee -that the lines of the centered block -would have all been on one page. -Note the use of the -.b L -argument to -.b .(b ; -this causes the centered block -to center within the entire line -rather than within the line -minus the indent. -Also, -the center requests -must -be nested -.i inside -the keep requests. -.sh 1 "Annotations" -.pp -There are a number of requests -to save text -for later printing. -.i Footnotes -are printed at the bottom of the current page. -.i "Delayed text" -is intended to be a variant form -of footnote; -the text is printed only -when explicitly called for, -such as at the end of each chapter. -.i Indexes -are a type of delayed text -having a tag -(usually the page number) -attached to each entry -after a row of dots. -Indexes are also saved -until called for explicitly. -.sh 2 "Footnotes" -.pp -Footnotes begin with the request -.b .(f -and end with the request -.b .)f . -The current footnote number is maintained -automatically, -and can be used by typing \e**, -to produce a footnote number\**. -.(f -\**Like this. -.)f -The number is automatically incremented -after every footnote. -For example, -the input: -.(b -\&.(q -A man who is not upright -and at the same time is presumptuous; -one who is not diligent and at the same time is ignorant; -one who is untruthful and at the same time is incompetent; -such men I do not count among acquaintances.\e** -\&.(f -\e**James R. Ware, -\&.ul -The Best of Confucius, -Halcyon House, 1950. -Page 77. -\&.)f -\&.)q -.)b -generates the result: -.(q -A man who is not upright -and at the same time is presumptuous; -one who is not diligent and at the same time is ignorant; -one who is untruthful and at the same time is incompetent; -such men I do not count among acquaintances.\** -.(f -\**James R. Ware, -.ul -The Best of Confucius, -Halcyon House, 1950. -Page 77. -.)f -.)q -It is important -that the footnote -appears -.i inside -the quote, -so that you can be sure -that the footnote -will appear -on the same page -as the quote. -.sh 2 "Delayed Text" -.pp -Delayed text -is very similar to a footnote -except that it is printed -when called for explicitly. -This allows a list of -references to -appear -(for example) -at the end of each chapter, -as is the convention in some disciplines. -Use -.b \e*# -on delayed text -instead of -.b \e** -as on footnotes. -.pp -If you are using delayed text -as your standard reference mechanism, -you can still use footnotes, -except that you may want to reference them -with special characters* -.(f -*Such as an asterisk. -.)f -rather than numbers. -.sh 2 "Indexes" -.pp -An -.q index -(actually more like a table of contents, -since the entries are not sorted alphabetically) -resembles delayed text, -in that it is saved until called for. -However, -each entry has the page number -(or some other tag) -appended to the last line -of the index entry -after a row of dots. -.pp -Index entries begin with the request -.b .(x -and end with -.b .)x . -The -.b .)x -request may have a argument, -which is the value to print -as the -.q "page number" . -It defaults to the current page number. -If the page number given is an underscore -(\c -.q _ ) -no page number -or line of dots -is printed at all. -To get the line of dots -without a page number, -type -.b ".)x """"" , -which specifies an explicitly null page number. -.pp -The -.b .xp -request prints the index. -.pp -For example, -the input: -.(b -\&.(x -Sealing wax -\&.)x -\&.(x -Cabbages and kings -\&.)x _ -\&.(x -Why the sea is boiling hot -\&.)x 2.5a -\&.(x -Whether pigs have wings -\&.)x "" -\&.(x -This is a terribly long index entry, such as might be used -for a list of illustrations, tables, or figures; I expect it to -take at least two lines. -\&.)x -\&.xp -.)b -generates: -.(x -Sealing wax -.)x -.(x -Cabbages and kings -.)x _ -.(x -Why the sea is boiling hot -.)x 2.5a -.(x -Whether pigs have wings -.)x "" -.(x -This is a terribly long index entry, such as might be used -for a list of illustrations, tables, or figures; I expect it to -take at least two lines. -.)x -.xp -.pp -The -.b .(x -request may have a single character -argument, -specifying the -.q name -of the index; -the normal index is -.b x . -Thus, -several -.q indices -may be maintained simultaneously -(such as a list of tables, table of contents, etc.). -.pp -Notice that the index must be printed -at the -.i end -of the paper, -rather than at the beginning -where it will probably appear -(as a table of contents); -the pages may have to be physically rearranged -after printing. -.sh 1 "Fancier Features" -.pp -A large number of fancier requests -exist, -notably requests to provide other sorts of paragraphs, -numbered sections of the form -.b 1.2.3 -(such as used in this document), -and multicolumn output. -.sh 2 "More Paragraphs" -.pp -Paragraphs generally start with -a blank line -and with the first line -indented. -It is possible to get -left-justified block-style paragraphs -by using -.b .lp -instead of -.b .pp , -as demonstrated by the next paragraph. -.lp -Sometimes you want to use paragraphs -that have the -.i body -indented, -and the first line -exdented -(opposite of indented) -with a label. -This can be done with the -.b .ip -request. -A word specified on the same line as -.b .ip -is printed in the margin, -and the body is lined up -at a prespecified position -(normally five spaces). -For example, -the input: -.(b -\&.ip one -This is the first paragraph. -Notice how the first line -of the resulting paragraph lines up -with the other lines in the paragraph. -\&.ip two -And here we are at the second paragraph already. -You may notice that the argument to \c -.b .ip -appears -in the margin. -\&.lp -We can continue text... -.)b -produces as output: -.ip one -This is the first paragraph. -Notice how the first line of the resulting paragraph lines up -with the other lines in the paragraph. -.ip two -And here we are at the second paragraph already. -You may notice that the argument to -.b .ip -appears -in the margin. -.lp -We can continue text without starting a new indented -paragraph -by using the -.b .lp -request. -.pp -If you have spaces in the label of a -.b .ip -request, -you must use an -.q "unpaddable space" -instead of a regular space. -This is typed as a backslash character -(\c -.q \e ) -followed by a space. -For example, -to print the label -.q "Part 1" , -enter: -.(b -\&.ip "Part\e 1" -.)b -.pp -If a label of an indented paragraph -(that is, the argument to -.b .ip ) -is longer than the space allocated for the label, -.b .ip -will begin a new line after the label. -For example, -the input: -.(b -\&.ip longlabel -This paragraph had a long label. -The first character of text on the first line -will not line up with the text on second and subsequent lines, -although they will line up with each other. -.)b -will produce: -.ip longlabel -This paragraph had a long label. -The first character of text on the first line -will not line up with the text on second and subsequent lines, -although they will line up with each other. -.pp -It is possible to change the size of the label -by using a second argument -which is the size of the label. -For example, -the above example could be done correctly -by saying: -.(b -\&.ip longlabel 10 -.)b -which will make the paragraph indent -10 spaces for this paragraph only. -If you have many paragraphs to indent -all the same amount, -use the -.i "number register" -.b ii . -For example, to leave one inch of space -for the label, -type: -.(b -\&.nr ii 1i -.)b -somewhere before the first call to -.b .ip . -Refer to the reference manual -for more information. -.pp -If -.b .ip -is used -with no argument at all, -no hanging tag will be printed. -For example, -the input: -.(b -\&.ip [a] -This is the first paragraph of the example. -We have seen this sort of example before. -\&.ip -This paragraph is lined up with the previous paragraph, -but it has no tag in the margin. -.)b -produces as output: -.ip [a] -This is the first paragraph of the example. -We have seen this sort of example before. -.ip -This paragraph is lined up with the previous paragraph, -but it has no tag in the margin. -.pp -A special case of -.b .ip -is -.b .np , -which automatically -numbers paragraphs sequentially from 1. -The numbering is reset at the next -.b .pp , -.b .lp , -or -.b .sh -(to be described in the next section) -request. -For example, -the input: -.(b -\&.np -This is the first point. -\&.np -This is the second point. -Points are just regular paragraphs -which are given sequence numbers automatically -by the .np request. -\&.pp -This paragraph will reset numbering by .np. -\&.np -For example, -we have reverted to numbering from one now. -.)b -generates: -.np -This is the first point. -.np -This is the second point. -Points are just regular paragraphs -which are given sequence numbers automatically -by the .np request. -.pp -This paragraph will reset numbering by .np. -.np -For example, -we have reverted to numbering from one now. -.pp -The -.b .bu -request gives lists of this sort that are identified with -bullets rather than numbers. -The paragraphs are also crunched together. -For example, -the input: -.(b -\&.bu -\&One egg yolk -\&.bu -\&One tablespoon cream or top milk -\&.bu -\&Salt, cayenne, and lemon juice to taste -\&.bu -\&A generous two tablespoonfuls of butter -.)b -produces\**: -.(f -\**By the way, -if you put the first three ingredients in a a heavy, deep pan -and whisk the ingredients madly over a medium flame -(never taking your hand off the handle of the pot) -until the mixture reaches the consistency of custard -(just a minute or two), -then mix in the butter off-heat, -you will have a wonderful Hollandaise sauce. -.)f -.bu -One egg yolk -.bu -One tablespoon cream or top milk -.bu -Salt, cayenne, and lemon juice to taste -.bu -A generous two tablespoonfuls of butter -.sh 2 "Section Headings" -.pp -Section numbers -(such as the ones used in this document) -can be automatically generated -using the -.b .sh -request. -You must tell -.b .sh -the -.i depth -of the section number -and a section title. -The depth -specifies how many numbers -are to appear -(separated by decimal points) -in the section number. -For example, -the section number -.b 4.2.5 -has a depth of three. -.pp -Section numbers -are incremented -in a fairly intuitive fashion. -If you add a number -(increase the depth), -the new number starts out -at one. -If you subtract section numbers -(or keep the same number) -the final number is incremented. -For example, -the input: -.(b -\&.sh 1 "The Preprocessor" -\&.sh 2 "Basic Concepts" -\&.sh 2 "Control Inputs" -\&.sh 3 -\&.sh 3 -\&.sh 1 "Code Generation" -\&.sh 3 -.)b -produces as output the result: -.(b -.b -1. The Preprocessor -1.1. Basic Concepts -1.2. Control Inputs -1.2.1. -1.2.2. -2. Code Generation -2.1.1. -.)b -.pp -You can specify the section number to begin -by placing the section number after the section title, -using spaces instead of dots. -For example, -the request: -.(b -\&.sh 3 "Another section" 7 3 4 -.)b -will begin the section numbered -.b 7.3.4 ; -all subsequent -.b .sh -requests will number relative to this number. -.pp -There are more complex features -which will cause each section to be indented -proportionally to the depth of the section. -For example, if you enter: -.(b -\&.nr si \c -.i N -.)b -each section will be indented by an amount -.i N . -.i N -must have a scaling factor attached, -that is, it must be of the form -.i Nx , -where -.i x -is a character telling what units -.i N -is in. -Common values for -.i x -are -.b i -for inches, -.b c -for centimeters, -and -.b n -for -.i ens -(the width of a single character). -For example, -to indent each section -one-half inch, -type: -.(b -\&.nr si 0.5i -.)b -After this, -sections will be indented by -one-half inch -per level of depth in the section number. -For example, -this document was produced -using the request -.(b -\&.nr si 3n -.)b -at the beginning of the input file, -giving three spaces of indent -per section depth. -.pp -Section headers without automatically generated numbers -can be done using: -.(b -\&.uh "Title" -.)b -which will do a section heading, -but will put no number on the section. -.sh 2 "Parts of the Basic Paper" -.pp -There are some requests -which assist in setting up -papers. -The -.b .tp -request -initializes for a title page. -There are no headers or footers -on a title page, -and unlike other pages -you can space down -and leave blank space -at the top. -For example, -a typical title page might appear as: -.(b -\&.tp -\&.sp 2i -\&.(l C -THE GROWTH OF TOENAILS -IN UPPER PRIMATES -\&.sp -by -\&.sp -Frank N. Furter -\&.)l -\&.bp -.)b -.pp -The request -.b .th -sets up the environment -of the \*N processor -to do a thesis, -using the rules established at Berkeley. -It defines the correct headers and footers -(a page number in the upper right hand corner only), -sets the margins correctly, -and double spaces. -.pp -The -.b .+c \ \c -.i T -request can be used -to start chapters. -Each chapter is automatically numbered -from one, -and a heading is printed at the top of each chapter -with the chapter number -and the chapter name -.i T . -For example, -to begin a chapter called -.q Conclusions , -use the request: -.(b -\&.+c "CONCLUSIONS" -.)b -which will produce, -on a new page, -the lines -.(b C -CHAPTER 5 -CONCLUSIONS -.)b -with appropriate spacing for a thesis. -Also, the header is moved to the foot of the page -on the first page of a chapter. -Although the -.b .+c -request was not designed to work only with the -.b .th -request, -it is tuned for the format acceptable -for a PhD thesis -at Berkeley. -.pp -If the -title parameter -.i T -is omitted from the -.b .+c -request, -the result is a chapter with no heading. -This can also be used at the beginning -of a paper; -for example, -.b .+c -was used to generate page one -of this document. -.pp -Although -papers traditionally have the abstract, -table of contents, -and so forth at the front of the paper, -it is more convenient to format -and print them last -when using \*N. -This is so that index entries -can be collected and then printed -for the table of contents -(or whatever). -At the end of the paper, -issue the -.b ".++ P" -request, -which begins the preliminary part -of the paper. -After issuing this request, -the -.b .+c -request will begin a preliminary section -of the paper. -Most notably, -this prints the page number -restarted from one -in lower case Roman numbers. -.b .+c -may be used repeatedly -to begin different parts of the -front material -for example, -the abstract, -the table of contents, -acknowledgments, -list of illustrations, -etc. -The request -.b ".++ B" -may also be used -to begin the bibliographic section -at the end of the paper. -For example, -the paper might appear -as outlined in figure 2. -(In this figure, -comments begin with the sequence -.b \e" .) -.(z -.hl -.if t .in 0.5i -.if t .ta 2i -.if n .ta 3i -\&.th \e" set for thesis mode -\&.fo \(aa\(aaDRAFT\(aa\(aa \e" define footer for each page -\&.tp \e" begin title page -\&.(l C \e" center a large block -THE GROWTH OF TOENAILS -IN UPPER PRIMATES -\&.sp -by -\&.sp -Frank Furter -\&.)l \e" end centered part -\&.+c INTRODUCTION \e" begin chapter named "INTRODUCTION" -\&.(x t \e" make an entry into index `t' -Introduction -\&.)x \e" end of index entry -text of chapter one -\&.+c "NEXT CHAPTER" \e" begin another chapter -\&.(x t \e" enter into index `t' again -Next Chapter -\&.)x -text of chapter two -\&.+c CONCLUSIONS -\&.(x t -Conclusions -\&.)x -text of chapter three -\&.++ B \e" begin bibliographic information -\&.+c BIBLIOGRAPHY \e" begin another `chapter' -\&.(x t -Bibliography -\&.)x -text of bibliography -\&.++ P \e" begin preliminary material -\&.+c "TABLE OF CONTENTS" -\&.xp t \e" print index `t' collected above -\&.+c PREFACE \e" begin another preliminary section -text of preface -.sp 2 -.in 0 -.ce -Figure 2. Outline of a Sample Paper -.hl -.)z -.sh 2 "Equations and Tables" -.pp -Two special \*U programs exist -to format special types of material. -.b Eqn -and -.b neqn -set equations -for the phototypesetter -and \*N respectively. -.b Tbl -arranges to print -extremely pretty tables -in a variety of formats. -This document will only describe -the embellishments -to the standard features; -consult the reference manuals -for those processors -for a description of their use. -.pp -The -.b eqn -and -.b neqn -programs are described fully -in the document -.ul -Typesetting Mathematics \- User's Guide -by Brian W. Kernighan -and Lorinda L. Cherry. -Equations are centered, -and are kept on one page. -They are introduced by the -.b .EQ -request and terminated by the -.b .EN -request. -.pp -The -.b .EQ -request may take an -equation number as an -optional argument, -which is printed vertically centered -on the right hand side -of the equation. -If the equation becomes too long -it should be split -between two lines. -To do this, type: -.(b -\&.EQ (eq 34) -text of equation 34 -\&.EN C -\&.EQ -continuation of equation 34 -\&.EN -.)b -The -.b C -on the -.b .EN -request -specifies that the equation -will be continued. -.pp -The -.b tbl -program produces tables. -It is fully described -(including numerous examples) -in the document -.ul -Tbl \- A Program to Format Tables -by M. E. Lesk. -Tables begin with the -.b .TS -request -and end with the -.b .TE -request. -Tables are normally kept on a single page. -If you have a table which is too big -to fit on a single page, -so that you know it will extend -to several pages, -begin the table with the request -.b ".TS\ H" -and put the request -.b .TH -after the part of the table -which you want -duplicated at the top of every page -that the table is printed on. -For example, a table definition -for a long table might look like: -.ds TA \|\h'.4n'\v'-.2n'\s-4\zT\s0\v'.2n'\h'-.4n'\(ci\| -.if n .ds TA \ \o'-T'\ \" -.(b -\&.TS H -c s s -n n n. -THE TABLE TITLE -\&.TH -text of the table -\&.TE -.)b -.pp -.sh 2 "Two Column Output" -.pp -You can get two column output -automatically -by using the request -.b .2c . -This causes everything after it -to be output in two-column form. -The request -.b .bc -will start a new column; -it differs from -.b .bp -in that -.b .bp -may leave a totally blank column -when it starts a new page. -To revert to single column output, -use -.b .1c . -.sh 2 "Defining Macros" -.pp -A -.i macro -is a collection of requests and text -which may be used -by stating a simple request. -Macros begin with the line -.b ".de" \ \c -.i xx -(where -.i xx -is the name of the macro to be defined) -and end with the line consisting of two dots. -After defining the macro, -stating the line -.b . \c -.i xx -is the same as stating all the other lines. -For example, -to define a macro -that spaces 3 lines -and then centers the next input line, -enter: -.(b -\&.de SS -\&.sp 3 -\&.ce -\&.. -.)b -and use it by typing: -.(b -\&.SS -\&Title Line -(beginning of text) -.)b -.pp -Macro names may be one or two characters. -In order to avoid conflicts -with names in \-me, -always use upper case letters as names. -The only names to avoid are -.b TS , -.b TH , -.b TE , -.b EQ , -and -.b EN . -.sh 2 "Annotations Inside Keeps" -.pp -Sometimes you may want to put -a footnote -or index entry inside a keep. -For example, -if you want to maintain a -.q "list of figures" -you will want to do something like: -.(b -\&.(z -\&.(c -text of figure -\&.)c -\&.ce -Figure 5. -\&.(x f -Figure 5 -\&.)x -\&.)z -.)b -which you may hope -will give you a figure -with a label -and an entry in the index -.b f -(presumably a list of figures index). -Unfortunately, -the -index entry -is read and interpreted -when the keep is read, -not when it is printed, -so the page number in the index is likely to be wrong. -The solution is to use the magic string -.b \e! -at the beginning of all the lines dealing with the index. -In other words, -you should use: -.(b -\&.(z -\&.(c -Text of figure -\&.)c -\&.ce -Figure 5. -\e!.(x f -\e!Figure 5 -\e!.)x -\&.)z -.)b -which will defer the processing of the index -until the figure is output. -This will guarantee -that the page number in the index -is correct. -The same comments apply -to -blocks -(with -.b .(b -and -.b .)b ) -as well. -.sh 1 "\*T and the Photosetter" -.pp -With a little care, -you can prepare -documents that -will print nicely -on either a regular terminal -or when phototypeset -using the \*T formatting program. -.sh 2 "Fonts" -.pp -A -.i font -is a style of type. -There are three fonts -that are available simultaneously, -Times Roman, -Times Italic, -and Times Bold, -plus the special math font. -The normal font is Roman. -Text which would be underlined in \*N -with the -.b .ul -request -is set in italics -in \*T. -.pp -There are ways of switching between fonts. -The requests -.b .r , -.b .i , -and -.b .b -switch to Roman, -italic, -and bold fonts respectively. -You can set a single word -in some font -by typing (for example): -.(b -\&.i word -.)b -which will set -.i word -in italics -but does not affect the surrounding text. -In \*N, -italic and bold text -is underlined. -.pp -Notice that if you are setting more than one word -in whatever font, -you must surround that word with double quote marks -(`\|"\|') -so that it will appear to the \*N processor as a single word. -The quote marks will not appear in the formatted text. -If you do want a quote mark to appear, -you should quote the entire string -(even if a single word), -and use -.i two -quote marks where you want one to appear. -For example, -if you want to produce the text: -.(b -.i """Master Control\|""" -.)b -in italics, you must type: -.(b -\&.i """Master Control\e|""" -.)b -The -.b \e| -produces a very narrow space -so that the -.q l -does not overlap the quote sign in \*T, -like this: -.(b -.i """Master Control""" -.)b -.pp -There are also several -.q pseudo-fonts -available. -The input: -.(b -\&.(b -\&.u underlined -\&.bi "bold italics" -\&.bx "words in a box" -\&.)b -.)b -generates -.(b -.u underlined -.bi "bold italics" -.bx "words in a box" -.)b -In \*N these all just underline -the text. -Notice that pseudo font requests -set only the single parameter in the pseudo font; -ordinary font requests will begin setting all text -in the special font -if you do not provide a parameter. -No more than one word -should appear -with these three font requests -in the middle of lines. -This is because -of the way \*T justifies text. -For example, -if you were to issue the requests: -.(b -\&.bi "some bold italics" -and -\&.bx "words in a box" -.)b -in the middle of a line -\*T would produce -.bi "some bold italics" -and -.bx "words in a box" ,\c -.if t \p -.if n \& \" -.if t which I think you will agree does not look good. -.if n which would look really lousy in \*T. -.pp -The second parameter -of all font requests -is set in the original font. -For example, -the font request: -.(b -\&.b bold face -.)b -generates -.q bold -in bold font, -but sets -.q face -in the font of the surrounding text, -resulting in: -.(b -.b bold face. -.)b -To set the two words -.b bold -and -.b face -both in -.b "bold face" , -type: -.(b -\&.b "bold face" -.)b -.pp -You can mix fonts in a word by using the -special sequence -.b \ec -at the end of a line -to indicate -.q "continue text processing" ; -this allows input lines -to be joined together -without a space between them. -For example, the input: -.(b -\&.u under \ec -\&.i italics -.)b -generates -.u under \c -.i italics , -but if we had typed: -.(b -\&.u under -\&.i italics -.)b -the result would have been -.u under -.i italics -as two words. -.sh 2 "Point Sizes" -.pp -The phototypesetter -supports different sizes of type, -measured in points. -The default point size -is 10 points -for most text, -8 points for footnotes. -To change the pointsize, -type: -.(b -\&.sz \c -.i +N -.)b -where -.i N -is the size wanted in points. -The -.i "vertical spacing" -(distance between the bottom of most letters -(the -.i baseline ) -between adjacent lines) -is set to be proportional -to the type size. -.pp -These pointsize changes are -.i temporary !!! -For example, -to reset the pointsize of basic text to twelve point, use: -.(b -\&.nr pp 12 -\&.nr sp 12 -\&.nr tp 12 -.)b -to reset the default pointsize of -paragraphs, -section headers, -and titles respectively. -If you only want to set the names of sections in a larger pointsize, -use: -.(b -\&.nr sp 11 -.)b -alone \*- this sets section titles -(e.g., -.b "Point Sizes" -above) -in a larger font than the default. -.pp -A single word or phrase can be set in a smaller pointsize -than the surrounding text -using the -.b .sm -request. -This is especially convenient for words that are all capitals, -due to the optical illusion that makes them look even larger -than they actually are. -For example: -.(b -\&.sm UNIX -.)b -prints as -.sm UNIX -rather than -UNIX. -.pp -Warning: -changing point sizes -on the phototypesetter -is a slow mechanical operation. -On laser printers it may require loading new fonts. -Size changes -should be considered carefully. -.sh 2 "Quotes" -.pp -It is conventional when using -the typesetter to -use pairs of grave and acute accents -to generate double quotes, -rather than the -double quote character -(`\|"\|'). -This is because it looks better -to use grave and acute accents; -for example, compare -"quote" to -``quote''. -.pp -In order to make quotes compatible -between the typesetter and terminals, -you may use the sequences -.b \e*(lq -and -.b \e*(rq -to stand for the left and right quote -respectively. -These both appear as -.b """" -on most terminals, -but are typeset as -.b `` -and -.b '' -respectively. -For example, -use: -.(b -\e*(lqSome things aren\(aat true -even if they did happen.\e*(rq -.)b -to generate the result: -.(b -.q "Some things aren't true even if they did happen." -.)b -As a shorthand, -the special font request: -.(b -\&.q "quoted text" -.)b -will generate -.q "quoted text" . -Notice that you must surround -the material to be quoted -with double quote marks -if it is more than one word. -.sh 0 -.sp 1i -.b Acknowledgments -.pp -I would like to thank -Bob Epstein, -Bill Joy, -and Larry Rowe -for having the courage -to use the \-me macros -to produce non-trivial papers -during the development stages; -Ricki Blau, -Pamela Humphrey, -and Jim Joyce -for their help with the documentation phase; -peter kessler -for numerous complaints years after I was -.q done -with this project, -most accompanied by fixes -(hence forcing me to fix several small bugs); -and the plethora of people who have contributed ideas -and have given support for the project. -.sp 1i -This document was -.if n \*N'ed -.if t \*T'ed -on \*(td -and applies to version -\*(MO -of the \-me macros. diff --git a/share/doc/usd/20.meref/Makefile b/share/doc/usd/20.meref/Makefile deleted file mode 100644 index c2eed62af38..00000000000 --- a/share/doc/usd/20.meref/Makefile +++ /dev/null @@ -1,11 +0,0 @@ -# $OpenBSD: Makefile,v 1.3 2004/02/01 14:22:46 jmc Exp $ - - -DIR= usd/20.meref -SRCS= ref.me -MACROS= -me - -paper.txt: ${SRCS} - ${ROFF} -Tascii ${SRCS} > ${.TARGET} - -.include <bsd.doc.mk> diff --git a/share/doc/usd/20.meref/ref.me b/share/doc/usd/20.meref/ref.me deleted file mode 100644 index 3b885a86ec0..00000000000 --- a/share/doc/usd/20.meref/ref.me +++ /dev/null @@ -1,2387 +0,0 @@ -.\" $OpenBSD: ref.me,v 1.5 2004/07/29 11:10:38 jmc Exp $ -.\" -.\" Copyright (c) 1986, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)ref.me 8.1 (Berkeley) 6/8/93 -.\" -.if n \{\ -.po 5n -.\} -.UC 7 -.ll 6.5i -.lt 6.5i -.pn 0 -.ds MO 2.27\" \" mod number -.de TL \" *** title line -.lp -.di XX -.. -.de DE \" *** description -.ie \\n(.g \?\\\\h'|\\n(DIu'\\\\c\? -.el \\\\h'|\\n(DIu'\\\\c -.br -.di -.in +\\n(DIu -.ti 0 -.cu 1000 -.XX -.rm XX -.cu 0 -.. -.ds N \s-1NROFF\s0 -.ds T \s-1TROFF\s0 -.nr DI 1.5i -\".he '\-ME REFERENCE MANUAL''%' -.de NR -.b "\en\\$1" "\\$2" -.. -.de ST -.b "\e*\\$1" "\\$2" -.. -.sc -.eh 'USD:20-%''\-me Reference Manual' -.oh '\-me Reference Manual''USD:20-%' -.+c -.ce 20 -.sz 14 -.b "\-ME REFERENCE MANUAL" -.sz -.sp -.i "Release \*(MO" -.sp 2 -.ul -Eric P. Allman* -.(f -*Author's current address: -Computer Science Division, EECS, -University of California, -Berkeley, California 94720. -.)f -.sp -Project INGRES -Electronics Research Laboratory -University of California, Berkeley -Berkeley, California 94720 -.ce 0 -.sp 4 -.pp -This document describes -in extremely terse form -the features -of the -.b \-me -macro package -for version seven \*N/\*T\*(dg. -.(f -\(dg\*N and \*T may be trademarks of AT&T Bell Laboratories. -.)f -Some familiarity is assumed -with -those programs. -Specifically, -the reader should understand -breaks, -fonts, -pointsizes, -the use and definition of number registers -and strings, -how to define macros, -and scaling factors for ens, points, -.b v 's -(vertical line spaces), -etc. -.pp -For a more casual introduction -to text processing -using \*N, -refer to the document -/usr/share/doc/usd/19.memacros: -.i "Writing Papers with \*N using \-me" . -.pp -There are a number of macro parameters -that may be adjusted. -Fonts may be set to a font number only. -Font 8 means bold font in \*T; -in \*N font 8 -is underlined -unless the -.b \-rb3 -flag is specified to use -.q "true bold" -font -(most versions of \*N do not interpret bold font nicely). -Font 0 is no font change; -the font of the surrounding text -is used instead. -Notice that fonts 0 and 8 are -.q pseudo-fonts ; -that is, -they are simulated by the macros. -This means that although it is legal to set a font register -to zero or eight, -it is not legal to use the escape character form, -such as: -.(b -\ef8 -.)b -.pp -All distances -are in basic units, -so it is nearly always necessary -to use a scaling factor. -For example, -the request -to set the paragraph indent -to eight one-en spaces is: -.(b -\&.nr pi 8n -.)b -and not -.(b -\&.nr pi 8 -.)b -which would set the paragraph indent to eight basic units, -or about 0.02 inch. -Default parameter values are given in brackets -in the remainder of this document. -.pp -Registers and strings -of the form -.b $ \c -.i x -may be used in expressions -but should not be changed. -Macros of the form -.b $ \c -.i x -perform some function -(as described) -and may be redefined -to change this function. -This may be a sensitive operation; -look at the body of the original macro -before changing it. -.pp -All names in \-me -follow a rigid naming convention. -The user may define number registers, -strings, -and macros, -provided that s/he -uses single character upper case names -or double character names -consisting of letters and digits, -with at least one upper case letter. -In no case should special characters -be used in user-defined names. -.pp -On daisy wheel type printers -in twelve pitch, -the -.b \-rx1 -flag can be stated to make lines default to -one eighth inch -(the normal spacing for a newline in twelve-pitch). -This is normally too small for easy readability, -so the default is to space one sixth inch. -.pp -The -.b \-rv2 -flag will indicates that this -.i is -being output on a C/A/T -phototypesetter; -this changes the page offset -and inserts cut marks. -.pp -This documentation was -.if n \*N'ed -.if t \*T'ed -on \*(td -and applies to version -\*(MO -of the \-me macros. -.sh 1 "Paragraphing" -.pp -These macros are used -to begin paragraphs. -The standard paragraph macro -is -.b .pp ; -the others are all variants -to be used for special purposes. -.pp -The first call to one of the paragraphing macros -defined in this section -or the -.b .sh -macro -(defined in the next session) -.i initializes -the macro processor. -After initialization -it is not possible to use any of the following requests: -.b .sc , -.b .lo , -.b .th , -or -.b .ac . -Also, -the effects of changing parameters -which will have a global effect -on the format of the page -(notably page length and header and footer margins) -are not well defined -and should be avoided. -.TL -.b .lp -.DE -Begin left-justified paragraph. -Centering and underlining -are turned off if they were on, -the font is set to -.NR (pf -[1] -the type size -is set to -.NR (pp -[10p], -and a -.NR (ps -space is inserted -before the paragraph -[0.35v in \*T, 1v or 0.5v in \*N -depending on device resolution]. -The indent is reset -to -.NR ($i -[0] -plus -.NR (po -[0] -unless the paragraph -is inside a display. -(see -.b .ba ). -At least -the first two lines -of the paragraph -are kept together -on a page. -.TL -.b .pp -.DE -Like -.b .lp , -except that it puts -.NR (pi -[5n] -units of indent. -This is the standard paragraph macro. -.TL -.b .ip -.i T -.i I -.DE -Indented paragraph -with hanging tag. -The body of the following paragraph -is indented -.i I -spaces -(or -.NR (ii -[5n] -spaces -if -.i I -is not specified) -more than a non-indented paragraph -(such as with -.b .pp ) -is. -The title -.i T -is exdented (opposite of indented). -The result is a paragraph -with an even left edge -and -.i T -printed in the margin. -Any spaces in -.i T -must be unpaddable. -If -.i T -will not fit in the space provided, -.b .ip -will start a new line. -.TL -.b .np -.DE -A variant of .ip which numbers paragraphs. -Numbering is reset -after a -.b .lp , -.b .pp , -or -.b .sh . -The current paragraph number -is in -.NR ($p . -.TL -.b .bu -.DE -Like -.b .np -except that paragraphs are marked with bullets (\(bu). -Leading space is eliminated to create compact lists. -.sh 1 "Section Headings" -.pp -Numbered sections -are similar to paragraphs -except that a -section number -is automatically -generated for each one. -The section numbers are of the form -.b 1.2.3 . -The -.i depth -of the section -is the count of numbers -(separated by decimal points) -in the section number. -.pp -Unnumbered section headings are similar, -except that no number is attached -to the heading. -.TL -.b .sh -.i +N -.i T -.i "a b c d e f" -.DE -Begin numbered section -of depth -.i N . -If -.i N -is missing, -the current depth -(maintained in -the number register -.NR ($0 ) -is used. -The values of -the individual parts of the section number -are maintained in -.NR ($1 -through -.NR ($6 . -There is a -.NR (ss -[1v] -space before the section. -.i T -is printed -as a section title -in font -.NR (sf -[8] -and size -.NR (sp -[10p]. -The -.q name -of the section may be accessed via -.ST ($n . -If -.NR (si -is non-zero, -the base indent -is set to -.NR (si -times the section depth, -and the section title -is exdented. -(See -.b .ba .) -Also, -an additional indent of -.NR (so -[0] -is added to the section title -(but not to the body of the section). -The font is then set -to the paragraph font, -so that more information may occur -on the line -with the section number -and title. -.b .sh -insures that there is enough room -to print the section head -plus the beginning of a paragraph -(about 3 lines total). -If -.i a -through -.i f -are specified, -the section number is set to that number -rather than incremented automatically. -If any of -.i a -through -.i f -are a hyphen, -that number is not reset. -If -.i T -is a single underscore -(\c -.q _ ), -then the section depth and numbering is reset, -but the base indent is not reset -and nothing is printed out. -This is useful to automatically -coordinate section numbers with -chapter numbers. -.TL -.b .sx -.i +N -.DE -Go to section depth -.i N -[\c -.b \-1 ], -but do not print the number -and title, -and do not increment the section number -at level -.i N . -This has the effect -of starting a new paragraph -at level -.i N . -.TL -.b .uh -.i T -.DE -Unnumbered section heading. -The title -.i T -is printed -with the same rules for spacing, -font, etc., -as for -.b .sh . -.TL -.b .$p -.i T -.i B -.i N -.DE -Print section heading. -May be redefined -to get fancier headings. -.i T -is the title passed on the -.b .sh -or -.b .uh -line; -.i B -is the section number for this section, -and -.i N -is the depth of this section. -These parameters are not always present; -in particular, -.b .sh -passes all three, -.b .uh -passes only the first, -and -.b .sx -passes three, -but the first two -are null strings. -Care should be taken if this macro -is redefined; -it is quite complex and subtle. -.TL -.b .$0 -.i T -.i B -.i N -.DE -This macro is called automatically -after every call to -.b .$p . -It is normally undefined, -but may be used -to automatically put -every section title -into the table of contents -or for some similar function. -.i T -is the section title -for the section title which was just printed, -.i B -is the section number, -and -.i N -is the section depth. -.TL -.b .$1 -\- -.b .$6 -.DE -Traps called just before printing that depth section. -May be defined to -(for example) -give variable spacing -before sections. -These macros are called from -.b .$p , -so if you redefine that macro -you may lose this feature. -.sh 1 "Headers and Footers" -.ds TP \fI\(aal\|\(aam\^\(aar\^\(aa\fP -.pp -Headers and footers -are put at the top and bottom -of every page -automatically. -They are set in font -.NR (tf -[3] -and size -.NR (tp -[10p]. -Each of the definitions -apply as of the -.i next -page. -Three-part titles -must be quoted -if there are two blanks adjacent -anywhere in the title -or more than eight blanks total. -.pp -The spacing -of headers and footers -are controlled by three number registers. -.NR (hm -[4v] -is the distance from the top of the page -to the top of the header, -.NR (fm -[3v] -is the distance from the bottom of the page -to the bottom of the footer, -.NR (tm -[7v] -is the distance from the top of the page -to the top of the text, -and -.NR (bm -[6v] -is the distance from the bottom of the page -to the bottom of the text -(nominal). -The macros -.b .m1 , -.b .m2 , -.b .m3 , -and -.b .m4 -are also supplied for compatibility -with -\s-1ROFF\s0 documents. -.TL -.b .he -\*(TP -.DE -Define three-part header, -to be printed on the top -of every page. -.TL -.b .fo -\*(TP -.DE -Define footer, -to be printed at the bottom -of every page. -.TL -.b .eh -\*(TP -.DE -Define header, -to be printed at the top of every -even-numbered page. -.TL -.b .oh -\*(TP -.DE -Define header, -to be printed at the top of every -odd-numbered page. -.TL -.b .ef -\*(TP -.DE -Define footer, -to be printed at the bottom -of every even-numbered page. -.TL -.b .of -\*(TP -.DE -Define footer, -to be printed at the bottom -of every odd-numbered page. -.TL -.b .hx -.DE -Suppress headers and footers -on the next page. -.TL -.b .m1 -.i +N -.DE -Set the space between the top of the page -and the header -[4v]. -.TL -.b .m2 -.i +N -.DE -Set the space between the header -and the first line of text -[2v]. -.TL -.b .m3 -.i +N -.DE -Set the space -between the bottom of the text -and the footer -[2v]. -.TL -.b .m4 -.i +N -.DE -Set the space -between the footer -and the bottom of the page -[4v]. -.TL -.b .ep -.DE -End this page, -but do not begin the next page. -Useful for forcing out footnotes, -but other than -that hardly every used. -Must be followed by a -.b .bp -or the end of input. -.TL -.b .$h -.DE -Called at every page -to print the header. -May be redefined -to provide fancy -(e.g., -multi-line) -headers, -but doing so -loses the function of the -.b .he , -.b .fo , -.b .eh , -.b .oh , -.b .ef , -and -.b .of -requests, -as well as the chapter-style title feature -of -.b .+c . -.TL -.b .$f -.DE -Print footer; -same comments apply -as in -.b .$h . -.TL -.b .$H -.DE -A normally undefined macro -which is called -at the top of each page -(after putting out -the header, -initial saved floating keeps, -etc.); -in other words, -this macro is called immediately before -printing text -on a page. -It can be used for column headings -and the like. -.sh 1 "Displays" -.pp -All displays except centered blocks -and block quotes -are preceded and followed -by an extra -.NR (bs -[same as -.NR (ps ] -space. -Quote spacing is stored in a separate register; -centered blocks have no default initial or trailing space. -The vertical spacing of all displays except quotes -and centered blocks -is stored in register -.NR ($R -instead of -.NR ($r . -.TL -.b .(l -.i m -.i f -.DE -Begin list. -Lists are single spaced, -unfilled text. -If -.i f -is -.b F , -the list will be filled. -If -.i m -[\c -.b I ] -is -.b I -the list is indented by -.NR (bi -[4m]; -if -.b M -the list is indented to the left margin; -if -.b L -the list is left justified with respect to the text -(different from -.b M -only if the base indent -(stored in -.NR ($i -and set with -.b .ba ) -is not zero); -and if -.b C -the list is centered on a line-by-line basis. -The list is set in font -.NR (df -[0]. -Must be matched by a -.b .)l . -This macro is almost like -.b .(b -except that no attempt is made -to keep the display on one page. -.TL -.b .)l -.DE -End list. -.TL -.b .(q -.DE -Begin major quote. -These are single spaced, -filled, -moved in from the text -on both sides -by -.NR (qi -[4n], -preceded and followed -by -.NR (qs -[same as -.NR (bs ] -space, -and are set in point size -.NR (qp -[one point smaller than surrounding text]. -.TL -.b .)q -.DE -End major quote. -.TL -.b .(b -.i m -.i f -.DE -Begin block. -Blocks are a form of -.i keep , -where the text of a keep -is kept together on one page -if possible -(keeps are useful -for tables and figures -which should not be broken -over a page). -If the block will not fit -on the current page -a new page is begun, -.i unless -that would leave more than -.NR (bt -[0] -whitespace -at the bottom of the text. -If -.NR (bt -is zero, the threshold feature -is turned off. -Blocks are not filled -unless -.i f -is -.b F , -when they are filled. -The block will be left-justified -if -.i m -is -.b L , -indented by -.NR (bi -[4m] -if -.i m -is -.b I -or absent, -centered -(line-for-line) -if -.i m -is -.b C , -and left justified to the margin -(not to the base indent) -if -.i m -is -.b M . -The block is set in font -.NR (df -[0]. -.TL -.b .)b -.DE -End block. -.TL -.b .(z -.i m -.i f -.DE -Begin floating keep. -Like -.b .(b -except that the keep is -.i floated -to the bottom of the page -or the top of the next page. -Therefore, -its position relative to the text changes. -The floating keep is preceded and followed -by -.NR (zs -[1v] -space. -Also, -it defaults to mode -.b M . -.TL -.b .)z -.DE -End floating keep. -.TL -.b .(c -.DE -Begin centered block. -The next keep -is centered as a block, -rather than on a line-by-line basis -as with -.b ".(b C" . -This call may be nested -inside keeps. -.TL -.b .)c -.DE -End centered block. -.sh 1 Annotations -.TL -.b .(d -.DE -Begin delayed text. -Everything in the next keep -is saved for output -later with -.b .pd , -in a manner -similar to footnotes. -.TL -.b .)d -.i n -.DE -End delayed text. -The delayed text number register -.NR ($d -and the associated string -.ST # -are incremented if -.ST # -has been referenced. -.TL -.b .pd -.DE -Print delayed text. -Everything diverted via -.b .(d -is printed and truncated. -This might be used -at the end of each chapter. -.TL -.b .(f -.DE -Begin footnote. -The text of the footnote -is floated to the bottom -of the page -and set in font -.NR (ff -[1] -and size -.NR (fp -[8p]. -Each entry -is preceded by -.NR (fs -[0.2v] -space, -is indented -.NR (fi -[3n] -on the first line, -and is indented -.NR (fu -[0] -from the right margin. -Footnotes line up underneath -two column output. -If the text of the footnote -will not all fit on one page -it will be carried over -to the next page. -.TL -.b .)f -.i n -.DE -End footnote. -The number register -.NR ($f -and the associated string -.ST * -are incremented -if they have been referenced. -.TL -.b .$s -.DE -The macro to output the footnote separator. -This macro may be redefined -to give other size lines or other types -of separators. -Currently -it draws a 1.5i line. -.TL -.b .(x -.i x -.DE -Begin index entry. -Index entries are saved in the index -.i x -[\c -.b x ] -until called up with -.b .xp. -Each entry is preceded -by a -.NR (xs -[0.2v] -space. -Each entry is -.q undented -by -.NR (xu -[0.5i]; -this register tells how far the page number -extends into the right margin. -.TL -.b .)x -.i P -.i A -.DE -End index entry. -The index entry -is finished with a row of dots -with -.i A -[null] -right justified on the last line -(such as for an author's name), -followed by P -[\c -.NR % ]. -If -.i A -is specified, -.i P -must be specified; -.NR % -can be used to print the current page number. -If -.i P -is an underscore, -no page number -and no row of dots -are printed. -.TL -.b .xp -.i x -.DE -Print index -.i x -[\c -.b x ]. -The index is formatted in the font, size, and so forth -in effect at the time it is printed, -rather than at the time it is collected. -.sh 1 "Columned Output" -.TL -.b .2c -.i +S -.i N -.DE -Enter two-column mode. -The column separation is set to -.i +S -[4n, 0.5i in ACM mode] -(saved in -.NR ($s ). -The column width, -calculated to fill the single column line length -with both columns, -is stored in -.NR ($l . -The current column -is in -.NR ($c . -You can test register -.NR ($m -[1] -to see if you are in single column -or double column mode. -Actually, -the request enters -.i N -[2] -column output. -.TL -.b .1c -.DE -Revert to single-column mode. -.TL -.b .bc -.DE -Begin column. -This is like -.b .bp -except that it begins a new column -on a new page -only if necessary, -rather than forcing a whole new page -if there is another column left -on the current page. -.sh 1 "Fonts and Sizes" -.TL -.b .sz -.i +P -.DE -The pointsize is set to -.i P -[10p], -and the line spacing is set proportionally. -The ratio of line spacing to pointsize -is stored in -.NR ($r . -The ratio used internally -by displays and annotations -is stored in -.NR ($R -(although this is not used by -.b .sz ). -This size is -.i not -sticky beyond many macros: -in particular, -.NR (pp -(paragraph pointsize) -modifies the pointsize every time a new paragraph is begun -using the -.b \&.pp , -.b \&.lp , -.b \&.ip , -.b \&.np , -or -.b \&.bu -macros. -Also, -.NR (fp -(footnote pointsize), -.NR (qp -(quote pointsize), -.NR (sp -(section header pointsize), -and -.NR (tp -(title pointsize) -may modify the pointsize. -.TL -.b .r -.i W -.i X -.DE -Set -.i W -in roman font, -appending -.i X -in the previous font. -To append different font requests, -use -.i X -= -.b \ec . -If no parameters, -change to roman font. -.TL -.b .i -.i W -.i X -.DE -Set -.i W -in italics, -appending -.i X -in the previous font. -If no parameters, -change to italic font. -Underlines in \*N. -.TL -.b .b -.i W -.i X -.DE -Set -.i W -in bold font -and append -.i X -in the previous font. -If no parameters, -switch to bold font. -In \*N, -underlines. -.TL -.b .rb -.i W -.i X -.DE -Set -.i W -in bold font -and append -.i X -in the previous font. -If no parameters, -switch to bold font. -.b .rb -differs from -.b .b -in that -.b .rb -does not underline in \*N. -.TL -.b .u -.i W -.i X -.DE -Underline -.i W -and append -.i X . -This is a true underlining, -as opposed to the -.b .ul -request, -which changes to -.q "underline font" -(usually italics in \*T). -It won't work right -if -.i W -is spread or broken (including hyphenated). -In other words, -it is safe in nofill mode only. -.TL -.b .q -.i W -.i X -.DE -Quote -.i W -and append -.i X . -In \*N -this just surrounds -.i W -with double quote marks -(`\|\c -.b """" \|'), -but in \*T -uses directed quotes. -.TL -.b .bi -.i W -.i X -.DE -Set -.i W -in bold italics -and append -.i X . -Actually, -sets -.i W -in italic -and overstrikes once. -Underlines in \*N. -It won't work right -if -.i W -is spread or broken (including hyphenated). -In other words, -it is safe in nofill mode only. -.TL -.b .bx -.i W -.i X -.DE -Sets -.i W -in a box, -with -.i X -appended. -Underlines in \*N. -It won't work right -if -.i W -is spread or broken (including hyphenated). -In other words, -it is safe in nofill mode only. -.TL -.b sm -.i W -.i X -.DE -Sets -.i W -in a smaller pointsize, -with -.i X -appended. -.sh 1 "Roff Support" -.TL -.b .ix -.i +N -.DE -Indent, -no break. -Equivalent to -.b \(aain -.i N . -.TL -.b .bl -.i N -.DE -Leave -.i N -contiguous whitespace, -on the next page if not enough room -on this page. -Equivalent to a -.b .sp -.i N -inside a block. -.TL -.b .pa -.i +N -.DE -Equivalent to -.b .bp . -.TL -.b .ro -.DE -Set page number -in roman numerals. -Equivalent to -.b ".af % i" . -.TL -.b .ar -.DE -Set page number in Arabic. -Equivalent to -.b ".af % 1" . -.TL -.b .n1 -.DE -Number lines in margin from one -on each page. -.TL -.b .n2 -.i N -.DE -Number lines from -.i N , -stop if -.i N -= 0. -.TL -.b .sk -.DE -Leave the next output page blank, -except for headers and footers. -This is used to leave space -for a full-page diagram -which is produced externally -and pasted in later. -To get a partial-page paste-in display, -say -.b .sv \ \c -.i N , -where -.i N -is the amount of space -to leave; -this space will be output immediately -if there is room, -and will otherwise be output -at the top of the next page. -However, be warned: -if -.i N -is greater than the amount of available space -on an empty page, -no space will ever be output. -.sh 1 "Preprocessor Support" -.TL -.b .EQ -.i m -.i T -.DE -Begin equation. -The equation is centered -if -.i m -is -.b C -or omitted, -indented -.NR (bi -[4m] -if -.i m -is -.b I , -and left justified if -.i m -is -.b L . -.i T -is a title printed on the right margin -next to the equation. -See -.i "Typesetting Mathematics \- User's Guide" -by Brian W. Kernighan -and Lorinda L. Cherry. -.TL -.b .EN -.i c -.DE -End equation. -If -.i c -is -.b C -the equation must be continued -by immediately following -with another -.b .EQ , -the text of which -can be centered -along with this one. -Otherwise, -the equation is printed, -always on one page, -with -.NR (es -[0.5v in \*T, 1v in \*N] -space -above and below it. -.TL -.b .TS -.i h -.DE -Table start. -Tables are single spaced -and kept on one page -if possible. -If you have a large table -which will not fit on one page, -use -.i h -= -.b H -and follow the header part -(to be printed on every page of the table) -with a -.b .TH . -See -.i "Tbl \- A Program to Format Tables" -by M. E. Lesk. -.TL -.b .TH -.DE -With -.b ".TS H" , -ends the header portion of the table. -.TL -.b .TE -.DE -Table end. -Note that this table -does not float, -in fact, -it is not even guaranteed to stay on one page -if you use requests such as -.b .sp -intermixed with the text -of the table. -If you want it to float -(or if you use requests -inside the table), -surround the entire table -(including the -.b .TS -and -.b .TE -requests) -with the requests -.b .(z -and -.b .)z . -.TL -.b .PS -.i h -.i w -.DE -Begin -.i pic -picture. -.i H -is the height and -.i w -is the width, -both in basic units. -.i Ditroff -only. -.TL -.b .PE -.DE -End picture. -.TL -.b .IS -.DE -Begin -.i ideal -picture. -.TL -.b .IE -.DE -End -.i ideal -picture. -.TL -.b .IF -.DE -End -.i ideal -picture (alternate form). -.TL -.b GS -.DE -Begin -.i gremlin -picture. -.TL -.b GE -.DE -End -.i gremlin -picture. -.TL -.b GF -.DE -End -.i gremlin -picture (alternate form). -.sh 1 "Miscellaneous" -.TL -.b .re -.DE -Reset tabs. -Set to every 0.5i -in \*T -and every 0.8i in \*N. -.TL -.b .ba -.i +N -.DE -Set the base indent -to -.i +N -[0] -(saved in -.NR ($i ). -All paragraphs, -sections, -and displays -come out indented by this amount. -Titles and footnotes -are unaffected. -The -.b .sh -request performs a -.b .ba -request -if -.NR (si -[0] is not zero, -and sets the base indent to -.NR (si \c -.b * \c -.NR ($0 . -.TL -.b .xl -.i +N -.DE -Set the line length to -.i N -[6.0i]. -This differs -from -.b .ll -because it only affects the current environment. -.TL -.b .ll -.i +N -.DE -Set line length in all environments -to -.i N -[6.0i]. -This should not be used -after output has begun, -and particularly not in two-column output. -The current line length is stored in -.NR ($l . -.TL -.b .hl -.DE -Draws a horizontal line -the length of the page. -This is useful -inside floating keeps -to differentiate -between the text -and the figure. -.TL -.b .lh -.DE -Print a letterhead at the current position on the page. -The format of the letterhead must be defined -in the file -.b /usr/lib/me/letterhead.me -by your local systems staff. -Some environments may require -.i ditroff -for this macro -to function properly. -.TL -.b .lo -.DE -This macro loads another set of macros -(in -.b /usr/lib/me/local.me ) -which is intended to be a set of locally defined macros. -These macros -should all be of the form -.b .* \c -.i X , -where -.i X -is any letter -(upper or lower case) -or digit. -.sh 1 "Standard Papers" -.TL -.b .tp -.DE -Begin title page. -Spacing at the top of the page -can occur, -and headers and footers are suppressed. -Also, -the page number -is not incremented -for this page. -.TL -.b .th -.DE -Set thesis mode. -This defines the modes acceptable -for a doctoral dissertation -at Berkeley. -It double spaces, -defines the header -to be a single page number, -and changes the margins -to be 1.5 inch on the left -and one inch on the top. -.b .++ -and -.b .+c -should be used with it. -This macro must be stated -before -initialization, -that is, -before the first call of a paragraphing -macro -or -.b .sh . -.TL -.b .++ -.i m -.i H -.DE -This request defines the section of the paper -which we are entering. -The section type is defined by -.i m . -.b C -means that we are entering the chapter portion -of the paper, -.b A -means that we are entering the appendix portion -of the paper, -.b P -means that the material following -should be the preliminary portion -(abstract, table of contents, etc.) -portion of the paper, -.b AB -means that we are entering the abstract -(numbered independently from 1 -in Arabic numerals), -and -.b B -means that we are entering the bibliographic -portion at the end of the paper. -Also, the variants -.b RC -and -.b RA -are allowed, -which specify renumbering of pages -from one at the beginning of each -chapter or appendix, -respectively. -The -.i H -parameter defines the new header. -If there are any spaces in it, -the entire header must be quoted. -If you want the header to have the chapter number -in it, -use the string -.b "\e\e\e\en(ch" . -For example, to number appendixes -.b A.1 -etc., -type -.b ".++ RA \(aa\(aa\(aa\e\e\e\en(ch.%\(aa" . -Each section -(chapter, appendix, etc.) -should be preceded by the -.b .+c -request. -It should be mentioned -that it is easier when using -\*T to put the front material -at the end of the paper, -so that the table of contents -can be collected and put out; -this material can then be physically -moved to the beginning of the paper. -.TL -.b .+c -.i T -.DE -Begin chapter with title -.i T . -The chapter number -is maintained in -.NR (ch . -This register is incremented -every time -.b .+c -is called with a parameter. -The title and chapter number -are printed by -.b .$c . -The header is moved to the footer -on the first page -of each chapter. -If -.i T -is omitted, -.b .$c -is not called; -this is useful for doing your own -.q "title page" -at the beginning of papers -without a title page proper. -.b .$c -calls -.b .$C -as a hook so that chapter titles can be inserted -into a table of contents automatically. -The footnote numbering is reset to one. -.TL -.b .$c -.i T -.DE -Print chapter number -(from -.NR (ch ) -and -.i T . -This macro can be redefined to your liking. -It is defined by default -to be acceptable -for a PhD thesis -at Berkeley. -This macro calls -.b $C , -which can be defined to make index entries, -or whatever. -.TL -.b .$C -.i K -.i N -.i T -.DE -This macro is called by -.b .$c . -It is normally undefined, -but can be used to automatically insert -index entries, -or whatever. -.i K -is a keyword, -either -.q Chapter -or -.q Appendix -(depending on the -.b .++ -mode); -.i N -is the chapter or appendix number, -and -.i T -is the chapter or appendix title. -.TL -.b .ac -.i A -.i N -.DE -This macro -(short for -.b .acm ) -sets up the \*N environment -for camera-ready papers -as used by the ACM. -This format is 25% larger, -and has no headers or footers. -The author's name -.i A -is printed at the bottom of the page -(but off the part which will be printed -in the conference proceedings), -together with the current page number -and the total number of pages -.i N . -Additionally, -this macro loads the file -.b /usr/lib/me/acm.me , -which may later be augmented with other macros -useful for printing papers -for ACM conferences. -It should be noted -that this macro will not work correctly in version 7 \*T, -since it sets the page length -wider than the physical width -of the C/A/T phototypesetter roll. -.sh 1 "Predefined Strings" -.TL -.ST * -.DE -Footnote number, actually -.ST [ \c -.NR ($f \c -.ST ] . -This macro is incremented -after each call to -.b .)f . -.TL -.ST # -.DE -Delayed text number. -Actually -[\c -.NR ($d ]. -.TL -.ST [ -.DE -Superscript. -This string gives upward movement -and a change to a smaller point size -if possible, -otherwise it gives the left bracket character -(`\^\c -.b [ \^'). -Extra space is left above the line -to allow room for the superscript. -.TL -.ST ] -.DE -Unsuperscript. -Inverse to -.ST [ . -For example, -to produce a superscript -you might type -.b x \c -.ST [ \c -.b 2 \c -.ST ] , -which will produce -.ie \n(.g .b x\*[[]2\*] . -.el .b x\*[2\*] . -.TL -.ST < -.DE -Subscript. -Defaults to -`\^<\^' -if half-carriage motion not possible. -Extra space is left below the line -to allow for the subscript. -.TL -.ST > -.DE -Inverse to -.ST < . -.TL -.ST (dw -.DE -The day of the week, -as a word. -.TL -.ST (mo -.DE -The month, -as a word. -.TL -.ST (td -.DE -Today's date, -directly printable. -The date is of the form \*(td. -Other forms of the date can be used -by using -.NR (dy -(the day of the month; -for example, \n(dy), -.ST (mo -(as noted above) -or -.NR (mo -(the same, -but as an ordinal number; -for example, \*(mo is \n(mo), -and -.NR (yr -(the last two digits of the current year). -.TL -.ST (lq -.DE -Left quote marks. -Double quote in \*N. -.TL -.ST (rq -.DE -Right quote. -.TL -.ST \- -.DE -.ie \w'\(34'>0 \(34 -.el 3/4 -em dash in \*T; -two hyphens in \*N. -.sh 1 "Special Characters and Marks" -.pp -There are a number of special characters -and diacritical marks -(such as accents) -available through \-me. -To reference these characters, -you must call the macro -.b .sc -to define the characters before using them. -.TL -.b .sc -.DE -Define special characters and diacritical marks, as described -in the remainder of this section. -This macro must be stated -before initialization. -The special characters available -are listed below. -.in +4n -.ta 15 +5 +6 -.nf -Name Usage Example -Acute accent \e*\(aa a\e*\(aa a\*' -Grave accent \e*\(ga e\e*\(ga e\*` -Umlat \e*: u\e*: u\*: -Tilde \e*~ n\e*~ n\*~ -Caret \e*^ e\e*^ e\*^ -Cedilla \e*, c\e*, c\*, -Czech \e*v e\e*v e\*v -Circle \e*o A\e*o A\*o -There exists \e*(qe \*(qe -For all \e*(qa \*(qa -.fi -.sp 1i -.in 0 -.b Acknowledgments -.pp -I would like to thank -Bob Epstein, -Bill Joy, -and Larry Rowe -for having the courage -to use the \-me macros -to produce non-trivial papers -during the development stages; -Ricki Blau, -Pamela Humphrey, -and Jim Joyce -for their help with the documentation phase; -peter kessler -for numerous complaints, -most accompanied by fixes; -and the plethora of people who have contributed ideas -and have given support for the project. -.bp -.b Summary -.pp -This alphabetical list summarizes all macros, strings, and number registers -available in the \-me macros. -Selected -.i troff -commands, registers, and functions are included as well; -those listed can generally be used with impunity. -.pp -The columns are the name of the -command, macro, register, or string; -the type of the object, -and the description. -Types are -.b M -for macro or builtin command -(invoked with -.b \&. -or -.b \&\' -in the first input column), -.b S -for a string -(invoked with -.b \e* -or -.b \e*( ), -.b R -for a number register -(invoked with -.b \en -or -.b \en( ), -and -.b F -for a -.i troff -builtin function -(invoked by preceding it with a single backslash). -.pp -Lines marked with \(sc are -.i troff -internal codes. -Lines marked with \(dg or \(dd -may be defined by the user to get special functions; -\(dd indicates that these are defined by default -and changing them may have unexpected side effects. -Lines marked with \(de -are specific to -.i ditroff -(device-independent -.i troff ). -.de $H -.ev 1 -.ta \w'\e(space)\(sc\ 'u +\w'TYPE 'u -NAME TYPE DESCRIPTION -.ev -.. -.(l -.$H -\e(space) F\(sc unpaddable space -\e" F\(sc comment (to end of line) -\e*# S optional delayed text tag string -\e$\fI\&N\fP F\(sc interpolate argument \fI\&N\fP -\en($0 R section depth -\&.$0 M\(dg invoked after section title printed -\en($1 R first section number -\&.$1 M\(dg invoked before printing depth 1 section -\en($2 R second section number -\&.$2 M\(dg invoked before printing depth 2 section -\en($3 R third section number -\&.$3 M\(dg invoked before printing depth 3 section -\en($4 R fourth section number -\&.$4 M\(dg invoked before printing depth 4 section -\en($5 R fifth section number -\&.$5 M\(dg invoked before printing depth 5 section -\en($6 R sixth section number -\&.$6 M\(dg invoked before printing depth 6 section -\&.$C M\(dg called at beginning of chapter -\&.$H M\(dg text header -\en($R R\(dd relative vertical spacing in displays -\en($c R current column number -\&.$c M\(dd print chapter title -\en($d R delayed text number -\en($f R footnote number -\&.$f M\(dd print footer -\&.$h M\(dd print header -\en($i R paragraph base indent -\en($l R column width -\en($m R number of columns in effect -\e*($n S section name -\en($p R numbered paragraph number -\&.$p M\(dd print section heading (internal macro) -\en($r R\(dd relative vertical spacing in text -\en($s R column indent -\&.$s M\(dd footnote separator (from text) -\en% R\(sc current page number -\e& F\(sc zero width character, useful for hiding controls -\e(\fI\&xx\fP F\(sc interpolate special character \fI\&xx\fP -\&.(b M begin block -\&.(c M begin centered block -\&.(d M begin delayed text -\&.(f M begin footnote -\&.(l M begin list -\&.(q M begin quote -\&.(x M begin index entry -\&.(z M begin floating keep -\&.)b M end block -\&.)c M end centered block -\&.)d M end delayed text -\&.)f M end footnote -\&.)l M end list -\&.)q M end quote -\&.)x M end index entry -\&.)z M end floating keep -\e*\fI\&x\fP F\(sc interpolate string \fI\&x\fP -\e*(\fI\&xx\fP F\(sc interpolate string \fI\&xx\fP -\e** S optional footnote tag string -\&.++ M set paper section type -\&.+c M begin chapter -\e*, S cedilla -\e\- F\(sc minus sign -\e*\- S 3/4 em dash -\e0 F\(sc unpaddable digit-width space -\&.1c M revert to single column output -\&.2c M begin two column output -\e*: S umlat -\e*< S begin subscript -\e*> S end subscript -\&.EN M end equation -\&.EQ M begin equation -\eL\'\fI\&d\fP\' F\(sc vertical line drawing function for distance \fI\&d\fP -\&.GE M\(de end \fIgremlin\fP picture -\&.GF M\(de end \fIgremlin\fP picture (with flyback) -\&.GS M\(de start \fIgremlin\fP picture -\&.IE M\(de end \fIideal\fP picture -\&.IF M\(de end \fIideal\fP picture (with flyback) -\&.IS M\(de start \fIideal\fP picture -\&.PE M\(de end \fIpic\fP picture -\&.PF M\(de end \fIpic\fP picture (with flyback) -\&.PS M\(de start \fIpic\fP picture -\&.TE M end table -\&.TH M end header of table -\&.TS M begin table -\e*[ S begin superscript -\en(\&.$ R\(sc number of arguments to macro -\en(\&.i R\(sc current indent -\en(\&.l R\(sc current line length -\en(\&.s R\(sc current point size -\e*(\&\' S acute accent -\e*(\&\` S grave accent -\e(\' F\(sc acute accent -\e(\` F\(sc grave accent -\e*] S end superscript -\e^ F\(sc 1/12 em narrow space -\e*^ S caret -\&.ac M ACM mode -\&.ad M\(sc set text adjustment -\&.af M\(sc assign format to register -\&.am M\(sc append to macro -\&.ar M set page numbers in Arabic -\&.as M\(sc append to string -\&.b M bold font -\&.ba M set base indent -\&.bc M begin new column -\&.bi M bold italic -\en(bi R display (block) indent -\&.bl M blank lines (even at top of page) -\en(bm R bottom title margin -\&.bp M\(sc begin page -\&.br M\(sc break (start new line) -\en(bs R display (block) pre/post spacing -\en(bt R block keep threshold -\&.bx M boxed -\ec F\(sc continue input -\&.ce M\(sc center lines -\en(ch R current chapter number -\&.de M\(sc define macro -\en(df R display font -\&.ds M\(sc define string -\en(dw R\(sc current day of week -\e*(dw S current day of week -\en(dy R\(sc day of month -\ee F\(sc printable version of \e -\&.ef M set footer (even numbered pages only) -\&.eh M set header (even numbered pages only) -\&.el M\(sc else part of conditional -\&.ep M end page -\en(es R equation pre/post space -\ef\fI\&f\fP F\(sc inline font change to font \fI\&f\fP -\ef(\fI\&ff\fP F\(sc inline font change to font \fI\&ff\fP -\&.fc M\(sc set field characters -\en(ff R footnote font -\&.fi M\(sc fill output lines -\en(fi R footnote indent (first line only) -\en(fm R footer margin -\&.fo M set footer -\en(fp R footnote pointsize -\en(fs R footnote prespace -\en(fu R footnote undent (from right margin) -\eh\'\fI\&d\fP\' F\(sc local horizontal motion for distance \fI\&d\fP -\&.hc M\(sc set hyphenation character -\&.he M set header -\&.hl M draw horizontal line -\en(hm R header margin -\&.hx M suppress headers and footers on next page -\&.hy M\(sc set hyphenation mode -\&.i M italic font -\&.ie M\(sc conditional with else -\&.if M\(sc conditional -\en(ii R indented paragraph indent -\&.in M\(sc indent (transient, use .ba for pervasive) -\&.ip M begin indented paragraph -\&.ix M indent, no break -\el\'\fI\&d\fP\' F\(sc horizontal line drawing function for distance \fI\&d\fP -\&.lc M\(sc set leader repetition character -\&.lh M\(de interpolate local letterhead -\&.ll M set line length -\&.lo M load local macros -\&.lp M begin left justified paragraph -\e*(lq S left quote marks -\&.ls M\(sc set multi-line spacing -\&.m1 M set space from top of page to header -\&.m2 M set space from header to text -\&.m3 M set space from text to footer -\&.m4 M set space from footer to bottom of page -\&.mc M\(sc insert margin character -\&.mk M\(sc mark vertical position -\en(mo R\(sc month of year -\e*(mo S current month -\en\fI\&x\fP F\(sc interpolate number register \fI\&x\fP -\en(\fI\&xx\fP F\(sc interpolate number register \fI\&xx\fP -\&.n1 M number lines in margin -\&.n2 M number lines in margin -\&.na M\(sc turn off text adjustment -\&.ne M\(sc need vertical space -\&.nf M\(sc don't fill output lines -\&.nh M\(sc turn off hyphenation -\&.np M begin numbered paragraph -\&.nr M\(sc set number register -\&.ns M\(sc no space mode -\e*o S circle (e.g., for Norse A\*o) -\&.of M set footer (odd numbered pages only) -\&.oh M set header (odd numbered pages only) -\&.pa M begin page -\&.pd M print delayed text -\en(pf R paragraph font -\en(pi R paragraph indent -\&.pl M\(sc set page length -\&.pn M\(sc set next page number -\&.po M\(sc page offset -\en(po R simulated page offset -\&.pp M begin paragraph -\en(pp R paragraph pointsize -\en(ps R paragraph prespace -\&.q M quoted -\e*(qa S for all -\e*(qe S there exists -\en(qi R quote indent (also shortens line) -\en(qp R quote pointsize -\en(qs R quote pre/post space -\&.r M roman font -\&.rb M real bold font -\&.re M reset tabs -\&.rm M\(sc remove macro or string -\&.rn M\(sc rename macro or string -\&.ro M set page numbers in roman -\e*(rq S right quote marks -\&.rr M\(sc remove register -\&.rs M\(sc restore spacing -\&.rt M\(sc return to vertical position -\es\fI\&S\fP F\(sc inline size change to size \fI\&S\fP -\&.sc M load special characters -\en(sf R section title font -\&.sh M begin numbered section -\en(si R relative base indent per section depth -\&.sk M skip next page -\&.sm M set argument in a smaller pointsize -\&.so M\(sc source input file -\en(so R additional section title offset -\&.sp M\(sc vertical space -\en(sp R section title pointsize -\en(ss R section prespace -\&.sx M change section depth -\&.sz M set pointsize and vertical spacing -\&.ta M\(sc set tab stops -\&.tc M\(sc set tab repetition character -\e*(td S today's date -\en(tf R title font -\&.th M set thesis mode -\&.ti M\(sc temporary indent (next line only) -\&.tl M\(sc three part title -\en(tm R top title margin -\&.tp M begin title page -\en(tp R title pointsize -\&.tr M\(sc translate -\&.u M underlined -\&.uh M unnumbered section -\&.ul M\(sc underline next line -\ev\'\fI\&d\fP\' F\(sc local vertical motion for distance \fI\&d\fP -\e*v S inverted `v' for czeck ``e\*v'' -\ew\'\fI\&S\fP\' F\(sc return width of string \fI\&S\fP -\&.xl M set line length (local) -\&.xp M print index -\en(xs R index entry prespace -\en(xu R index undent (from right margin) -\en(yr R\(sc year (last two digits only) -\en(zs R floating keep pre/post space -\e{ F\(sc begin conditional group -\e| F\(sc 1/6 em narrow space -\e} F\(sc end conditional group -\e*~ S tilde -.)l -.rm $H diff --git a/share/doc/usd/Makefile b/share/doc/usd/Makefile index af2b96afcb6..3c8febd9a61 100644 --- a/share/doc/usd/Makefile +++ b/share/doc/usd/Makefile @@ -1,21 +1,7 @@ -# $OpenBSD: Makefile,v 1.9 2010/01/04 17:50:39 deraadt Exp $ - -# Missing or not installed: -# 03.shell 08.mh 14.jove 21.troff 22.trofftut 23.eqn 24.eqnguide -# 25.tbl 26.refer 27.invert 28.bib 29.diction +# $OpenBSD: Makefile,v 1.10 2010/07/01 20:08:54 tedu Exp $ DOCDIR= /usr/share/doc/usd -FILES= 00.contents Makefile Title - -Title.ps: ${FILES} - groff Title > ${.TARGET} -Title.txt: ${FILES} - groff -Tascii Title > ${.TARGET} - -contents.ps: ${FILES} - groff -ms 00.contents > ${.TARGET} -contents.txt: ${FILES} - groff -Tascii -ms 00.contents > ${.TARGET} +FILES= Makefile beforeinstall: install -c -o ${DOCOWN} -g ${DOCGRP} -m ${DOCMODE} ${FILES} \ diff --git a/share/doc/usd/Title b/share/doc/usd/Title deleted file mode 100644 index 4dca1107aeb..00000000000 --- a/share/doc/usd/Title +++ /dev/null @@ -1,117 +0,0 @@ -.\" $OpenBSD: Title,v 1.5 2004/04/09 12:10:04 jmc Exp $ -.\" -.\" Copyright (c) 1986, 1993 The Regents of the University of California. -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)Title 8.2 (Berkeley) 4/19/94 -.\" -.if n \{\ -.po 5n -.ll 70n -.\} -.ps 18 -.vs 22 -.sp 2.75i -.ft B -.ce 2 -UNIX User's Supplementary Documents -(USD) -.ps 14 -.vs 16 -.sp |4i -.ce 2 -4.4 Berkeley Software Distribution -.sp |5.75i -.ft R -.pt 12 -.vs 16 -.ce -June, 1993 -.sp |8.2i -.ce 5 -Computer Systems Research Group -Computer Science Division -Department of Electrical Engineering and Computer Science -University of California -Berkeley, California 94720 -.bp -\& -.sp |1i -.hy 0 -.ps 10 -.vs 12p -Copyright 1979, 1980, 1983, 1986, 1993 -The Regents of the University of California. All rights reserved. -.sp 2 -Other than the specific documents listed below as copyrighted by AT&T, -redistribution and use of this manual in source and binary forms, -with or without modification, are permitted provided that the -following conditions are met: -.sp 0.5 -.in +0.2i -.ta 0.2i -.ti -0.2i -1) Redistributions of this manual must retain the copyright -notices on this page, this list of conditions and the following disclaimer. -.ti -0.2i -2) Software or documentation that incorporates part of this manual must -reproduce the copyright notices on this page, this list of conditions and -the following disclaimer in the documentation and/or other materials -provided with the distribution. -.ti -0.2i -3) Neither the name of the University nor the names of its contributors -may be used to endorse or promote products derived from this software -without specific prior written permission. -.in -0.2i -.sp -\fB\s-1THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -SUCH DAMAGE.\s+1\fP -.sp 2 -Documents USD:1, 2, 3, 5, 6, 9, 10, 15, 16, 17, 21, 22, 23, 24, 25, 26, 27, -and 29 are copyright 1979, AT&T Bell Laboratories, Incorporated. -Holders of \x'-1p'UNIX\v'-4p'\s-3TM\s0\v'4p'/32V, -System III, or System V software licenses are -permitted to copy these documents, or any portion of them, -as necessary for licensed use of the software, -provided this copyright notice and statement of permission -are included. -.sp 2 -Documents USD:8, 14, and 28 are part of the -user contributed software. -.sp 2 -The views and conclusions contained in this manual are those of the -authors and should not be interpreted as representing official policies, -either expressed or implied, of the Regents of the University of California. |