roff: import

This commit is contained in:
2026-03-14 07:27:23 +01:00
parent 7b44f211d3
commit ca469fff65
6 changed files with 658 additions and 0 deletions

2
.gitignore vendored
View File

@@ -13,3 +13,5 @@ target
_build/
dist/
dist-newstyle/
*.pdf
*.ps

132
roff/letter.txt Normal file
View File

@@ -0,0 +1,132 @@
Title of my paper
Jim Hall
Class
Instructor
Date
left center right
1. Introduction
One cool thing I like about the history of Unix is how
Unix developed into a document processing system. The short
history of that is the Unix team wanted to purchase a new
computer to keep working on Unix. But management said "No."
Around that same time, the Patents team wanted to buy a
new computer to write patent applications, but the vendor
hadn't finished the software yet. The Unix team went to
them and said:
Hey, if you buy us a new computer, we'll update the
existing roff typesetting system so you can write
patent applications.
That's how Unix created the first nroff program, new
roff. Later, they updated nroff to become troff, the type-
setter roff, and even later ditroff, the device idenependent
version of troff.
left 1

2
roff/margins.me Normal file
View File

@@ -0,0 +1,2 @@
.ll 60
.po 10

465
roff/paper-ps Normal file
View File

@@ -0,0 +1,465 @@
x T ps
x res 72000 1 1
x init
p1
V168000
H100000
DFd
x font 38 TB
f38
s10000
h263010
md
tT
H369500
title
wh2500
tof
wh2500
tmy
wh2500
tpaper
n12000 0
x font 5 TR
f5
V204000
H382915
tJim
wh2500
tHall
n12000 0
V228000
H389165
tClass
n12000 0
V252000
H380560
tInstructor
n12000 0
V276000
H390560
tDate
n12000 0
V792000
p1
x font 38 TB
f38
s10000
V60000
H100000
tleft
h272795
tcenter
h265565
tright
n12000 0
V96000
H100000
t1.
wh5000
tIntr
H129540
toduction
h5000
n12000 0
x font 5 TR
f5
V124200
H125000
tOne
wh2574
tcool
wh2574
tthing
wh2573
tI
wh2573
tlik
H203524
te
wh2573
tabout
wh2573
tthe
wh2573
thistory
wh2573
tof
wh2573
tUnix
wh2573
tis
wh2573
tho
H332945
tw
wh2573
tUnix
wh2573
tde
H374501
tv
H379351
teloped
wh2573
tinto
wh2573
ta
wh2573
tdocument
wh2573
tprocessing
wh2573
tsystem.
wh5073
tThe
wh2573
tshort
wh2573
thistory
wh2573
tof
wh2573
tthat
wh2573
tis
wh2573
tthe
wh2573
tUnix
n12000 0
V148200
H100000
tteam
wh2500
tw
H129060
tanted
wh2500
tto
wh2500
tpurchase
wh2500
ta
wh2500
tne
H217670
tw
wh2500
tcomputer
wh2500
tto
wh2500
tk
H282840
teep
wh2500
tw
H306340
torking
wh2500
ton
wh2500
tUnix.
wh5000
tBut
wh2500
tmanagement
wh2500
tsaid
wh2500
Clq
h4440
tNo.
H482570
Crq
h4440
n12000 0
V176400
H125000
tAround
wh2549
tthat
wh2549
tsame
wh2549
ttime,
wh2549
tthe
wh2549
tP
H241755
tatents
wh2549
tteam
wh2549
tw
H296743
tanted
wh2549
tto
wh2549
tb
H336081
tuy
wh2549
ta
wh2549
tne
H364809
tw
wh2549
tcomputer
wh2549
tto
wh2549
twrite
wh2549
tpatent
wh2549
tapplications,
wh2549
tb
H533493
tut
wh2549
tthe
wh2549
tv
H563441
tendor
wh2549
thadn'
H611350
tt
wh2550
Cfi
h5560
tnished
wh2550
tthe
wh2550
tsoftw
H687790
tare
n12000 0
V200400
H100000
tyet.
wh5000
tThe
wh2500
tUnix
wh2500
tteam
wh2500
twent
wh2500
tto
wh2500
tthem
wh2500
tand
wh2500
tsaid:
n12000 0
s9000
V227400
H120000
tHe
H130359
ty
H134274
t,
wh2250
tif
wh2250
tyou
wh2250
tb
H166593
tuy
wh2250
tus
wh2250
ta
wh2250
tne
H202611
tw
wh2250
tcomputer
H244992
t,
wh2250
twe'
H262893
tll
wh2250
tupdate
wh2250
tthe
wh2250
te
H313500
txisting
wf38
h2250
tr
H344091
toff
wf5
h2250
ttypesetting
wh2250
tsystem
wh2250
tso
wh2250
tyou
wh2250
tcan
wh2250
twrite
wh2250
tpatent
wh2250
tapplications.
n10800 0
s10000
V259800
H125000
tThat'
H146110
ts
wh3963
tho
H163713
tw
wh3963
tUnix
wh3963
tcreated
wh3963
tthe
wh3963
Cfi
h5560
trst
wf38
h3963
tnr
H277218
toff
wf5
h3963
tprogram,
wx font 40 TI
f40
h4323
tne
H342834
tw
wh3963
tr
H356907
tof
H364507
tf
f5
h1960
t.
wh6463
tLater
H398910
t,
wh3963
tthe
H417443
ty
wh3963
tupdated
wf38
h3963
tnr
H471849
toff
wf5
h3963
tto
wh3963
tbecome
wf38
h3963
ttr
H541868
toff
f5
t,
wh3962
tthe
wf40
h4092
ttypesetter
wh3962
tr
H622584
tof
H630184
tf
f5
h1960
t,
wh3962
tand
wh3962
te
H663978
tv
H668828
ten
wh3962
tlater
n12000 0
f38
V283800
H100000
tditr
H115930
toff
f5
t,
wh2500
tthe
wf40
h2850
tde
H156950
tvice
wh2500
tidenependent
wf5
h3180
tv
H236900
tersion
wh2500
tof
wf38
h2500
ttr
H282260
toff
f5
t.
n12000 0
f38
V756000
H100000
tleft
h581120
t1
n12000 0
x trailer
V792000
x stop

53
roff/paper.me Normal file
View File

@@ -0,0 +1,53 @@
.tp
.he 'left'center'right'
.fo 'left''%'
.sp 6
.ce 5
.b "Title of my paper"
.sp 2
Jim Hall
.sp
Class
.sp
Instructor
.sp
Date
.bp
.\" .ls 2
.sh 1 Introduction
.lp
One cool thing I like about the history of Unix is how
Unix developed into a document processing system.
The short history of that is the Unix team wanted to
purchase a new computer to keep working on Unix.
But management said
.q No.
.pp
Around that same time, the Patents team wanted to buy a
new computer to write patent applications, but the
vendor hadn't finished the software yet.
The Unix team went to them and said:
.(q
Hey, if you buy us a new computer,
we'll update the existing
.b roff
typesetting system so you can write patent applications.
.)q
.pp
That's how Unix created the first
.b nroff
program,
.i "new roff" .
Later, they updated
.b nroff
to become
.b troff ,
the
.i "typesetter roff" ,
and even later
.b ditroff ,
the
.i "device idenependent"
version of
.b troff .
.sh 2 Introduction

4
roff/shell.nix Normal file
View File

@@ -0,0 +1,4 @@
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
packages = [pkgs.groff];
}