Annotation of 43BSDReno/share/doc/usd/25.trofftut/tt13, revision 1.1

1.1     ! root        1: .\"    @(#)tt13        6.1 (Berkeley) 5/23/86
        !             2: .\"
        !             3: .NH
        !             4: Environments
        !             5: .PP
        !             6: As we mentioned, there is a potential problem
        !             7: when going across a page boundary:
        !             8: parameters like size and font
        !             9: for a page title may well be different from those
        !            10: in effect in the text when the page boundary occurs.
        !            11: .UL troff
        !            12: provides a very general way to deal with this and
        !            13: similar situations.
        !            14: There are three `environments',
        !            15: each of which has independently settable versions of
        !            16: many of the parameters associated with processing,
        !            17: including size, font, line and title lengths,
        !            18: fill/nofill mode, tab stops, and even partially collected lines.
        !            19: Thus the titling problem may be readily solved by processing the main text
        !            20: in one environment and titles in a separate one
        !            21: with its own suitable parameters.
        !            22: .PP
        !            23: The command
        !            24: .BD .ev\ n
        !            25: shifts to environment
        !            26: .BD n ;
        !            27: .BD n
        !            28: must be 0, 1 or 2.
        !            29: The command
        !            30: .BD .ev
        !            31: with no argument returns to the
        !            32: previous environment.
        !            33: Environment names are maintained in a stack, so calls
        !            34: for different environments may be nested and unwound consistently.
        !            35: .PP
        !            36: Suppose we say that the main text is processed in environment 0,
        !            37: which is where 
        !            38: .UL troff
        !            39: begins by default.
        !            40: Then we can modify the new page macro
        !            41: .BD .NP
        !            42: to process titles in environment 1 like this:
        !            43: .P1 2
        !            44: ^de NP
        !            45: ^ev 1  \e" shift to new environment
        !            46: ^lt 6i \e" set parameters here
        !            47: ^ft R
        !            48: ^ps 10
        !            49: \&... any other processing ...
        !            50: ^ev    \e" return to previous environment
        !            51: ^^
        !            52: .P2
        !            53: It is also possible to initialize the parameters for an environment
        !            54: outside the
        !            55: .BD .NP
        !            56: macro,
        !            57: but the version shown keeps all the processing in one place
        !            58: and is thus easier to understand and change.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.