BeginStyle (BeachCedar) AttachStyle (frontMatter) .false StyleParam (twoColumnStuff) .false StyleParam (chapterNumber) "1" StyleParam (PageBuilder) "the routine that packs pages with headers" { IF the frontMatter THEN { FrontMatterPageBuilder } ELSE { IF the twoColumnStuff THEN { TwoColumnPageBuilder } ELSE { ChapterPageBuilder } FIELSE } FIELSE } StyleRule (FrontMatterPageBuilder) "the routine that packs pages with headers" { StartPageCounter .page % assume there will be one page! EmptyHeaderBox .exchbox DropRomanNumeralFolioBox 3 .vbox .shipout IncrPageCounter DO { .page EXITifFALSE HeaderOnlyBox .exchbox DropRomanNumeralFolioBox 3 .vbox .shipout IncrPageCounter } ENDLOOP } StyleRule (ChapterPageBuilder) "the routine that packs pages with headers" { StartPageCounter .page % assume there will be one page! EmptyHeaderBox .exchbox DropFolioBox 3 .vbox .shipout IncrPageCounter DO { .page EXITifFALSE HeaderBox .exchbox FooterBox 3 .vbox .shipout IncrPageCounter } ENDLOOP } StyleRule (TwoColumnPageBuilder) "the routine that packs pages with headers" { StartPageCounter % first two column page has a drop folio .page % assume there will be one page with chapter title! .fill .page IF .not THEN {.fill} FI 3 GalleyWidth .hboxto EmptyHeaderBox .exchbox DropFolioBox 3 .vbox .shipout IncrPageCounter DO { .page EXITifFALSE .fill .page IF .not THEN {.fill} FI 3 GalleyWidth .hboxto HeaderBox .exchbox FooterBox 3 .vbox .shipout IncrPageCounter } ENDLOOP } StyleRule (EmptyHeaderBox) "return an empty vbox for the header" { .fill 1 the headerMargin .vboxto } StyleRule (HeaderOnlyBox) "return an empty vbox for the header" { (insideHeader) .getmark .fill (centerHeader) .getmark .fill (outsideHeader) .getmark 5 GalleyWidth .hboxto .fill 2 the headerMargin .vboxto } StyleRule (DropFolioBox) "return the page number centered at the bottom of the page" { .fill IF the pageNumbering pageCounter the firstHeadersAfterPage .gt .and THEN { .fill GetPageCounter .fill 3 GalleyWidth .hboxto } ELSE { .fill 1 GalleyWidth .hboxto } FIELSE 2 the footerMargin .vboxto } StyleRule (DropRomanNumeralFolioBox) "return the roman numeral page number centered at the bottom of the page" { .fill IF the pageNumbering pageCounter the firstHeadersAfterPage .gt .and THEN { .fill GetRomanNumeralPageCounter .fill 3 GalleyWidth .hboxto } ELSE { .fill 1 GalleyWidth .hboxto } FIELSE 2 the footerMargin .vboxto } StyleRule (GetPageCounter) "return the current value of the page counter" { (Helvetica) 10 bp .textfont the chapterNumber .cvs .textbox "-" .textbox pageCounter .cvi .cvs .textbox 3 .hbox } StyleRule (GetRomanNumeralPageCounter) "return the current value of the page counter" { (Helvetica) 10 bp .textfont IF pageCounter 0 .gt pageCounter 21 .lt .and THEN { [ (i) (ii) (iii) (iv) (v) (vi) (vii) (viii) (ix) (x) (xi) (xii) (xiii) (xiv) (xv) (xvi) (xvii) (xviii) (xix) (xx) ] pageCounter 1 .sub .aget } ELSE { pageCounter .cvi .cvs } FIELSE .textbox 1 .hbox } StyleRule (BasicSize) "normal type font size" { 12 bp } StyleRule (BasicLeading) "normal type leading" { 16 pt } StyleRule (look.e) "emphasis for glossary words" { AlternateFontFamily isComment {-italic face}{+italic face} .ifelse .cvx .exec } StyleRule (look.j) "second level subscript" { BasicIncrement .neg bigger vShift BasicIncrement smaller size} StyleRule (look.k) "keywords, small caps" { BasicIncrement smaller size FontFamily } StyleRule (look.h) "fixed pitch font" { "Gacha" family 12 bp size bold face } ScreenRule (look.h) "fixed pitch font" { "XeroxBook" family 14 bp size regular face} PrintRule (look.r) "reference citations" { BasicIncrement smaller size } StyleRule (look.v) "fixed pitch font" { "Gacha" family 8 bp size bold face } ScreenRule (look.v) "fixed pitch font" { "XeroxBook" family 10 bp size regular face} PrintRule (look.w) "things to do" { "CREAM" family 10 bp size bold face } ScreenRule (look.w) "things to do" { "CREAM10" family 10 bp size bold face } PrintRule (caption) "for figure captions" { block flushLeft lineFormatting bold face BasicIncrement smaller size BasicIncrement smaller leading the leading topLeading } StyleRule (centeredtable) "for centered tables with ArtworkClass property Rule" { block centered lineFormatting } ScreenRule (centeredtable) "for centered tables with ArtworkClass property Rule" { block centered lineFormatting 6 pt leading 6 pt topLeading 12 pt bottomLeading } PrintRule (chapter) "for chapter titles that begin a new page" { head1 XLSize size XLSize MoreLead .add leading } ScreenRule (chapter) "for chapter titles that begin a new page" { head1 36 bp size 36 bp leading 1 fill 0 0 topLeadingGlue 180 bp 0 0 bottomLeadingGlue } PrintRule (contents) "for headings in the table of contents" { head nestingLevel 1 .eq .not {ParaIndent bigger leftIndent} .cvx .if 3 em restIndent the restIndent tabStops BreakSize leading BreakSize BasicSize MoreLead topLeadingGlue BreakSize BasicSize MoreLead bottomLeadingGlue } StyleRule (display) "displayed equations, etc. embedded in text" { docStandard MoreLead bigger topLeading 0 bottomLeading centered lineFormatting } StyleRule (equation) "displayed equations, etc. embedded in text" { display } StyleRule (equationNumber) "equations number craftily overlays previous display" { display 0 topLeading MoreLead bigger bottomLeading flushRight lineFormatting } StyleRule (figureequation) "displayed equations, etc. embedded in text" { display BasicIncrement smaller size BasicIncrement smaller leading the leading topLeading 0 bottomLeading } StyleRule (figureequationNumber) "equations number craftily overlays previous display" { display BasicIncrement smaller size BasicIncrement smaller leading 0 topLeading the leading bottomLeading flushRight lineFormatting } StyleRule (head4) "a list of items heading" { head3 } StyleRule (horizontalrule) "for rules (solid lines) used to separate things" { docStandard 6 pt leading 6 pt topLeading 6 pt bottomLeading 0 em firstIndent 0 em restIndent } StyleRule (index) "for entry in an index." { block 10 bp size 12 pt leading the leading topLeading the leading bottomLeading flushLeft lineFormatting nestingLevel 2 .gt {1 em bigger leftIndent} .cvx .if the leftIndent 1 em .add restIndent the restIndent tabStops } StyleRule (glossary) "for a glossary term." { block 10 bp size 12 pt leading the leading topLeading the leading bottomLeading flushLeft lineFormatting the leftIndent 1 em .add restIndent the restIndent tabStops } StyleRule (item) "for lists of items." { block flushLeft lineFormatting ParaIndent bigger leftIndent ParaIndent 2 .mul bigger restIndent the restIndent tabStops } StyleRule (paragraph) "ragged-right indented paragraph" { body flushLeft lineFormatting } StyleRule (paragraphcontinued) "ragged-right indented paragraph" { block flushLeft lineFormatting } StyleRule (picture) "special leading for pictures" { docStandard centered lineFormatting BasicSize leading BasicSize topLeading BasicSize bottomLeading } StyleRule (reference) "an item in a reference list" { block 10 bp size 12 bp leading the leading topLeading the leading bottomLeading flushLeft lineFormatting the leftIndent 2 em .add restIndent the restIndent tabStops } StyleRule (root) "document layout" { docStandard 10 pt rightIndent } ScreenRule (root) "document layout" { docStandard .5 in topMargin .8 in headerMargin .5 in footerMargin .5 in bottomMargin 1.25 in leftMargin 1.25 in rightMargin 6 in lineLength 24 pt topIndent 24 pt topLeading 0 leftIndent 0 pt rightIndent } PrintRule (rootForTwoColumns) "document layout" { docStandard 10 pt rightIndent } ScreenRule (rootForTwoColumns) "document layout" { docStandard .5 in topMargin .8 in headerMargin .5 in footerMargin .5 in bottomMargin 1.25 in leftMargin 1.25 in rightMargin 2.825 in lineLength % short line length for two columns 24 pt topIndent 24 pt topLeading 0 leftIndent 0 pt rightIndent } PrintRule (styleFigure) "for TiogaArtwork style samples" { standard nestingLevel 1 .eq .not {ParaIndent bigger leftIndent} .cvx .if 0 restIndent BasicIncrement smaller size "Gacha" family BasicIncrement smaller leading BasicLeading BasicIncrement .sub topLeading BasicLeading BasicIncrement .sub bottomLeading the lineLength 2 .div tabStop } ScreenRule (styleFigure) "for TiogaArtwork style samples" { standard nestingLevel 1 .eq .not {ParaIndent bigger leftIndent} .cvx .if 0 restIndent BasicIncrement smaller size "XeroxBook" family BasicIncrement smaller leading BasicLeading BasicIncrement .sub topLeading BasicLeading BasicIncrement .sub bottomLeading the lineLength 2 .div tabStop } PrintRule (styleTable) "for TiogaArtwork style comparison" { block "Gacha" family 8 bp size 9 pt leading BasicLeading BasicIncrement .sub topLeading BasicLeading BasicIncrement .sub bottomLeading } ScreenRule (styleTable) "for TiogaArtwork style comparison" { block "XeroxBook" family 8 bp size 9 pt leading BasicLeading BasicIncrement .sub topLeading BasicLeading BasicIncrement .sub bottomLeading } PrintRule EndStyle Τ% BeachThesis.style % last edited by Beach, May 3, 1985 9:04:17 pm PDT % front matter with roman numeral page numbers % two column pages like the Glossary and the Index % regular chapter opening with page number at bottom of first page, headers after that % front matter with roman numeral page numbers (Nest) "display nesting level" { nestingLevel 1 .gt { ParaIndent bigger leftIndent } .cvx .if } PrintRule (look.w) "things to do" { bold face } StyleRule Κ i˜Icodešœ™K™2˜ šœΟn œ ˜K˜—KšœΟb œ˜Kšœžœ˜"šœž œ˜K˜—šœž œ/˜;šΟsœŸœ˜K™.Jšœ˜KšœŸœ˜šŸœŸœ˜K™2Jšœ˜KšœŸœ˜K™VJšœ˜KšœŸ˜—KšœŸ˜—Kšœ ˜ K˜—šœžœ/˜FK™.Kšœ˜KšœΟc!˜'Kšœ˜Kšœ˜Jšœ˜Kšœ˜Kšœ˜šŸœ˜KšœŸ ˜K˜ Kšœ˜Jšœ˜Kšœ˜Kšœ˜KšœŸ˜ —Kšœ ˜ K˜—šœžœ/˜BKšœ˜Kšœ !˜'Kšœ˜Kšœ˜J˜ Kšœ˜Kšœ˜šŸœ˜KšœŸ ˜Kšœ ˜ Kšœ˜Kšœ ˜ Kšœ˜Kšœ˜KšœŸ˜ —Kšœ ˜ K˜—šœžœ/˜DKšœ˜Kš (˜(Kšœ 4˜:K˜KšœŸœŸœ Ÿ˜J˜Kšœ˜Kšœ˜J˜ Kšœ˜Kšœ˜šŸœ˜KšœŸ ˜K˜KšœŸœŸœ Ÿ˜J˜Kšœ ˜ Kšœ˜Kšœ ˜ Kšœ˜Kšœ˜KšœŸ˜ —Kšœ ˜ K˜—šœžœ)˜8Kšœ˜Kšœ˜Kšœ ˜ K˜—šœž œ)˜7JšœT˜TJšœ˜Kšœ˜Kšœ˜Kšœ ˜ K˜—šœž œ?˜LJšœ˜šŸœBŸœ˜JKšœ0˜0JšœŸœ˜Jšœ˜JšœŸ˜—Jšœ˜Kšœ ˜ K˜—šœžœM˜fJšœ˜šŸœBŸœ˜JJšœ<˜/{