@device(PostScript)
@make(report)
@DefineFont(HeadingFont,
	P=<RawFont "NewCenturySchlbkBoldItalic">,
	B=<RawFont "NewCenturySchlbkBold">,
	I=<RawFont "NewCenturySchlbkBoldItalic">,
	R=<RawFont "NewCenturySchlbkRoman">)
@Counter(MajorPart,TitleEnv HD0,ContentsEnv tc0,Numbered [@I],
          IncrementedBy Use,Announced)
@Counter(Chapter,TitleEnv HD1,ContentsEnv tc1,Numbered [@1. ],
          IncrementedBy Use,Referenced [@1],Announced)
@Counter(Appendix,TitleEnv HD1,ContentsEnv tc1,Numbered [@I. ],
          IncrementedBy,Referenced [@I],Announced,Alias Chapter)
@Counter(UnNumbered,TitleEnv HD1,ContentsEnv tc1,Announced,Alias 
           Chapter)
@Counter(Section,Within Chapter,TitleEnv HD2,ContentsEnv tc2,
          Numbered [@#@:.@1 ],Referenced [@#@:.@1],IncrementedBy
          Use,Announced)
@Counter(AppendixSection,Within Appendix,TitleEnv HD2,
          ContentsEnv tc2,
          Numbered [@#@:.@1 ],Referenced [@#@:.@1],IncrementedBy 
          Use,Announced)
@Counter(SubSection,Within Section,TitleEnv HD3,ContentsEnv tc3,
          Numbered [@#@:.@1 ],IncrementedBy Use,
          Referenced [@#@:.@1])
@Counter(Paragraph,Within SubSection,TitleEnv HD4,ContentsEnv tc4,
          Numbered [@#@:.@1 ],Referenced [@#@:.@1],
          IncrementedBy Use)
@modify(CopyrightNotice, Fixed -1 inch, Flushright)
@Modify(Titlebox, Fixed 3.0 inches)
@Modify(hd1, below .2 inch, facecode B, size 20, spaces kept)
@Modify(hd2, below .2 inch, facecode B, size 16, spaces kept)
@Modify(hd3, below .2 inch, facecode B, size 12, spaces kept)
@Modify(Description, Leftmargin +19, Indent -19,below 1 line, above 1 line)
@Modify(Tc1, Above .5,  Facecode B)
@Modify(Tc2, Above .25, Below .25, Facecode R)
@Modify(Tc3,Facecode R)
@Modify(Tc4,Facecode R)
@Modify(Itemize,Above 1line,Below 1line)
@Modify(Insert,LeftMargin +2, RightMargin +2)
@modify(verbatim, facecode T,size 10)
@Style(Font NewCenturySchoolBook, size 11)
@Style(Spacing 1.1, indent 0)
@Style(leftmargin 1.0inch)
@Style(justification no)
@Style(BottomMargin 1.5inch)
@Style(ChangeBarLocation Right)
@Style(ChangeBars=off)
@pageheading(immediate)
@pagefooting(left="MIT Project Athena",
center="@value(page)",right="Revision C, Feb.1987")
@begin(Titlepage)
@Begin(Titlebox)
@begin(MajorHeading, size 36, Flushright)
More Scribe:  MIT Thesis
@end(Majorheading)
@blankspace(1 lines)
@begin(format, size 14, flushright)
Greg Greeley
User Consultant
MIT Project Athena
Revision C
February 25, 1987
@end(format)
@end(titlebox)
@CopyrightNotice(Massachusetts Institute of Technology)
@Set(page=-1)
@end(titlepage)


@blankspace(6.5 inches)
@Begin(format, size 10)

Revision C:  Greg Greeley and K. L. Lieben,
February 18, 1987.  Changed to PostScript.

Revision B:  Roger Zee,
January 31, 1986.  Substantial rewrite and emphasis.

Revision A:  Jon Rochlis, Student Information Processing Board.
April 27, 1985.  Original Version.  
Originally developed as a minicourse handout.
@End(format)

@Newpage

@Set(page=1)

@Section(Introduction)


The MIT thesis formatter for Scribe lets you produce your thesis without
worrying about formatting
details such as paging, footnotes and bibliographic references.
You can make changes and not have to retype the entire draft.

Doing a thesis involves advanced topics in Scribe as well as a passing
familiarity with Emacs and Unix facilities (see @p[Essential Emacs]
and @p[Essential Unix]).
If you don't know
Scribe well, the minicourses @i(Using Scribe on Project
Athena) and @i(How to Write Your Report Using Scribe), will make the
information in this handout more clear.  Also, 
@p[Essential Scribe, More Scribe:  Reports,] contain basic formatting
concepts. 
The @p[Scribe Pocket Reference] and the
@p{Scribe User Manual} contain more detailed information on the 
use of Scribe.

The MIT thesis format is an @i[unsupported] part of the
Athena system.  Unsupported means that if there are any bugs they 
may not be fixed.  It also means that you are
treading in unfamiliar waters. Consultants might not be
able to answer your questions. 

One final warning: @b(Print your thesis
early!) We cannot guarantee that our laser printers can handle the
heavy load at the end of the term. 


Despite the warnings, you should have little trouble using the thesis
format.  Our consultants know Scribe well, so don't be afraid to ask
them any questions you might have.


@section(Document Types)
For those of you who are familiar with Scribe, you probably know that
there several different styles of documents.
@begin(description)
@b(Text)@\Plain text; simple and without sections.

@b(Letter, Brochure)@\Special purpose.

@b(Article, Report)@\More complex: includes titlepage, table of
contents, sections, chapters, and references.

@begin(multiple)
@b(Thesis)@\Special form of report which knows thesis requirements
(e.g., frontpage, margins, etc.)

However, Scribe was originally developed at Carnegie-Mellon
University, and when you use the command @b[@@make(Thesis)] you will
make a CMU format thesis.  (Most MIT departments will not accept this.)
Because of the large demand for MIT thesis, several people at MIT
created the MIT thesis format for Scribe and installed it on the
Athena system.  Unfortunately,  the MIT thesis is not a ``built-in''
part of Scribe and there are some extra things you must do @b[before] you
can use the MIT thesis format.
@end(multiple)
@end(description)

@section(Using the MIT Thesis Document Type)

The first step is to create a special directory for your thesis. Move
into that directory and type the command:

@begin(example)
cp /usr/unsupported/thesis/* .  @i[(Yes, the period is necessary!)]
@end(example)
This copies a kit of template files into your directory.  These
files contain format definitions and examples for using the MIT
thesis. Then, you can use the command @i[@@Make(MITThesis)] to 
format your thesis.


@section(Organization of the .mss Files)

Because a thesis is generally too long to comfortably fit into a
single file, the MIT thesis format uses several files to create a
single document.  If you look at the files in your thesis directory,
you will find @i(thesis.mss) as well as @i(frontpage.mss),
@i(introduction.mss) and @i(chapter.mss).   A file called 
@i(thesis.mss) is the
``root'' file. It contains instructions telling Scribe which files are
part of the thesis, and when to process each one. The other @i(.mss) files will
contain all the text of your thesis.  The rest of the files in your
thesis directory define the format for the MIT thesis. Here is a brief
description of the files:

@begin(description)
@b[README]@\A description of each file in the directory and how the
MIT thesis works.

@b[Makefile]@\This file gives you the new command @b(make thesis),
which will create a better looking thesis than saying @i[scribe
thesis.mss].  @i(You don't need to worry about this file.)

@b[thesis.mss]@\This ``root'' file sets up the initial
parameters.  You do not place any text of the thesis here, just the
filenames that make up your thesis.  It ``pulls in '' the front page,
chapters, etc., via the @b[@@include] command.

@b[frontpage.mss]@\This file contains the template for producing the
title page and abstract page of your thesis.  Just substitute your
entries of the example entries. The big bonus is that you don't have
to know what a thesis titlepage looks like,  just fill in the blanks.

@b[dedication.mss]@\This file contains the template for producing the
dedication page of your thesis.  You can thank everyone who made your
thesis possible.

@b[introduction.mss]@\This is just a template for the beginning of
your thesis text.  It is really the first chapter in your thesis.

@b[chapter.mss]@\The template for a chapter in your thesis.  This
template uses the @b[@@part] command which allows you to split the
thesis into separate files while maintaining correct page numbers and
references.

@b[thesis.bib]@\Contains a sample bibliography file for the thesis.
You should have a similar bibliography file.

@b[mitthe.mak]@\This is a Scribe database file that defines the MIT
Thesis document. @i[You don't need to worry about this file.]

@b[mitfig.lib]@\Another Scribe database file for getting the correct
numbering in figures. @i[You don't need to worry about this file.]

@b[mitfor.lib]@\Yet another Scribe database file that contains forms
that are used in the MIT thesis format. @i[You don't need to worry
about this file.]

@end(description)

There are two new Scribe commands that you need to know to split your thesis
into several different files: @b[@@include] and @b[@@part].
@b[@@Include] is used 
inside the root file, @i(thesis.mss), to pull in the various chapters
and the front page.  @b[@@Part] is used inside the included files to identify
their root.  So, for example,  @i(thesis.mss) will contain a line 
@begin(example)
@@include(chapter2.mss)
@end (example)
While @i(chapter2.mss) will contain a line at the beginning of the
file that looks like
@begin(example)
@@Part[Chapter2, Root "thesis.mss"]
@end(example)
Note that the word ``Chapter2'' in the @b[@@part] command is NOT the name
of the chapter, is is only a codeword that Scribe will use internally
to identify the chapter.  The text @i(Root "thesis.mss"), on the other
hand,  tells Scribe
that @i(thesis.mss) is the root file for this chapter.

One advantage of splitting the thesis into several files is 
that Scribe will process the files separately.  So, for example,
if you spend a day changing chapter 2,  you don't need to rescribe the
entire thesis to see what the new chapter 2 will look like.  Just type:

@begin(example)
scribe chapter2.mss
@end(example)
and the @b[@@part] command will use the root file to get 
page numbers, and references correct.

Chapter 13 of the @p[Scribe User Manual] contains more information on how
to Scribe a document by parts.


@section(Sectioning Your Thesis)
Sections in a thesis work exactly the same as in a report.  They are
organized in a hierarchical style indicated by levels of numbers.
All you have to do is give the sectioning
command, and Scribe will automatically
produce the correct levels of numbers before the title of the section,
and add that section into the table of contents.
The format is @i[@@command(this is an example title)]. The different
sectioning commands are:
@begin(description)

@b[@@chapter]@\This is the major division within a thesis. 
Scribe numbers the chapters 
1, 2, 3,... automatically.

@b[@@section]@\This is the second highest level. It uses a second
number (i.e., 1.1, 1.2, 1.3, ...)

@b[@@subsection]@\This is the third level, numbering is 1.1.1, 1.1.2,
etc. 

@b[@@paragraph]@\If you really want a fourth level, you've got it:
1.1.1.1, 1.1.1.2, etc.

@b[@@appendix]@\Appendices are intended to be added to the end of
your thesis.  Scribe uses letters for appendices, so you would get
appendices lettered A, B, C, etc.

@b[@@section]@\You can also have sections within appendices. These
sections are still numbered, thus you will have A.1, A.2, etc.
@end[description]

Chapter 6 of the @p[Scribe User Manual] contains more information on the
different types of sections.


@section(Citations and Bibliographies)

With Scribe, bibliographies are much easier than before.  All you have 
to do is create a file called @i{thesis.bib} containing an entry for 
each
work that you want to cite.
A sample entry would look like:
@begin(example)
@@book(		Volume1, 
	author="Knuth, D.E.", 
	Key="Knuth", 
	Title="Fundamental Algorithms", 
	Series="The Art of Computer Programming", 
	Volume= "I",
	Publisher="Addison-Wesly", 
	Year="1968")
@end(example)


The file @i(thesis.bib) is actually a database of references.  
You can even create and edit this file in the research phase of your thesis.
Each entry
has a type (such as book, article,
techreport, manual, etc),  a codeword (used to cite the work in the
text of the thesis), key (for alphabetization), and any other
necessary information to create a reference to that work.

To cite a work in the text of the thesis,  use the @b(@@cite) command.
For example, the above entry in @i[thesis.bib] has the codeword
`Volume1'. To cite this work in the text of the thesis, you would type
something like: 
@begin(example)
... which was already proven @@cite(Volume1).  We now cover ...
@end(example)
To get output like:
@begin(example)
... which was already proven [Knuth 68].  We now cover ...
@end(example)

One of the advantages of using a Scribe bibliography database is that
the actual style of your references can be changed with a single
command.  The default style type is STDAlphabetic.  If, however, you
wanted STDNumeric, all you need to do is add the command:
@begin(example)
@@style(References=STDNumeric)
@end(example)
to the beginning of your file @i[thesis.mss]. (You could also choose IEEE,
CACM, APA, etc.)  Also, if you want every work in
your @i[thesis.bib] file to be put in your list of references (rather that
just the works cited in the text) you must also add the line:
@begin(example)
@@style(bibselect = complete)
@end(example)
to the beginning of your @i[thesis.mss] file.


Chapter 12 of the @p[Scribe User Manual] contains more information on how
to create and use bibliography databases.


@section(Cross-References)

In large documents, such as a thesis, you often want to make references
to previously discussed information, such as
Section 1.2, or Figure 2-3.  All you have to do is label and refer to
a section, and Scribe will take care of the numbering for you.  To
keep track of the many references you may have, you must associate a
@i(codeword) with each label.  You then use this @i(codeword) with a
Scribe command when you want to refer to it. There are two ways to
mark a place in your thesis:

@begin[description]
@b[@@label(codeword)]@\attaches @b(codeword)  to the current section.

@b[@@tag(codeword)]@\attaches @b(codeword)  to the current
environment, e.g. a figure, a table,  or paragraph number in an
``enumerate'' environment. 
@end(description)

To refer to places that you have marked by on of the above Scribe
commands, you can use two commands:
@begin(description)
@b[@@ref(codeword)]@\prints the number for codeword. For example, 
``See section @b[@@ref(future-research)]'' will become ``See section
2.4'', and ``Figure @b[@@ref(new-graph)]'' will become ``Figure 4-2''. 

@b[@@pagref(codeword)]@\prints the page number for codeword instead of
the section of figure number.  Thus if your type ``See figure
@b[@@ref(new-graph)] on page @b[@@pageref(new-graph)].'', your output
will be ``See figure 4-2 on page 56.''.
@end[description]

Chapter 7 of the @p[Scribe User Manual] contains more information on how
to use cross-references.


@section(Figures and Tables)
In Scribe, figures and tables are essentially the same thing. The only
difference is what they are called and which reference list (i.e. List of
Figures or List of Tables) they appear in in the formatted document.  
You can choose which to
use for your thesis.
When making figures (or tables), what you will usually want to do is
have Scribe 
put a large blankspace in your output so you can paste in your
graphics later.  To do this, your manuscript file would look something
like this:

@begin[programexample]
@@begin[figure]

@@blankspace(3 in)

@@caption(A Duck on a Pond)

@@tag(duckfigure)

@@end(figure)
@end[programexample]

This will create a blankspace 3 inches high in 
the first available location in your thesis. The blankspace will have
a figure number with the caption ``A Duck on a Pond'', and the figure
is tagged with the codeword @b(duckfigure).  Scribe will also put this
figure in your List of Figures that will appear at the beginning of
your thesis.  

This method will work for most figures. You can change the height of
the figure (the units may be in inches, lines or centimeters), you can
put the caption at the top of the figure by reversing the blankspace
and caption commands, and you can use a full page for a figure with
the command @b[@@begin(fullpagefigure)]. If you want to insert actual
text into a table (or figure) just replace the @b[@@blankspace] command with
the desired text. 

Chapter 8 of the @p[Scribe User Manual] discusses how to create figures and
tables in more detail.

@section(Running the Thesis Through Scribe)

Once you have entered the text for your thesis and bibliography, 
using Emacs,
you can run it through Scribe.
Use the command
@begin(example)
scribe thesis
@end (example)
to produce a formatted copy.
This version of your thesis contains only the text of your thesis.  The command
will issue messages indicating that the certain files have not been found.
You can use this method to check various drafts of your thesis.

If your thesis contains references to sections, figures, or tables that 
@b[follow] current discussion, so-called
"forward references", then you must run the 
thesis through Scribe twice, so that it can attach the appropriate identifiers
to the codes.

When you want a complete version of your thesis, including Table of Contents,
List of Tables, and List of Figures use the command,
@begin(example)
make thesis
@end(example)
The @b[make thesis] command
does two things.  First, it moves the table of contents, the list
of tables and the list of figures from the previous Scribe run to the
beginning of the thesis.  @i(This assumes there has been a previous Scribe run).
It then Scribes the thesis.  The reason for
this two step process is that Scribe cannot make a complete table of
contents (or list of figures, etc.) without first scribing the full
document.  But, the table of contents, etc., must be at the beginning
of the thesis.  Thus,  the solution is to use the previous table of
contents.  This "hack" means that you should Scribe your thesis twice
before you turn in you final copy, because the table of contents is
always one Scribe run out of date.
(Double scribing your thesis will
also resolve references to codewords that have not yet been processed
by Scribe, such as references to forthcoming sections or chapters.)
The first time you use @i(make thesis), you will receive some alarming error 
messages, but they are resolved if you issue @i(make thesis) a second time.

After typing the @b[make thesis] command, Scribe may give you an error
message that a file (such as @i[thesis.tab.include]) is missing.  If this
happens, just hit the return key and Scribe will ignore the error message.

The two other new commands that the makefile gives you are @b(make
clean) and @b(make veryclean). These commands will remove some of the
extra files from your directory (such as *.err or *.otl) that tend to
take up a lot of extra space.
You can type
@begin(example)
make thesis clean
@end(example)
to remove some of the extra files.


@section (Printers)
Although the LN01 laser printers located in each cluster can print
out you thesis, they have many limitations.  They cannot produce
greek letters,  their super and subscripts do not look good, and they
tend to break often.  A much better alternative is to send your thesis
to the Xerox 9700 printer.  The Xerox 9700 produces near typeset
quality text (shown in subsequent examples) for a mere 5 cents per page (3 cents for
any additional copies).  To use the Xerox 9700 printer, you must:
@begin (enumerate)
Scribe your thesis for device @i[x9700] by putting the command
@b[@@device(x9700)] at the beginning of the @i[thesis.mss] file.

Print your @i[thesis.x9700] output file on the Xerox 9700 printer using
the command: @b[/usr/unsupported/sipb/print_9700].

Pay and
pick up your thesis from Information Services Output Dispatch Center on
the 2@+(nd) floor of building 11, open Monday through Friday 8:00 am to 11:30 pm
and Saturday from 10:00 am to 5:30 pm.
@end(enumerate)

@section(Hints)

A thesis is big and important so be aware of the following:

@begin[itemize]
Keep backup copies, in case you delete something.  
The @b[~] files are good but
play it safe, use the @i(cp) command to copy files every now and then.
You should consider downloading thesis files to floppy disk using one
of the PC/XTs in W20 (see @p[Transferring Files between Athena and
IBM PC/XT Floppies]).

Don't hog the timesharing system.  
Try to Scribe a single chapter if that's all
you've updated.  Scribing an entire thesis on a timesharing system
will take a lot of time and
is not fair to other students.

Don't wait to the last minute, particularly if you are new to Scribe.

Don't trust the ln01's.
Use the Xerox 9700.

If you are a senior working on your thesis, you may apply for additional
disk space to store chapters or files for your thesis.

If your thesis contains sets of mathematical equations, consider
taking the Athena mini-course, @i[Using Scribe's Mathematical 
Capabilities].  Also, you may want to print the equations using the
SIPB Apple Laserwriter.   The Laserwriter is a PostScript device that
permits various type sizes on a single line, so that you can 
use integrals and summations.  

Good luck, and get some sleep.
@end[itemize]



@comment(the mss and lpt versions of these files will be added to the 
document after Scribe processing.)

@newpage

@section(Original Manuscript Files)
The following pages show the template files with the text used to 
create the thesis.  
Boldface type indicates information that must be present in order
to produce the Xerox 9700 version of the
thesis at the end of this document.
@newpage
@include(Sthesis.mss)
@newpage
@include(Sfrontp.mss)
@newpage
@include(Sded.mss)
@newpage
@include(Schap1.mss)
@newpage
@include(Schap2.mss)
@newpage
@include(Schap3.mss)
@newpage
@include(Sthesis.bib)
@newpage
@section(Sample Thesis from Original Manuscript Files)
The following pages show a sample thesis produced on the Xerox 9700.
