DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦4d873da06⟧ TextFile

    Length: 26880 (0x6900)
    Types: TextFile
    Names: »roffman1«

Derivation

└─⟦a41ae585a⟧ Bits:30001842 SW-save af projekt 1000, Alarm-system
    └─⟦72244f0ef⟧ 
        └─⟦this⟧ »roffman1« 

TextFile

>cc .
.fo üIntroduktion til ROFFü
.a1 INDLEDNING
.ms ROFF brugervejledning
ROFF er et program, der kan lave tekstbehandling på et RC8000^ anlæg.
    
Denne manual er et eksempel på dens arbejde.

Selve ordet er en sammentrækning af det engelske "run off", der betyder
"trykke".

ROFF kan f.eks. automatisk lave

 - opdeling i sider
 - nummerering af sider
 - fast hoved og/eller fod på hver side
 - afsnitsnummerering
 - figurnummerering
 - eksempelnummerering
 - indholdsfortegnelse
 - indrykning
   osv.
      
Input_tekst^en til ROFF tastes ind på normal vis ved brug af fx
BOSS-editor^en eller EDIT^.

For at ROFF kan vide, hvad der skal gøres ved teksten (f.eks.
at der skal starte et nyt afsnit), indsættes ROFF-kommandoer
.ul
i selve teksten.

.ix indtastning
   
En ROFF-kommando består af tegnet ">" efterfulgt af (præcis)
to bogstaver, og den skal altid
.ul
stå først på en linie.
  
.ix ROFF-kommando, struktur

.ex En ROFF Kommando

Denne eksempeloverskrift^ er lavet ved hjælp af ROFF-kommandoen:

>ex^ En ROFF Kommando

Bemærk, at der i teksten ikke står noget om eksemplets nummer -
.ix eksempel-nummerering
det finder ROFF selv ud af (alle eksempler nummereres fortløbende
startende fra 1 (se ref. 1)). Der står heller ikke noget om, at
overskriften skal understreges - det gør ROFF automatisk.

.a2 Fyldning af linierne
.ix $fyldning$se liniefyldning
ROFF sørger for at fylde linierne passende op og skifte linie,
når det er nødvendigt. Dvs. at
.ul
linieskift^ i input-teksten til ROFF ikke nødvendigvis er
.ul
sammenfaldende med linieskift i den færdigbehandlede tekst.
ROFF sørger også for at fylde et passende antal blanke ind
i linien, således at alle linier bliver lige lange (lige
højre margen).
.ix højre-margen
.ix $margen, højre$se højre-margen

F.eks. kunne input-teksten tastes ind således:

.nf
Der var en gang en prins.
Han ville have sig en
prinsesse,
men det skulle være en
rigtig prinsesse.
Så rejste han hele verden rundt
for at finde sådan en, men
alle steder var der noget
i  vejen.

.fi
.ix $fill$se >fi

Efter behandling af ROFF bliver den til:

Der var en gang en prins. Han ville have sig en prinsesse.
Men det skulle være en rigtig prinsesse. Så rejste han hele
verden rundt for at finde sådan en, men alle steder var der
noget i vejen.

Det er naturligvis muligt selv at styre liniedelingen, f.eks.
hvis man ønsker at skrive vers^.

.ex Tekst uden automatisk liniedeling.

Med kommandoen

>nf^

alene først på en linie slås den automatiske "liniefyldning" fra.
(nf betyder "no fill").
.ix $no fill$se >nf

Med kommandoen

>fi^

slås "fyldning" til igen.
 
Hvis man har slået den automatiske liniefyldning^ fra bliver
linierne heller ikke højrejusteret.
.ix højre-justering

.a2 Denne manuals inddeling
I de følgende afsnit vil vi gennemgå de enkelte ROFF-kommandoer
een for een, og vi vil afslutte med et kapitel om den rent
praktiske brug af ROFF-programmet.

Gennemgangen af kommandoerne er delt på to  kapitler. Først
beskrives de hyppigst anvendte kommandoer ("ROFF til hverdagsbrug")
og dernæst de mere sophistikerede ("ROFF for viderekomne")

.a1 ROFF TIL HVERDAGSBRUG
I dette kapitel vil vi give en beskrivelse af de hyppigst anvendte
ROFF-kommandoer.
.ix ##ROFF-kommandoer

.a2 Nummerering^

Manualforskrifterne (ref. 1) giver standard^er for nummerering af

   -afsnit

   -figurer

   -eksempler

I det følgende beskrives ROFF-kommandoer, der udfører denne nummerering.

.a3 Afsnitsnummerering^
Der findes fire "typer af afsnit":
.ix afsnit, typer af
.ix $nummerering af afsnit$se afsnitsnummerering

  1.        Kapitel^

  1.3       Afsnit^

  1.2.7     Underafsnit^

  1.4.2.1   Underunderafsnit^

Vi kalder disse afsnitsinddelinger for afsnit af type 1, 2, 3 og 4 resp.

Hertil svarer fire ROFF-kommandoer, nemlig

  >a1^, >a2^, >a3^ og >a4^.

Overskriften på dette kapitel er således lavet ved:

>a1 ROFF TIL HVERDAGSBRUG.

mens afsnittets overskrift er blevet til ved:

>a3 Afsnitsnummerering.
  
.a3 Bilagsnummerering^
.ix $nummerering af bilag$se bilagsnummerering
Nummerering af bilag^ og afsnit indenfor bilag foretages nøjagtig som
afsnits_nummerering, altså ved benyttelse af kommandoerne:
       
>a1, >a2, >a3 og >a4
     
Blot skal man inden det første bilag give kommandoen:
   
>ap^
     
alene først på en linie ("ap" for appendix^).
.a3 Figurnummerering^
.ix $nummerering af figurer$se figurnummerering
Figurer nummereres fortløbende begyndende med 1.

ROFF-kommandoen:

>fg^ Figurtekst

udfører automatisk nummereringen.

Da dette er den første figur i dette skrift vil ovenstående kommando efter
"roffning" blive til

.fg Figurtekst

Bemærk at ROFF centrerer teksten under figuren.
.ix centrering

.a3 Eksempel-nummerering^.
.ix $nummerering af eksempler$se eksempel-nummerering
Eksempler nummereres fortløbende begyndende med 1.

ROFF-kommandoen

>ex Eksempel-overskrift

udfører automatisk nummereringen.

Da der tidligere har været to eksempler, vil ovenstående kommando efter
roffning blive til:

.ex Eksempel-overskrift.

.a3 Indholdsfortegnelse^.
ROFF producerer automatisk en indholdsfortegnelse som vist i ref. 1.

Se f.eks. indholdsfortegnelsen til dette skrift.

.a2 Kontrol af linieskift^ og sideskift^.
.ix blanke linier
.ix nyt afsnit
Blanke linier i input-teksten vil også i den roffede tekst fremstå som 
blanke linier, dvs. når der i input-teksten forekommer en "tom linie"
vil ROFF lave et linieskift, der "afbryder" den linie, der er ved at blive
udfyldt, og derefter vil ROFF lave en tom linie.

Når man således laver "nyt afsnit" er det nok at lave en blank linie som man plejer.

.a3 sp
.ix space
Skal man have flere tomme linier efter hinanden, kan man naturligvis lave 
dem i input-teksten.

Man kan også få ROFF til at lave dem.

ROFF-kommandoen >sp^ ("space") efterfulgt af et tal vil generere dette 
antal blanke linier.

.ex Tomme linier.
.nf
Input-teksten:
abc
.sp3
def

er ækvivalent med:

abc
>sp3
def
.fi

.ix liniebrud
 
Kommandoen >br^ (for "break") vil afbryde den linie, man er i gang med, men vil ikke
.ix $break$se >br
lave en blank linie.

Således vil input-teksten:

.ne 10
.nf
dette
>br
er
>br
en 
>br
prøve

efter roffning blive til:

.ne 8
dette
er
en 
prøve
.fi
 
>br virker på samme måde som >sp0.

Se også det tidligere eksempel "tekst uden liniedeling" samt omtalen af 
kommandoerne >nf og >fi i eksempel 2.

.a3 ne
Skal man f.eks. lave plads til en figur^, kan man bruge sp-kommandoen.

Imidlertid er man interesseret i, at 
.ul
alle
de tomme linier kommer til at stå på 
.ul
samme
side i den roffede tekst.

Dette opnås ved >ne^-kommandoen ("need") f.eks. betyder
.ix $need$se >ne

>ne 7

at såfremt der er mindre end 7 linier tilbage på siden (efter roffning)
skal ROFF begynde på en ny side.

.ex Figurer^.
.ix beregning af figurplads
.ix figurplads, beregning af
 
Skal man afsætte plads til en figur ved navn "konfiguration", som 
fylder 9 linier gøres således:

.nf
>ne 11
>sp 9
>fg Konfiguration.
.fi

Læg mærke til, at der behøves ("need") to linier mere end figuren fylder.
Det er for at være sikker på, at figurteksten kan komme med på samme
side som figuren.

.a3 Sideskift^.
Vil man explicit skifte til en ny side bruges >np^ ("new page").
>np kan eventuelt efterfølges af et tal, der angiver hvor mange
tomme sider, man ønsker.

.a2 Understregning^.
Ønskes en del af teksten understreget, benyttes >ul^-kommandoen ("under-line"). 
.ix $underline$se >ul

Denne kommando sørger for at den næste linie i
.ul
input-teksten vil blive understreget
i den roffede tekst.

.ex Understregning.
 
Ovenstående sætning så således ud i input-teksten:

.nf

Denne kommando sørger for
at den næste linie i
>ul
input-teksten vil blive understreget
i den roffede tekst.
.fi

.ix understregning af mellemrum
Bemærk, at ROFF ikke understreger mellemrum ("blanke").
(At de faktisk bliver understreget i eksempel- og
afsnits_overskrifter skyldes at der her er brugt
fikserede mellemrum (se næste afsnit)).

.a2 Fikserede mellemrum^.
.ix liniedeling
.ix fikseret mellemrum
.ix $mellemrum, fikseret$se fikseret mellemrum
ROFF vil dele linier ved mellemrum, men hvis man ikke ønsker, at der skal
være liniedeling ved et mellemrum, kan man benytte et såkaldt "fikseret
mellemrum".

.ms insæt snabel_a
Det er tegnet: @ ("snabel-a").

    
Et fikseret mellemrum behandles af ROFF som et almindeligt tegn, men
vil i den roffede tekst fremtræde som et  mellemrum.
   
.ex Fikseret mellemrum.
 
Lad os se på følgende input-tekst:

.nf
Til attention bruges escape-tasten
( ESC ).
.fi

Der er mellemrum mellem ESC og parentesen fordi der skal tegnes en ramme
om ESC i den roffede tekst. Dette mellemrum er imidlertid ikke fikseret,
så den roffede tekst kan komme til at se således ud:
.nf
 
Til attention bruges escape-tasten ( ESC
).
 
Input-teksten burde have set således ud:
 
.ms indsæt 2 snabel_a'er
Til attention bruges escape-tasten (@ESC@).
.fi

.a2 Kontrol af indrykning^.
.ix kontrol af indrykning
Positionen af tekstens venstre margen ("indryk_ningen") kan styres
.ix venstre-margen
.ix $margen, venstre$se venstre-margen
med >in^ kommandoen.

>in skal efterfølges af et tal, der angiver den relative indrykning
i forhold til den aktuelle.

F.eks. vil input-teksten:
.nf
>in2
a
b
c
>in-2
.fi

efter roffning blive til:

  a
  b
  c

.a3 Temporær indrykning.
.ix temporær indrykning
.ix indrykning, temporær
Hvis indrykningen kun skal gælde for den
.ul
næste roffede linie
benyttes >ti^ kommandoen ("temporary indention").

F.eks. vil input-teksten:
.nf
>in 4
>ti-2
a
b
c
>in-4
.fi

i den roffede version blive til:

  a
    b
    c

.a3 Total liniekontrol^
.ix total liniekontrol
Indledes en linie i input_teksten med et mellemrum^
.ul
kopieres denne linie uændret
til den roffede tekst.

Dette kan f.eks. bruges ved opstilling af tabeller o.l.
.ix tabeller, opstilling af

.ex Total liniekontrol.


Følgende input_tekst

 Dette  er    en prøve

vil i den roffede tekst blive til

 Dette  er    en prøve

altså uændret.

For øvrigt vil

.nf
>in 1
>nf
Dette  er    en prøve
>fi
>in -1
.fi

give samme resultat.

At indlede en linie med mellemrum^ er altså det samme som at lave
en implicit "no fill" på denne ene linie.

.a2 Ord-deling^
.ix automatisk orddeling
.ix lange ord
ROFF laver ikke automatisk orddeling, d.v.s. hvis et ord ikke kan
stå på en linie flyttes det ned på den næste, og mellemrummene
på linien udvides, så linien får samme længde som alle de andre 
linier.
.ix højre-justering

Hvis det er et meget langt ord, der lige akkurat ikke kan være på
linien, bliver der således meget plads, der skal fordeles på
liniens ord_mellemrum, og disse kan derfor blive meget lange:

"ROFF-programmet er et computertekstbehandlingsprogram"

.tc +
illustrerer problemet!
.tc !

Man kan "hjælpe" ROFF ved at indsætte 
.ms indsæt snabel-a
ord_delings_forslag (ved hjælp af
.hc^ ;
tegnet "_", dvs. understreg;ning) i lange ord. F.eks. vil
.hc _
input_teksten

.nf
"ROFF-programmet er et
.ms indsæt 3 snabel-a'er
computer_tekst_behandlings_program".
.fi

give resultatet:

"ROFF-programmet er et
computer_tekst_behandlings_program".

.a1 ROFF FOR VIDEREKOMNE
.ix ROFF for viderekomne
I dette kapitel vil vi beskrive nogle af de mere sophistikerede
anvendelser af ROFF, f.eks.:

 - tabulation^
 - rammer^
 - blokke^
 - styring af sideparametre^
 - valg af funktionstegn^

.a2 Tabulation^
Til brug ved f.eks. kolonne_opstilling af tabeller findes mulighed
for tabulation.

Man angiver tabulations_positioner^ne ved kommandoen >ta^ efterfulgt
.ix udråbstegn
af positionerne:

>ta 10 20 45
.ta 10 20 45

.tc ;
Tabulations_tegn^et er "!" (udråbstegn).

Med ovenstående definition af tabulations_positionerne vil input_teksten:

.ne 10
.nf
!7!9!13
!777!999!1313
.fi

give resultatet:

.nf
.tc !
!7!9!13
!777!999!1313
.fi

.a3 Højre- og centertabulation^
.ix højretabulation
Ovenstående kolonner er venstre_justerede, startende i
tabulations_positionen.

Det er også muligt at få teksten højre_justeret eller centreret omkring
tabulations_positionen.
.ix centrering

Dette gøres ved at taste et R eller et C umiddelbart efter positions_angivelsen 
i >ta-kommandoen. L for "left" er default.

Således vil inputteksten:

.ne 10
.nf^
>nf
.tc ^
>ta 10L 20C 45R
.ta 10L 20C 45R
!7!9!13
!77!999!1313
!777!99999!131313
>fi^

give resultatet:

.tc !
!7!9!13
!77!999!1313
!777!99999!131313
.fi

.a3 Visning af positionerne
.ix visning af positioner
Det er muligt at få de gældende tabulations_positioner vist
øverst på siden.

Kommandoen:

>td^

("tab display") vil give udskriften øverst på denne side.
.ix $tab display$se >td

.td

.a3 Tabulations register
.ix tabulationsregister
.ix register, tab
Det er muligt at gemme alle tabulations_positioner i et
register, f.eks. hvis man hyppigt anvender et sæt tabu_lations_positioner,
men ind imellem gerne vil sætte nogle andre.

Det gøres ved

>ts^

for "tabs save".

>tl^

for "tabs load" vil retablere de gemte tabulations_positioner fra registret.

.a2 Rammer^
.ix indramning af tabeller
.ix tabeller, indramning af
.ix tabeller, opstilling af
Rammer bruges f.eks. til indramning af tabeller med lodrette og
vandrette streger:

.ne 10
.nf
.ta  14R  20R  26R
.fd  10  16  22  28
.fb
!A!B!C
.fb
!11!18!12
!10!19!33
!8!114!321
.fe
.fi

Til dette formål benyttes de tre kommandoer:

 >fd^ eller >fv^  (frame definition)
 >fb^  (frame begin)
 >fe^  (frame end)

>fd definerer positionerne 
for de lodrette streger i rammen. Ovenstående ramme er defineret af

.tc ;
>fd 10 16 22 28
    
Hvor positionerne defineres absolut ved >fd kan de defineres relativt
ved >fv ("frame visual definition").
     
Ovenstående ramme kunne være defineret af:
    
>fv 10 !   A !   B !   C !
     
Tallet umiddelbart efter >fv angiver positionen for den første lodrette
streg i rammen. De efterfølgende udråbs_tegn markerer positionerne
for rammens øvrige lodrette streger. Teksten ind imellem er kun
med af "tælle-hensyn".
        
>fb laver de vandrette streger (undtagen den sidste).

>fe laver den sidste vandrette streg og afslutter rammen.
.ix vandrette streger

Ovenstående ramme er fremkommet ved følgende input_tekst:

.nf
.tc ;
>ne 10
>nf
>ta 14R  20R  26R
>fd 10  16  22  28
>fb
!A!B!C
>fb
!11!18!12
!10!19!33
!8!114!321
>fe
.tc !
>fi
.fi

.a3 Ramme-tabulation
.ix rammetabulation
Det er muligt at definere tabulations_positioner, der "passer"
til en ramme, f.eks. venstre-tabulations_positioner, der alle
ligger to positioner til højre for rammens lodrette streger
(undtagen den sidste). Hertil bruges:

>tf^

for "tab frame".

.nf
F.eks vil input-teksten:

.ne10
>ne10
>nf
>fd 12 22 42 52
>tf
>fb
.tc %
!7!9!13
>fe
>fi
.ne10

give følgende resultat:

.tc !
.fd 12 22 42 52
.tf
.fb
!7!9!13
.fe
.fi

>tf er altså i dette tilfælde det samme som

>ta 14 24 44

Det er også muligt at definere tabulations_positioner, der ligger
hhv. til højre i kolonnerne og i midten. Det gøres ved:

.ix >tf R, >tf L, >tf C
>tf R
          og
>tf C

Med >tf@C i ovenstående eksempel ville vi få:

.nf
.tf C
.fb
!7!9!13
.fe
.fi

.a2 Blokke^

ROFF kan hjælpe med at lave to slags "blokke", d.v.s. indrykkede
tekstklumper^:

 - simple blokke
 - tekstede blokke

.a3 Simple blokke
.ix simple blokke
Følgende er et eksempel på en simpel blok:

- En klump tekst, der er indrykket, og hvor
der står en binde_streg^ til venstre for første
linie er en simpel blok.

Ovenstående blok blev lavet af følgende input-tekst:

.in-1
 - En klump tekst, der er indrykket, og hvor
 der står en binde_streg til venstre for første
 linie er en simpel blok.

.in1
Bindestregen kan også være en stjerne ("*").

Blokken afsluttes af en tom linie i input-teksten.
Ønsker man tomme linier i blokken uden at afslutte den, kan man bruge

>sp1

For at summere:
.br
En linie, der indledes med "-@" eller "*@" er det samme som:

>in5
.br
>ti-2

.a3 Tekstede blokke.
.ix tekstede blokke
Et eksempel på en tekstet blok er:

.tb^ 18 Tekstede blokke
er en klump tekst, der er indrykket, og hvor der står en tekst
til venstre for første linie.

Ovenstående blev lavet af følgende input_tekst:

.nf
>tb^ 18 Tekstede blokke
er en klump tekst, der er indrykket,
og hvor der står en tekst
til venstre for første linie.

.fi

Blokken sluttes af en tom linie i input_teksten.
Der må derfor ikke stå en tom linie umiddelbart efter >tb-kommandoen.

Tallet 18 i >tb-kommandoen angiver at indrykn^ingen af blokken skal
være 18 tegn. Den efterfølgende tekst må ikke være længere end
denne indrykning.

.a2 Kontrol af sideparametre^
.ix global indrykning
Følgende sideparametre kan kontrolleres:

.tb 14 position
som er en slags global indrykning. Den bruges til at positionere
siden rigtigt på papiret.
.br
Kommando: >po^ <tal>
.br
Default = 8

 
.tb 14 øvre margen
som er antal tomme linier mellem hovedet og tekstens start.
.br
Kommando:@>tm@<tal> ("tm" for top margin).
.ix top margin
.ix .tm
.ix øvre margen
.ix margen, kontrol af
.br
Default = 5


.tb 14 nedre margen
er antal tomme linier fra tekstens slutning til foden.
.br
Kommando:@>bm@<tal> ("bm" for bottom margin)
.ix bottom margin
.ix >bm
.ix nedre margen
.br
Default = 5

 
.tb 14 linie længde
er længden af en højrejusteret linie (incl. evt. indrykning^).
.ix højre-justering
.br
Kommando: >ll^ <tal>
.ix linielængde
.br
OBS.: opdateringen er relativ til gældende linielængde.
.br
Default = 61

  
.tb 14 side længde
er max. antal tekstlinier på en side (excl. øvre og nedre margen).
.br
Kommando: >pl^ <tal> ("pl" for page length)
.ix page length
.ix sidelængde
.br
Default = 60

.a2 Valg af specialtegn^.
ROFF kender forskellige tegn, der bliver brugt
til specielle formål, f.eks.:

  - tabulationstegn
  - fikseret mellemrum
  - orddelingstegn

Det er muligt selv at bestemme disse tegn.

Det gøres ved at taste en kommando efterfulgt af
præcis eet mellemrum og tegnet. Vil man således
ændre tabulationstegnet til ":" benyttes >tc^
("tabulation character"):

>tc :

Kommandoerne ses af følgende tabel, hvor kommando-kode
og default-værdi er angivet:

.in-5
.ta 25 30
.fd 1 23 28 32 70
.ll 5
.ne40
.tc #
.fb
 
.tb 30 tabulationstegn^#tc#!
tabulations_tegnet bruges til at positionere
til den næste tabulationsposition.
 
.fb

.tc !
.tb 30 kommandotegn^!cc!>
det er dette tegn der - når det står først på
en linie - fortæller ROFF, at de efter_følgende to tegn
er en ROFF-kommando.
cc betyder "command charac_ter".

.fb
 
.tb 30 deletegn^!hc!_
dette tegn bruges til at fortælle ROFF, at den
må lave ord_deling^ på det sted, hvor det står,
.ul
hvis det er nødvendigt.
Ellers slettes det.
hc betyder "hyphe_nation charac_ter".
.ix $hyphenation character$se >hc

.fb
 
.tb 30 fast mellemrum!sc!@
.ix fikseret mellemrum
.ix mellemrumstegn
.ms indsæt snabel a
dette tegn bruges som fikseret mellem_rum, altså
et tegn som skal op_fattes af ROFF som et alminde_ligt
tegn, men som skal trykkes som et mellem_rum.
sc betyder "space charac_ter".

.fe
.ll -5
.in5

For de interesserede kan nævnes at ovenstående tabel
er lavet med input-teksten:
.ix tabeller, opstilling af

.nf
>in -5
>ta 25 30
>fd 1 23 28 32 70
>ll 5
>ne 40
>tc @
.ms nummertegn
>fb

.tc &
>tb 30 tabulationstegn@tc@!
.tc !
tabulationstegnet bruges til at positionere
til den næste tabulations_position.

>fb

osv........
.fi

.a2 Kontrol af lige højre-margen^
.ix højre-justering
ROFF justerer automatisk teksten så den får lige højre-margen.
Denne justering slås fra når man kører i "no fill" mode.
Ønsker man at slå den fra i "fill"-mode, således at linierne
"fyldes", men ikke højre-justeres, bruges kommandoen:

>nj^

for "no justify".

Justering af højre-margen^ slås til igen med:

>ju^

.a2 Centrering^
Ønskes en tekst
.ce
centreret
midt på linien bruges kommandoen >ce^.

Ovenstående blev lavet med:

>ce
.br
centreret

Ce-kommandoen virker altså på den næste  input-linie.

.a2 Hoveder og fødder
.ix hoveder
.ix fødder
Det er muligt at få ROFF til at sætte faste hoveder
og/eller fødder på hver side.

Hertil bruges kommandoerne >he^ og >fo^.
    
Formatet for disse to kommandoer er ens.

Kommandoens format er:

>he <text>

hvis man ønsker <text> centreret,

>he <text1>@<text2>
.ms bølgelinie

hvis man ønsker <text1> venstre-stillet og <text2> højre-stillet, og

>he <text1>@<text2>@<text3>

hvis man ønsker <text1> venstre-stillet, <text2> centreret
og <text3> højre-stillet.

.ix side-numre
Ønsker man side-nummeret til at indgå tastes et "@"
.ms nummertegn for sidenummer
på det sted, hvor side-nummeret ønskes placeret.

Fødderne i denne manual er lavet med:

>fo Introduktion til ROFF

>he @
.ms nummertegn i >he

Dvs. hovedet er ikke skrevet, det er ROFF's standard-hoved^.

.a2 Messages^
Kommandoen:

>ms^ <text>

vil udskrive <text> på current output med markering af
side-nummer og linie-nummer. Kommandoen bruges f.eks.
hvis en manual kræver efter_behandling i form af
hånd_tegn^ing af special_tegn.

Lige før de steder i denne manual, hvor "snabel-a"
("@")
.ms snabel a
er tegnet er der skrevet:

>ms indsæt snabel-a

.a2 Kontrol af linieafstand^
.ix $double spacing$se >ds
.ds^
Normal linieafstand er 1, men det er også muligt at
få ROFF til at køre med dobbelt linie_afstand,
som det f.eks. er sket i dette afsnit. Lige før
afsnittet er givet kommandoen:

>ds

for "double spacing".
.ss
.ix $single spacing$se >ss

Man vender tilbage til normal linie_afstand ved

>ss^

for "single spacing".

Generelt kan linieafstanden sættes med:

>ls^ <tal>

for "line spacing".
.ix $line spacing$se >ls

.nf
>ds svarer altså til >ls 2 og
>ss svarer til >ls 1

.a2 Kontrol af numre
.ix kontrol af numre
Det er muligt at kontrollere

  - sidenumre  og
  - afsnitsnumre

.a3 Sidenumre
.ix sidenummerering
Sidenumre kan sættes med

>pn^ <tal>

for "page number". 
.ix $page number$se >pn

Formatet for sidenumrene, dvs. det antal positioner, der
afsættes til det i hoveder eller fødder, sættes med:

>pf^ <tal>

Default er 3.

.a3 Afsnitsnumre
.ix afsnitsnummerering
Afsnitsnumre kan sættes med kommandoen >aa^ efterfulgt af
1 til 4 tal.

Således vil

>aa^ 7 4

bevirke, at >a2 starter ved afsnit 7.4.





.a1 KØRSEL AF ROFF
.ix kørsel af ROFF
.ix kald-parametre
.ix udprintning af tekst
.ix $qume-printer$se qume
ROFF-programmet har følgende kald-parametre:
.ix kald-parametre til ROFF

.ta 25 30 39
.nf
navn!default!virkning
.fi

.tb 30 english^!no
De steder hvor ROFF skriver tekst (f.eks i indholds_forteg_nelse^n)
skrives teksten på engelsk.

.tb 30 clock^!no
ROFF vil hvert sekund udskrive forbrugt cputid på current output.

.tb 30 level^!4
Level angiver hvor mange niveauer, der ønskes i
indholds_fortegn_else^n.

.tb 30 first^!1
Nummeret på den første side, der skal skrives ud.
Nummeret må ikke være 0. Synonym er "f".
.ix f

.tb 30 last^!1000000
Nummeret på den sidste side, der skal skrives ud.
First og last bruges hvis man kun vil have en del
af manualen skrevet ud.
Synonym er "l".
.ix l

.tb 30 test^!no
Bruges til debug af ROFF-programmet selv.

.tb 30 bosslines^!no
Vil udskrive de tilhørende BOSS-linie_numre til højre
på siden. Bruges ved korrektur^_læsning.
Synonymt er "bl".
.ix bl

.tb 30 lineno^!no
Vil udskrive linie-numre inden for siden til venstre for teksten.
Bruges ved korrektur_læsning.

.ne10
.tb 30 message^!yes
Vil udskrive >ms-tekster og fejl-meddelelser på
current output.
Synonymt er "ms" og "mess".
.ix ms
.ix mess

.tb 30 qume^!no
Producerer output i format beregnet til qume^-printer.

.tb 30 index^!no
Der genereres et stikordsregister^.

Roff-programmet kaldes således:

 <out>=roff <in> <kald-parametre>

Indholds_fortegn^elsen kommer altid ud på filen "contents".

.ne 20
Følgende job^ kan bruges til korrektur^:

.fd 7 64
.fb

.nf
10 job stb 200 size 50000 time 11 0 perm disc 1000 10
20 message start proofjob
30 contents=set 1 disc
40 scope user contents
50 ud=set 1 disc
60 scope user ud
70 ;
80 ; to liniers fyld
90 ud=roff,
100 ; her skrives filnavnet efterfulgt af komma
110 lineno.yes bosslines.yes
120 proofoutput=copy contents ud
130 convert proofoutput
140 finis
 
.fe

En korrekturudskrift fås da ved:

 get proofjob^
 100 <filnavn>,
 run

.ne20
Ønskes den roffede tekst skrevet ud på f.eks.
Qume^-printer kan dette job bruges:

.fb
 
10 job stb 200 devi 50 size 50000 time 11 0,
20 perm disc 1000 10
30 message start roffjob
40 contents=set 1 disc
50 scope user contents
60 ud=set 1 disc
70 scope user ud
80 ; fyld
90 ud=roff,
100 ;her indsættes filnavnet efterfulgt af komma
110 qume.yes
120 qume=copy contents
130 qume=copy ud
140 finis
 
.fe
.fi

"qume" må først være sat, f.eks. med

qume^=set tw terminal5

eller lignende.

Teksten skrives da ud med:

 get roffjob^
 100 filnavn,
 run

.ap
.a1 REFERENCER

.tb 8 ref. 1
RCSL-no: 43-GL7390
.sp1
.ul
Standard for opbygning, skrivning og trykning
.ul
af klasse 2 manualer.
.sp1
oktober 1978
.br
Jens Falkenberg Andersen m.fl.
.sp1
Denne manual definerer standarder for RC klasse 2
manualer. Den henvender sig til forfattere, skrive_personale
og trykkere. Der bringes detaljerede beskrivelser
af arbejds_fordeling og ansvar.

.a1 MÅLEARK

Dette ark kan bruges dels til at måle hvor
mange linier, der skal afsættes til figurer,
.ix figurplads, beregning af
dels til bestemmelse af tabulations- og ramme_positioner.

.a1 OVERSIGT OVER KOMMANDOER
.ta 16 24
.nf
.in-2
.fd 4 12 22 61
.fb
Komm   default!betydning
.in2
.fb
.bm 2
.pl 63
.fo üü
aa!!sæt afsnitsnumre
a1!!start nyt kapitel
a2!!start nyt afsnit
a3!!start nyt underafsnit
a4!!start nyt underunderafsnit
ap!!start bilags-sektion
bm!5!sæt nedre margen
br!!bryd linie
cc!>!kommando tegn
ce!!centrer næste input-linie
ds!nej!dobbelt linieafstand
ex!!start eksempel
fb!!start ramme
fd!!definer ramme
fe!!slut ramme
fg!!figur-tekst
fi!ja!start fyldning af linier
fo!!sæt fod
.hc %
hc!_!orddelingstegn
.hc _
he!!sæt hoved
.ms he, nummertegn
in!8!indrykning
ix!!stikords_register_kommando
jo!!ingen blank før næste input linie
ju!ja!start lige højre margen
ll!61!sæt linielængde
ls!1!sæt linieafstand
ms!!meddelelse
ne!!behøver n linier
nf!nej!ingen fyldning af linier
nj!nej!ingen lige højre-margen
no!!indsæt figur- eller eksempelnummer
np!!ny side
pf!3!sæt side-nummer-format
pl!60!sæt sidelængde
pn!!sæt sidenummer
po!8!sæt position på siden
sc!!fikseret-mellemrums tegn
.ms snabel a
sp!!lav n tomme linier
ss!ja!sæt linieafstand til een
ta!!sæt tabulationspositioner
tb!!tekst blok
.tc %
tc%!%tabulationstegn
.tc !
td!!vis tabulationspositioner
tf!!tabuler i ramme
ti!!temporær indrykning
tl!!hent fra tab register
tm!5!sæt øvre margen
ts!!gem i tab register
ul!!understreg næste input-linie
.xc
.ms pil-op i xc
.fi
.fe

▶EOF◀