Introduction
Introduction Statistics Contact Development Disclaimer Help
tmac.pictures - 9base - revived minimalist port of Plan 9 userland to Unix
git clone git://git.suckless.org/9base
Log
Files
Refs
README
LICENSE
---
tmac.pictures (4320B)
---
1 .de PI \" Picture Include
2 . \" $1=file(page) $2=height,width,yoff,xoff $3=flags
3 . \" Height, width, xoff, and yoff are for the frame, flags is fo…
4 . \" picture. Default dimensions are inches.
5 \\X'PI:\\n(.o:\\n(.i:\\n(.l:\\n(.t:\\$1:\\$2:\\$3:'\\c
6 ..
7 .nr FT 0
8 .de BP \" Begin a Picture
9 . \"
10 . \" $1=file(page) $2=height $3=width $4=position $5=offset $6=fl…
11 . \"
12 . \" Height, width, position, and offset are for the frame, flags…
13 . \" the picture. The postion flag should be l, c, r, or "". Omit…
14 . \" position argument is also allowed for compatibility with the…
15 . \" version of the macro. In that case offset is taken relative …
16 . \" left margin.
17 .if \\n(FT>1 .EP
18 . \" Need these when we switch environments.
19 .nr Ov \\n(.v
20 .nr Oi \\n(.i
21 .nr Ol \\n(.l
22 . \" Remember the arguments - sometimes as both a string and numb…
23 .nr $2 \\$2i
24 .nr $3 \\$3i
25 .nr $4 \\$4i
26 .ds $4 \\$4
27 .nr $5 \\$5i
28 .ds $5 \\$6
29 .ds $6 \\$7
30 . \" Accept a few unadvertised position flags.
31 .if '\\*($4'L' .ds $4 l
32 .if '\\*($4'C' .ds $4 c
33 .if '\\*($4'R' .ds $4 r
34 . \" A null with more than three arguments means l.
35 .if \\n(.$>3 .if '\\*($4'' .ds $4 l
36 . \" Default frame dimensions if missing, zero, or null.
37 .if !\\n($2>0 .nr $2 3.0i
38 .if !\\n($3>0 .nr $3 \\n(.lu-\\n(.iu-\\n($4u
39 .if !\\n($3>0 .nr $3 \\n($2u
40 . \" Figure out the offset that will be used the rest of the way.
41 .if '\\*($4'l' .nr $4 \\n($5u
42 .if '\\*($4'c' .nr $4 (\\n(.lu-\\n(.iu-\\n($3u)/2u+\\n($5u
43 .if '\\*($4'r' .nr $4 \\n(.lu-\\n(.iu-\\n($3u+\\n($5u
44 . \" If we haven't recognized the position flag assume it wasn't …
45 . \" treat argument four as an offset from the left.
46 .if !'\\*($4'l' .if !'\\*($4'c' .if !'\\*($4'r' .ds $5 \\$5
47 .if !'\\*($4'l' .if !'\\*($4'c' .if !'\\*($4'r' .ds $6 \\$6
48 . \" Set increments for line length and indent.
49 .nr Ii \\n($3u+\\n($4u+.1i
50 .nr Il \\n(.lu-\\n(.iu-\\n($4u+.1i
51 . \" Set the frame type to one of:
52 . \" 0 - frame is as wide as a line of text - skip over it.
53 . \" 1 - fits in left or right margins
54 . \" 2 - fill with text on the right
55 . \" 3 - on the left
56 . \" 4 - or on both sides of the frame
57 . \" 5 - only set in EP if FT was 4 and now filling on the…
58 . \" Assume the frame is as wide as a line of text, then check di…
59 . \" to see what's really true. The order of these tests is impor…
60 .nr FT 0
61 .if \\n($4u>1.0i .nr FT 3
62 .if \\n($4u+\\n(.iu>=\\n(.lu .nr FT 1
63 .if \\n($3u+\\n($4u+\\n(.iu+1.0i<\\n(.lu .nr FT 2
64 .if \\n($3u+\\n($4u<=0 .nr FT 1
65 .if \\n(FT=2 .if \\n($4u>1.0i .nr FT 4
66 . \" Ask for some vertical space - labeled pictures need a little…
67 . \" margin pictures a little less.
68 .if \\n(FT=1 .if '\\*($6'' .ne \\n($2u
69 .if \\n(FT=1 .if !'\\*($6'' .ne \\n($2u+2v
70 .if !\\n(FT=1 .if '\\*($6'' .ne \\n($2u+3v
71 .if !\\n(FT=1 .if !'\\*($6'' .ne \\n($2u+5v
72 . \" Save our place, draw the picture, label it, and return. Need…
73 . \" control of when \X'...' is put out - thus the new environmen…
74 .mk Oh
75 .ev 1
76 .in \\n(Oiu
77 .ll \\n(Olu
78 .vs \\n(Ovu
79 .if \\n(FT=1 .sp -1v
80 .if \\n(FT=1 .PI \\$1 \\n($2u,\\n($3u,\\n(.vu,\\n($4u t\\*($5
81 .if !\\n(FT=1 .PI \\$1 \\n($2u,\\n($3u,\\n(.vu,\\n($4u \\*($5
82 .in
83 .ll
84 .vs
85 .ev
86 .lt \\n($3u
87 .tl \(ts\(ts\\h'\\n($4u+\\n(.iu'\\v'\\n($2u+1.5v'\\*($6\\v'-\\n($2u-1.5v…
88 .lt
89 'sp |\\n(Ohu
90 . \" Figure out what to do with the text that follows.
91 .if !'\\*($6'' .nr $2 +2v
92 .if \\n(FT=0 .sp \\n($2u+2v
93 .if \\n(FT=1 .nr FT 0
94 .if \\n(FT=2 'in +\\n(Iiu
95 .if \\n(FT>2 .ll -\\n(Ilu
96 .if \\n(FT>1 .di BB
97 .if \\n(FT>1 .dt \\n($2u+2v+1u EP
98 . \" Clean things up.
99 .rr $2
100 .rr $3
101 .rr $4
102 .rm $4
103 .rr $5
104 .rm $5
105 .rm $6
106 .rr Oh
107 .rr Oi
108 .rr Ol
109 .rr Ov
110 .if \\n(FT=0 .EP
111 ..
112 .de EP \" End the Picture - Normally called from a trap, although…
113 . \" on its own to mark the end of a picture.
114 .nr Ot 0
115 .if \\n(.tu<\\n(.pu .nr Ot \\n(.tu
116 .if \\n(Ot>0 .if \\n(FT=4 .nr FT 3
117 .if \\n(FT<2 .nr Ot 0
118 .if \\n(Ot>0 .br
119 .if \\n(FT=5 .nr Ot 0
120 .if \\n(FT>1 \{\
121 . ev 1
122 . eo
123 . br
124 . di
125 . nf
126 . in 0
127 . BB
128 . in
129 . fi
130 . ec
131 . ev
132 . rm BB\}
133 .if \\n(FT=5 \{\
134 . nr FT 2
135 ' sp |\\n(Nhu+1v\}
136 .if \\n(FT=4 \{\
137 . mk Nh
138 . nr Nh -1v
139 . nr FT 5
140 ' sp -\\n(dnu+1v
141 ' in +\\n(Iiu
142 . ll +\\n(Ilu
143 . di BB
144 . dt \\n(dnu-2v+1u EP\}
145 .if \\n(FT=2 'in -\\n(Iiu
146 .if \\n(FT=3 .ll +\\n(Ilu
147 .if \\n(FT<4 .nr FT 0
148 .if \\n(Ot>0 .sp \\n(Otu
149 .rr Ot
150 .if \\n(FT=0 \{\
151 . rr Nh
152 . rr Ii
153 . rr Il\}
154 ..
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.