Commit Diff


commit - 57a6108c76c357cd4f71c26c84baec92a9fb91b5
commit + 9daa3ca74ebd673d00ba52667c50fe4a0046d100
blob - 4a5f47d43139b041bd2c2d49927ccbfb7af25ac1
blob + 2c716c1b3bef46b96064c882d5f5194b8e47ee9d
--- src/cmd/postscript/tr2post/mkfile
+++ src/cmd/postscript/tr2post/mkfile
@@ -36,3 +36,7 @@ CFLAGS=$CFLAGS -c -D'PROGRAMVERSION="0.1"' -D'DOROUND=
 
 %.$O:	$COMMONDIR/%.c
 	$CC $CFLAGS $COMMONDIR/$stem.c
+
+test.ps:V: $O.tr2post
+	9 troff -ms test.tr | $O.tr2post | psfonts >test.ps
+
blob - 5a22ac72253b1d9be442a0d1fb15e30e2a07a175
blob + 5ca1b3286a85414858ecbcadcaf32d9a39343689
--- src/cmd/postscript/tr2post/tr2post.c
+++ src/cmd/postscript/tr2post/tr2post.c
@@ -85,9 +85,28 @@ prologues(void) {
 /* output Build character info from charlib if necessary. */
 
 	for (i=0; i<build_char_cnt; i++) {
-		sprint(charlibname, "%s/%s", CHARLIB, build_char_list[i]->name);
+		// Rewrite file name for case-insensitive or non-UTF-8 file systems.
+		// _x means a lowercase x; #1234 means Unicode 0x1234.
+		char buf[100];
+		char *r, *w;
+		for(w=buf, r=build_char_list[i]->name; *r && w<buf+sizeof buf-8; ){
+			if((uchar)*r >= 0x80){
+				Rune rr;
+				r += chartorune(&rr, r);
+				sprint(w, "#%04x", rr);
+				w += strlen(w);
+				continue;
+			}
+			if(('a' <= *r && *r <= 'z') || *r == '_')
+				*w++ = '_';
+			if(*r == '#')
+				*w++ = '#';
+			*w++ = *r++;
+		}
+		*w = 0;
+		sprint(charlibname, "%s/%s", CHARLIB, buf);
 		if (cat(unsharp(charlibname)))
-		Bprint(Bstderr, "cannot open %s\n", charlibname);
+			Bprint(Bstderr, "cannot open %s\n", charlibname);
 	}
 
 	Bprint(Bstdout, "%s", ENDSETUP);
blob - /dev/null
blob + 6702a5ed3ff8d7f8c882bed3802632bf6d9b9399 (mode 644)
--- /dev/null
+++ src/cmd/postscript/tr2post/test.tr
@@ -0,0 +1,65 @@
+.fp 8 S
+~= \f8\(~=\fP
+.sp
+☺
+.sp
+12 \(12
+.sp
+14 \(14
+.sp
+34 \(34
+.sp
+bx \(bx
+.sp
+ci \fS\(ci\fP
+.sp
+DG \(DG
+.sp
+FA \(FA
+.sp
+.ig
+ff \(ff
+.sp
+Fi \f7\(Fi\fP
+.sp
+Fl \(Fl
+.sp
+..
+L1 \(L1
+.sp
+LA \(LA
+.sp
+lc \(lc
+.sp
+lf \(lf
+.sp
+lh \(lh
+.sp
+lH \(lH
+.sp
+LH \(LH
+.sp
+LV \(LV
+.sp
+ob \(ob
+.sp
+PC \(PC
+.sp
+pw \(pw
+.sp
+rc \(rc
+.sp
+.ig
+RC \(RC
+.sp
+..
+rf \(rf
+.sp
+rh \(rh
+.sp
+rH \(rH
+.sp
+Sl \(Sl
+.sp
+sq \(sq
+.sp
blob - /dev/null
blob + c08ed447f6fab0dcf122cb3cce9dc893532d569c (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/#263a
@@ -0,0 +1,12 @@
+/build_X263a{
+    pop
+    gsave
+    currentpoint translate 7.44 7.68 scale ptsize dup scale
+    31 32 true [31 0 0 -32 2 31]
+    {< 0007c000 007ff800 01c00600 03000180 060000c0 08000060 18000030 30000018
+    20000008 4000000c 40183004 c0183006 80183002 80000002 80000002 80000002
+    860000c2 8e0000e2 8e0000e2 9a0001e2 c3000186 41800304 41c0060c 60f01c08
+    303ff818 101fe030 08000060 040000c0 03000180 01c00700 007cfc00 000fe000
+    >} imagemask
+    grestore
+} def
blob - 46d9f57166c48ed19133cabe2b5eaf83c4a98973 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/Fi
+++ /dev/null
@@ -1,4 +0,0 @@
-/build_Fi {
-    pop
-    size .05 mul neg 0 (ffi) ashow
-} def
blob - d3033ba583f72e43e2d298cf4c50cb7445527b20 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/Fl
+++ /dev/null
@@ -1,4 +0,0 @@
-/build_Fl {
-    pop
-    size .05 mul neg 0 (ffl) ashow
-} def
blob - /dev/null
blob + 46d9f57166c48ed19133cabe2b5eaf83c4a98973 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/F_i
@@ -0,0 +1,4 @@
+/build_Fi {
+    pop
+    size .05 mul neg 0 (ffi) ashow
+} def
blob - /dev/null
blob + d3033ba583f72e43e2d298cf4c50cb7445527b20 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/F_l
@@ -0,0 +1,4 @@
+/build_Fl {
+    pop
+    size .05 mul neg 0 (ffl) ashow
+} def
blob - 17c3c232d7409ed66ef6e051f60feacea5235485 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/LH
+++ /dev/null
@@ -1,166 +0,0 @@
-/build_lh {
-pop
-gsave
-size .0022 mul dup scale
-currentpoint translate
-
-16 177 moveto
-16 188 lineto
-21 193 lineto
-30 193 lineto
-34 189 lineto
-36 183 lineto
-36 180 lineto
-34 174 lineto
-27 170 lineto
-19 172 lineto
-16 177 lineto
-stroke
-
-38 194 moveto
-38 196 lineto
-53 199 lineto
-68 201 lineto
-83 202 lineto
-98 203 lineto
-113 204 lineto
-128 204 lineto
-143 205 lineto
-158 205 lineto
-173 205 lineto
-188 204 lineto
-203 203 lineto
-218 202 lineto
-233 200 lineto
-248 198 lineto
-263 196 lineto
-278 194 lineto
-293 190 lineto
-308 186 lineto
-323 181 lineto
-338 176 lineto
-353 168 lineto
-361 162 lineto
-364 153 lineto
-366 138 lineto
-367 126 lineto
-368 106 lineto
-369 80 lineto
-369 74 lineto
-368 60 lineto
-367 54 lineto
-362 43 lineto
-348 34 lineto
-333 28 lineto
-318 25 lineto
-303 26 lineto
-288 29 lineto
-273 31 lineto
-258 32 lineto
-243 32 lineto
-228 30 lineto
-213 27 lineto
-198 24 lineto
-183 23 lineto
-168 23 lineto
-153 27 lineto
-148 34 lineto
-148 47 lineto
-153 54 lineto
-168 58 lineto
-183 58 lineto
-198 58 lineto
-213 59 lineto
-226 60 lineto
-228 62 lineto
-228 67 lineto
-223 71 lineto
-208 71 lineto
-193 70 lineto
-178 70 lineto
-163 70 lineto
-148 70 lineto
-133 71 lineto
-123 76 lineto
-120 84 lineto
-120 91 lineto
-122 98 lineto
-129 104 lineto
-144 106 lineto
-159 107 lineto
-174 107 lineto
-189 107 lineto
-202 108 lineto
-204 110 lineto
-204 117 lineto
-201 119 lineto
-186 119 lineto
-171 119 lineto
-156 119 lineto
-141 119 lineto
-126 119 lineto
-111 121 lineto
-103 128 lineto
-101 137 lineto
-101 142 lineto
-103 150 lineto
-111 158 lineto
-126 161 lineto
-141 161 lineto
-156 162 lineto
-171 163 lineto
-186 163 lineto
-191 165 lineto
-192 167 lineto
-192 171 lineto
-190 174 lineto
-176 175 lineto
-161 175 lineto
-146 175 lineto
-131 174 lineto
-116 174 lineto
-101 174 lineto
-86 173 lineto
-71 172 lineto
-56 171 lineto
-41 171 lineto
-41 174 lineto
-43 178 lineto
-43 187 lineto
-38 194 lineto
-stroke
-
-373 169 moveto
-373 176 lineto
-375 182 lineto
-386 190 lineto
-401 193 lineto
-408 191 lineto
-411 185 lineto
-412 181 lineto
-414 167 lineto
-415 158 lineto
-416 144 lineto
-417 128 lineto
-418 110 lineto
-418 60 lineto
-417 45 lineto
-415 37 lineto
-409 34 lineto
-394 31 lineto
-381 35 lineto
-379 42 lineto
-379 52 lineto
-380 67 lineto
-380 77 lineto
-379 77 lineto
-378 106 lineto
-377 121 lineto
-376 133 lineto
-375 147 lineto
-374 158 lineto
-373 169 lineto
-
-stroke
-grestore
-} def
blob - 954e290dbfa304981784b9156345d3b44e861469 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/RC
+++ /dev/null
@@ -1,36 +0,0 @@
-%
-% This stuff has gotten terribly complicated - sorry.
-%
-
-currentdict /bvbbox known not {/bvbbox [0 0 0 0 0 0 0] def} if
-
-/build_rc {
-    pop
-    gsave
-	currentpoint translate newpath
-	bvbbox 6 get size ne {
-	    gsave
-		initgraphics
-		scaling scaling scale
-		0 0 moveto
-		(\357) false charpath flattenpath pathbbox 0 0 size bvbbox astore pop
-		0 1 idtransform dup mul exch dup mul add sqrt dup
-		bvbbox 1 get add bvbbox 1 3 -1 roll put
-		bvbbox 3 get exch sub bvbbox 3 3 -1 roll put
-		bvbbox 2 get bvbbox 0 get sub bvbbox 4 3 -1 roll put
-		bvbbox 2 get bvbbox 0 get add 2 div bvbbox 5 3 -1 roll put
-	    grestore
-	} if
-	bvbbox 2 get bvbbox 1 get moveto
-	bvbbox 2 get bvbbox 3 get lineto
-	bvbbox 5 get bvbbox 4 get 8 mul sub dup bvbbox 3 get lineto
-	bvbbox 1 get lineto closepath clip newpath
-	0 0 moveto (\357) show
-	bvbbox 5 get bvbbox 3 get moveto
-	bvbbox 4 get dup dup
-	8 mul neg 0 rlineto
-	0 exch neg rlineto
-	8 mul 0 rlineto
-	closepath clip eofill
-    grestore
-} def
blob - /dev/null
blob + 1cfdaf429f121634efef363f43f275483dac6499 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/S_l
@@ -0,0 +1,104 @@
+/build_Sl {
+pop
+gsave
+size .0022 mul dup scale
+currentpoint translate
+14 93 moveto
+14 96 lineto
+29 110 lineto
+44 121 lineto
+54 127 lineto
+55 132 lineto
+57 146 lineto
+59 157 lineto
+62 171 lineto
+66 186 lineto
+70 199 lineto
+75 213 lineto
+81 228 lineto
+88 243 lineto
+96 257 lineto
+106 272 lineto
+118 287 lineto
+133 300 lineto
+148 307 lineto
+163 308 lineto
+178 304 lineto
+191 293 lineto
+197 281 lineto
+198 277 lineto
+198 260 lineto
+194 246 lineto
+187 231 lineto
+179 217 lineto
+168 202 lineto
+155 187 lineto
+141 172 lineto
+126 158 lineto
+111 146 lineto
+96 136 lineto
+94 131 lineto
+93 123 lineto
+92 112 lineto
+91 103 lineto
+90 93 lineto
+89 81 lineto
+89 40 lineto
+92 28 lineto
+97 18 lineto
+108 10 lineto
+122 10 lineto
+134 18 lineto
+145 33 lineto
+152 48 lineto
+158 62 lineto
+168 58 lineto
+168 59 lineto
+163 45 lineto
+157 31 lineto
+148 16 lineto
+133 3 lineto
+118 -1 lineto
+103 0 lineto
+88 5 lineto
+73 18 lineto
+64 31 lineto
+58 46 lineto
+55 59 lineto
+53 73 lineto
+52 111 lineto
+37 101 lineto
+22 86 lineto
+14 93 lineto
+
+97 152 moveto
+97 153 lineto
+99 166 lineto
+101 178 lineto
+103 190 lineto
+106 205 lineto
+109 218 lineto
+113 232 lineto
+118 246 lineto
+124 261 lineto
+132 275 lineto
+144 290 lineto
+157 298 lineto
+171 298 lineto
+181 291 lineto
+186 283 lineto
+187 279 lineto
+187 264 lineto
+186 260 lineto
+181 246 lineto
+174 233 lineto
+165 218 lineto
+155 204 lineto
+142 190 lineto
+127 175 lineto
+112 162 lineto
+97 152 lineto
+
+eofill
+grestore
+} def
blob - 1cfdaf429f121634efef363f43f275483dac6499 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/Sl
+++ /dev/null
@@ -1,104 +0,0 @@
-/build_Sl {
-pop
-gsave
-size .0022 mul dup scale
-currentpoint translate
-14 93 moveto
-14 96 lineto
-29 110 lineto
-44 121 lineto
-54 127 lineto
-55 132 lineto
-57 146 lineto
-59 157 lineto
-62 171 lineto
-66 186 lineto
-70 199 lineto
-75 213 lineto
-81 228 lineto
-88 243 lineto
-96 257 lineto
-106 272 lineto
-118 287 lineto
-133 300 lineto
-148 307 lineto
-163 308 lineto
-178 304 lineto
-191 293 lineto
-197 281 lineto
-198 277 lineto
-198 260 lineto
-194 246 lineto
-187 231 lineto
-179 217 lineto
-168 202 lineto
-155 187 lineto
-141 172 lineto
-126 158 lineto
-111 146 lineto
-96 136 lineto
-94 131 lineto
-93 123 lineto
-92 112 lineto
-91 103 lineto
-90 93 lineto
-89 81 lineto
-89 40 lineto
-92 28 lineto
-97 18 lineto
-108 10 lineto
-122 10 lineto
-134 18 lineto
-145 33 lineto
-152 48 lineto
-158 62 lineto
-168 58 lineto
-168 59 lineto
-163 45 lineto
-157 31 lineto
-148 16 lineto
-133 3 lineto
-118 -1 lineto
-103 0 lineto
-88 5 lineto
-73 18 lineto
-64 31 lineto
-58 46 lineto
-55 59 lineto
-53 73 lineto
-52 111 lineto
-37 101 lineto
-22 86 lineto
-14 93 lineto
-
-97 152 moveto
-97 153 lineto
-99 166 lineto
-101 178 lineto
-103 190 lineto
-106 205 lineto
-109 218 lineto
-113 232 lineto
-118 246 lineto
-124 261 lineto
-132 275 lineto
-144 290 lineto
-157 298 lineto
-171 298 lineto
-181 291 lineto
-186 283 lineto
-187 279 lineto
-187 264 lineto
-186 260 lineto
-181 246 lineto
-174 233 lineto
-165 218 lineto
-155 204 lineto
-142 190 lineto
-127 175 lineto
-112 162 lineto
-97 152 lineto
-
-eofill
-grestore
-} def
blob - /dev/null
blob + 51ea35c5e33c470ea24e0c98c8f0b48525261dd4 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_b_x
@@ -0,0 +1,12 @@
+/build_bx {
+    pop
+    size 2 div /side exch def
+    currentpoint
+    newpath
+    moveto
+    0 side rlineto
+    side 0 rlineto
+    0 side neg rlineto
+    closepath
+    fill
+} def
blob - 51ea35c5e33c470ea24e0c98c8f0b48525261dd4 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/bx
+++ /dev/null
@@ -1,12 +0,0 @@
-/build_bx {
-    pop
-    size 2 div /side exch def
-    currentpoint
-    newpath
-    moveto
-    0 side rlineto
-    side 0 rlineto
-    0 side neg rlineto
-    closepath
-    fill
-} def
blob - /dev/null
blob + bf65f61d4490a7a0803a0c3444b42b765ffd9800 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_c_i
@@ -0,0 +1,8 @@
+/build_ci {
+    pop
+    size 3 mul 8 div /rad exch def
+    currentpoint
+    newpath
+    rad add exch rad add exch rad 0 360 arc
+    stroke
+} def
blob - bf65f61d4490a7a0803a0c3444b42b765ffd9800 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/ci
+++ /dev/null
@@ -1,8 +0,0 @@
-/build_ci {
-    pop
-    size 3 mul 8 div /rad exch def
-    currentpoint
-    newpath
-    rad add exch rad add exch rad 0 360 arc
-    stroke
-} def
blob - /dev/null
blob + e77bcdbbd942e9a10d9b99691410a1e2ef02eeda (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_f_f
@@ -0,0 +1,4 @@
+/build_ff {
+    pop
+    size .05 mul neg 0 (ff) ashow
+} def
blob - e77bcdbbd942e9a10d9b99691410a1e2ef02eeda (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/ff
+++ /dev/null
@@ -1,4 +0,0 @@
-/build_ff {
-    pop
-    size .05 mul neg 0 (ff) ashow
-} def
blob - /dev/null
blob + 4c651554a96d82b7f3204c1d4986de58e3cb2996 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_lH
@@ -0,0 +1,166 @@
+/build_lH {
+pop
+gsave
+size .0022 mul dup scale
+currentpoint translate
+
+16 177 moveto
+16 188 lineto
+21 193 lineto
+30 193 lineto
+34 189 lineto
+36 183 lineto
+36 180 lineto
+34 174 lineto
+27 170 lineto
+19 172 lineto
+16 177 lineto
+fill
+
+38 194 moveto
+38 196 lineto
+53 199 lineto
+68 201 lineto
+83 202 lineto
+98 203 lineto
+113 204 lineto
+128 204 lineto
+143 205 lineto
+158 205 lineto
+173 205 lineto
+188 204 lineto
+203 203 lineto
+218 202 lineto
+233 200 lineto
+248 198 lineto
+263 196 lineto
+278 194 lineto
+293 190 lineto
+308 186 lineto
+323 181 lineto
+338 176 lineto
+353 168 lineto
+361 162 lineto
+364 153 lineto
+366 138 lineto
+367 126 lineto
+368 106 lineto
+369 80 lineto
+369 74 lineto
+368 60 lineto
+367 54 lineto
+362 43 lineto
+348 34 lineto
+333 28 lineto
+318 25 lineto
+303 26 lineto
+288 29 lineto
+273 31 lineto
+258 32 lineto
+243 32 lineto
+228 30 lineto
+213 27 lineto
+198 24 lineto
+183 23 lineto
+168 23 lineto
+153 27 lineto
+148 34 lineto
+148 47 lineto
+153 54 lineto
+168 58 lineto
+183 58 lineto
+198 58 lineto
+213 59 lineto
+226 60 lineto
+228 62 lineto
+228 67 lineto
+223 71 lineto
+208 71 lineto
+193 70 lineto
+178 70 lineto
+163 70 lineto
+148 70 lineto
+133 71 lineto
+123 76 lineto
+120 84 lineto
+120 91 lineto
+122 98 lineto
+129 104 lineto
+144 106 lineto
+159 107 lineto
+174 107 lineto
+189 107 lineto
+202 108 lineto
+204 110 lineto
+204 117 lineto
+201 119 lineto
+186 119 lineto
+171 119 lineto
+156 119 lineto
+141 119 lineto
+126 119 lineto
+111 121 lineto
+103 128 lineto
+101 137 lineto
+101 142 lineto
+103 150 lineto
+111 158 lineto
+126 161 lineto
+141 161 lineto
+156 162 lineto
+171 163 lineto
+186 163 lineto
+191 165 lineto
+192 167 lineto
+192 171 lineto
+190 174 lineto
+176 175 lineto
+161 175 lineto
+146 175 lineto
+131 174 lineto
+116 174 lineto
+101 174 lineto
+86 173 lineto
+71 172 lineto
+56 171 lineto
+41 171 lineto
+41 174 lineto
+43 178 lineto
+43 187 lineto
+38 194 lineto
+fill
+
+373 169 moveto
+373 176 lineto
+375 182 lineto
+386 190 lineto
+401 193 lineto
+408 191 lineto
+411 185 lineto
+412 181 lineto
+414 167 lineto
+415 158 lineto
+416 144 lineto
+417 128 lineto
+418 110 lineto
+418 60 lineto
+417 45 lineto
+415 37 lineto
+409 34 lineto
+394 31 lineto
+381 35 lineto
+379 42 lineto
+379 52 lineto
+380 67 lineto
+380 77 lineto
+379 77 lineto
+378 106 lineto
+377 121 lineto
+376 133 lineto
+375 147 lineto
+374 158 lineto
+373 169 lineto
+
+fill
+grestore
+} def
blob - b0312c148e6697ebd25211eeb9a29ea350e2f629 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/lc
+++ /dev/null
@@ -1,36 +0,0 @@
-%
-% This stuff has gotten terribly complicated - sorry.
-%
-
-currentdict /bvbbox known not {/bvbbox [0 0 0 0 0 0 0] def} if
-
-/build_lc {
-    pop
-    gsave
-	currentpoint translate newpath
-	bvbbox 6 get size ne {
-	    gsave
-		initgraphics
-		scaling scaling scale
-		0 0 moveto
-		(\357) false charpath flattenpath pathbbox 0 0 size bvbbox astore pop
-		0 1 idtransform dup mul exch dup mul add sqrt dup
-		bvbbox 1 get add bvbbox 1 3 -1 roll put
-		bvbbox 3 get exch sub bvbbox 3 3 -1 roll put
-		bvbbox 2 get bvbbox 0 get sub bvbbox 4 3 -1 roll put
-		bvbbox 2 get bvbbox 0 get add 2 div bvbbox 5 3 -1 roll put
-	    grestore
-	} if
-	bvbbox 0 get bvbbox 1 get moveto
-	bvbbox 0 get bvbbox 3 get lineto
-	bvbbox 5 get bvbbox 4 get 8 mul add dup bvbbox 3 get lineto
-	bvbbox 1 get lineto closepath clip newpath
-	0 0 moveto (\357) show
-	bvbbox 5 get bvbbox 3 get moveto
-	bvbbox 4 get dup dup
-	8 mul 0 rlineto
-	0 exch neg rlineto
-	8 mul neg 0 rlineto
-	closepath clip eofill
-    grestore
-} def
blob - /dev/null
blob + b0312c148e6697ebd25211eeb9a29ea350e2f629 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_l_c
@@ -0,0 +1,36 @@
+%
+% This stuff has gotten terribly complicated - sorry.
+%
+
+currentdict /bvbbox known not {/bvbbox [0 0 0 0 0 0 0] def} if
+
+/build_lc {
+    pop
+    gsave
+	currentpoint translate newpath
+	bvbbox 6 get size ne {
+	    gsave
+		initgraphics
+		scaling scaling scale
+		0 0 moveto
+		(\357) false charpath flattenpath pathbbox 0 0 size bvbbox astore pop
+		0 1 idtransform dup mul exch dup mul add sqrt dup
+		bvbbox 1 get add bvbbox 1 3 -1 roll put
+		bvbbox 3 get exch sub bvbbox 3 3 -1 roll put
+		bvbbox 2 get bvbbox 0 get sub bvbbox 4 3 -1 roll put
+		bvbbox 2 get bvbbox 0 get add 2 div bvbbox 5 3 -1 roll put
+	    grestore
+	} if
+	bvbbox 0 get bvbbox 1 get moveto
+	bvbbox 0 get bvbbox 3 get lineto
+	bvbbox 5 get bvbbox 4 get 8 mul add dup bvbbox 3 get lineto
+	bvbbox 1 get lineto closepath clip newpath
+	0 0 moveto (\357) show
+	bvbbox 5 get bvbbox 3 get moveto
+	bvbbox 4 get dup dup
+	8 mul 0 rlineto
+	0 exch neg rlineto
+	8 mul neg 0 rlineto
+	closepath clip eofill
+    grestore
+} def
blob - 37452549c52ec62c4c19aaae5e639a74d9f31297 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/lf
+++ /dev/null
@@ -1,36 +0,0 @@
-%
-% This stuff has gotten terribly complicated - sorry.
-%
-
-currentdict /bvbbox known not {/bvbbox [0 0 0 0 0 0 0] def} if
-
-/build_lf {
-    pop
-    gsave
-	currentpoint translate newpath
-	bvbbox 6 get size ne {
-	    gsave
-		initgraphics
-		scaling scaling scale
-		0 0 moveto
-		(\357) false charpath flattenpath pathbbox 0 0 size bvbbox astore pop
-		0 1 idtransform dup mul exch dup mul add sqrt dup
-		bvbbox 1 get add bvbbox 1 3 -1 roll put
-		bvbbox 3 get exch sub bvbbox 3 3 -1 roll put
-		bvbbox 2 get bvbbox 0 get sub bvbbox 4 3 -1 roll put
-		bvbbox 2 get bvbbox 0 get add 2 div bvbbox 5 3 -1 roll put
-	    grestore
-	} if
-	bvbbox 0 get bvbbox 1 get moveto
-	bvbbox 0 get bvbbox 3 get lineto
-	bvbbox 5 get bvbbox 4 get 8 mul add dup bvbbox 3 get lineto
-	bvbbox 1 get lineto closepath clip newpath
-	0 0 moveto (\357) show
-	bvbbox 5 get bvbbox 1 get moveto
-	bvbbox 4 get dup dup
-	8 mul 0 rlineto
-	0 exch rlineto
-	8 mul neg 0 rlineto
-	closepath clip eofill
-    grestore
-} def
blob - /dev/null
blob + 37452549c52ec62c4c19aaae5e639a74d9f31297 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_l_f
@@ -0,0 +1,36 @@
+%
+% This stuff has gotten terribly complicated - sorry.
+%
+
+currentdict /bvbbox known not {/bvbbox [0 0 0 0 0 0 0] def} if
+
+/build_lf {
+    pop
+    gsave
+	currentpoint translate newpath
+	bvbbox 6 get size ne {
+	    gsave
+		initgraphics
+		scaling scaling scale
+		0 0 moveto
+		(\357) false charpath flattenpath pathbbox 0 0 size bvbbox astore pop
+		0 1 idtransform dup mul exch dup mul add sqrt dup
+		bvbbox 1 get add bvbbox 1 3 -1 roll put
+		bvbbox 3 get exch sub bvbbox 3 3 -1 roll put
+		bvbbox 2 get bvbbox 0 get sub bvbbox 4 3 -1 roll put
+		bvbbox 2 get bvbbox 0 get add 2 div bvbbox 5 3 -1 roll put
+	    grestore
+	} if
+	bvbbox 0 get bvbbox 1 get moveto
+	bvbbox 0 get bvbbox 3 get lineto
+	bvbbox 5 get bvbbox 4 get 8 mul add dup bvbbox 3 get lineto
+	bvbbox 1 get lineto closepath clip newpath
+	0 0 moveto (\357) show
+	bvbbox 5 get bvbbox 1 get moveto
+	bvbbox 4 get dup dup
+	8 mul 0 rlineto
+	0 exch rlineto
+	8 mul neg 0 rlineto
+	closepath clip eofill
+    grestore
+} def
blob - b0bf31396d6c1c3dfc0d1a44050ed5700a9f279a (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/ob
+++ /dev/null
@@ -1,8 +0,0 @@
-/build_ob {
-    pop
-    size 3 mul 16 div /rad exch def
-    currentpoint
-    newpath
-    rad add exch rad add exch rad 0 360 arc
-    stroke
-} def
blob - /dev/null
blob + 17c3c232d7409ed66ef6e051f60feacea5235485 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_l_h
@@ -0,0 +1,166 @@
+/build_lh {
+pop
+gsave
+size .0022 mul dup scale
+currentpoint translate
+
+16 177 moveto
+16 188 lineto
+21 193 lineto
+30 193 lineto
+34 189 lineto
+36 183 lineto
+36 180 lineto
+34 174 lineto
+27 170 lineto
+19 172 lineto
+16 177 lineto
+stroke
+
+38 194 moveto
+38 196 lineto
+53 199 lineto
+68 201 lineto
+83 202 lineto
+98 203 lineto
+113 204 lineto
+128 204 lineto
+143 205 lineto
+158 205 lineto
+173 205 lineto
+188 204 lineto
+203 203 lineto
+218 202 lineto
+233 200 lineto
+248 198 lineto
+263 196 lineto
+278 194 lineto
+293 190 lineto
+308 186 lineto
+323 181 lineto
+338 176 lineto
+353 168 lineto
+361 162 lineto
+364 153 lineto
+366 138 lineto
+367 126 lineto
+368 106 lineto
+369 80 lineto
+369 74 lineto
+368 60 lineto
+367 54 lineto
+362 43 lineto
+348 34 lineto
+333 28 lineto
+318 25 lineto
+303 26 lineto
+288 29 lineto
+273 31 lineto
+258 32 lineto
+243 32 lineto
+228 30 lineto
+213 27 lineto
+198 24 lineto
+183 23 lineto
+168 23 lineto
+153 27 lineto
+148 34 lineto
+148 47 lineto
+153 54 lineto
+168 58 lineto
+183 58 lineto
+198 58 lineto
+213 59 lineto
+226 60 lineto
+228 62 lineto
+228 67 lineto
+223 71 lineto
+208 71 lineto
+193 70 lineto
+178 70 lineto
+163 70 lineto
+148 70 lineto
+133 71 lineto
+123 76 lineto
+120 84 lineto
+120 91 lineto
+122 98 lineto
+129 104 lineto
+144 106 lineto
+159 107 lineto
+174 107 lineto
+189 107 lineto
+202 108 lineto
+204 110 lineto
+204 117 lineto
+201 119 lineto
+186 119 lineto
+171 119 lineto
+156 119 lineto
+141 119 lineto
+126 119 lineto
+111 121 lineto
+103 128 lineto
+101 137 lineto
+101 142 lineto
+103 150 lineto
+111 158 lineto
+126 161 lineto
+141 161 lineto
+156 162 lineto
+171 163 lineto
+186 163 lineto
+191 165 lineto
+192 167 lineto
+192 171 lineto
+190 174 lineto
+176 175 lineto
+161 175 lineto
+146 175 lineto
+131 174 lineto
+116 174 lineto
+101 174 lineto
+86 173 lineto
+71 172 lineto
+56 171 lineto
+41 171 lineto
+41 174 lineto
+43 178 lineto
+43 187 lineto
+38 194 lineto
+stroke
+
+373 169 moveto
+373 176 lineto
+375 182 lineto
+386 190 lineto
+401 193 lineto
+408 191 lineto
+411 185 lineto
+412 181 lineto
+414 167 lineto
+415 158 lineto
+416 144 lineto
+417 128 lineto
+418 110 lineto
+418 60 lineto
+417 45 lineto
+415 37 lineto
+409 34 lineto
+394 31 lineto
+381 35 lineto
+379 42 lineto
+379 52 lineto
+380 67 lineto
+380 77 lineto
+379 77 lineto
+378 106 lineto
+377 121 lineto
+376 133 lineto
+375 147 lineto
+374 158 lineto
+373 169 lineto
+
+stroke
+grestore
+} def
blob - bc8cac8b25d7723232be0741660e6a813fc8ee4e (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/pw
+++ /dev/null
@@ -1,140 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
-%%BoundingBox: 1 -1 199 258
-%%Creator: MetaPost
-%%CreationDate: 1994.06.28:1046
-/pjw1{
-37 211 moveto
-37 206 lineto
-41 206 lineto
-43 212 lineto
-44 212 46 212 46 210 curveto
-41 198 35 186 35 174 curveto
-50 174 66 175 81 173 curveto
-81 171 lineto
-61 171 lineto
-61 170 lineto
-86 170 lineto
-88 168 89 166 90 164 curveto
-101 164 111 169 122 172 curveto
-139 172 lineto
-125 194 115 219 93 233 curveto
-87 234 80 236 74 235 curveto
-64 229 54 224 46 217 curveto
-45 217 44 217 44 218 curveto
-61 242 lineto
-67 248 72 258 82 258 curveto
-94 257 107 256 119 254 curveto
-134 247 147 239 161 231 curveto
-180 231 lineto
-180 226 174 228 171 226 curveto
-178 220 185 214 192 207 curveto
-189 207 187 207 187 205 curveto
-190 205 193 204 196 203 curveto
-198 193 202 181 193 181 curveto
-193 177 198 175 198 171 curveto
-196 171 194 171 194 169 curveto
-195 165 196 161 198 157 curveto
-194 147 193 135 184 130 curveto
-180 130 lineto
-169 107 lineto
-171 103 176 104 180 104 curveto
-180 93 176 81 166 76 curveto
-162 76 157 77 155 80 curveto
-153 80 152 80 151 80 curveto
-151 71 lineto
-155 71 lineto
-155 68 153 65 152 63 curveto
-145 62 lineto
-141 47 144 31 144 15 curveto
-141 0 lineto
-124 0 107 -1 90 1 curveto
-72 36 lineto
-86 48 105 49 122 54 curveto
-122 54 lineto
-110 61 97 65 84 69 curveto
-81 71 78 73 78 76 curveto
-86 77 93 77 101 77 curveto
-106 79 113 79 113 84 curveto
-95 86 77 87 59 89 curveto
-59 92 61 95 64 95 curveto
-69 88 80 92 89 92 curveto
-95 92 104 90 104 96 curveto
-93 97 lineto
-87 103 82 109 77 115 curveto
-89 116 101 117 113 118 curveto
-99 154 lineto
-90 154 87 144 82 138 curveto
-77 132 73 124 66 120 curveto
-63 120 59 119 59 122 curveto
-62 123 66 123 66 126 curveto
-58 126 50 127 42 128 curveto
-34 137 lineto
-34 140 34 144 31 144 curveto
-30 135 31 125 31 116 curveto
-25 116 22 122 19 127 curveto
-16 131 15 136 12 139 curveto
-5 139 15 127 9 127 curveto
-3 133 3 142 1 150 curveto
-1 158 6 166 9 173 curveto
-18 186 25 199 35 211 curveto
-closepath
-} bind def
-/pjw2{
-27 112 moveto
-40 75 lineto
-40 74 38 73 37 73 curveto
-25 87 lineto
-17 112 lineto
-closepath 
-43 154 moveto
-43 167 lineto
-41 167 38 167 39 169 curveto
-57 171 lineto
-74 167 lineto
-74 166 73 165 72 165 curveto
-64 164 56 162 49 158 curveto
-48 154 45 149 49 149 curveto
-51 151 53 152 55 154 curveto
-87 153 lineto
-87 144 80 136 74 129 curveto
-64 128 53 126 43 129 curveto
-37 135 lineto
-37 138 36 141 36 145 curveto
-40 145 lineto
-41 148 42 151 43 154 curveto closepath 
-108 145 moveto
-119 145 130 143 141 140 curveto
-146 134 155 129 149 126 curveto
-138 124 126 123 116 129 curveto
-113 134 108 139 108 145 curveto
-closepath 
-114 96 moveto
-116 103 118 110 121 117 curveto
-128 117 134 112 139 107 curveto
-139 101 137 96 132 93 curveto
-closepath 
-134 162 moveto
-115 162 lineto
-115 162 115 163 115 164 curveto
-134 164 lineto
-closepath 
-117 73 moveto
-115 78 121 81 125 85 curveto
-129 85 lineto
-130 83 131 81 131 79 curveto
-128 74 lineto
-124 74 121 73 117 73 curveto closepath 
-141 119 moveto
-134 119 126 117 126 123 curveto
-131 123 136 122 141 121 curveto
-closepath
-} bind def
-
-/build_pw {
-pop
-gsave
-size .0028 mul dup scale
-currentpoint translate
-pjw1 pjw2 eofill
-grestore
-} bind def
blob - /dev/null
blob + b0bf31396d6c1c3dfc0d1a44050ed5700a9f279a (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_o_b
@@ -0,0 +1,8 @@
+/build_ob {
+    pop
+    size 3 mul 16 div /rad exch def
+    currentpoint
+    newpath
+    rad add exch rad add exch rad 0 360 arc
+    stroke
+} def
blob - 1e53e9a683d63a6c2be7aaa2c433bad0108afd14 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/rH
+++ /dev/null
@@ -1,157 +0,0 @@
-/build_rh {
-pop
-gsave
-size .0022 mul dup scale
-currentpoint translate
-
-15 66 moveto
-15 86 lineto
-16 131 lineto
-17 146 lineto
-18 158 lineto
-19 167 lineto
-21 181 lineto
-24 190 lineto
-34 193 lineto
-49 189 lineto
-58 182 lineto
-60 177 lineto
-60 166 lineto
-59 156 lineto
-58 143 lineto
-57 130 lineto
-56 117 lineto
-55 102 lineto
-54 42 lineto
-53 39 lineto
-49 35 lineto
-34 34 lineto
-19 39 lineto
-16 47 lineto
-15 66 lineto
-stroke
-
-65 60 moveto
-65 111 lineto
-66 127 lineto
-67 139 lineto
-69 153 lineto
-72 163 lineto
-83 171 lineto
-98 177 lineto
-113 182 lineto
-128 187 lineto
-143 190 lineto
-158 194 lineto
-173 196 lineto
-188 199 lineto
-203 201 lineto
-218 203 lineto
-233 205 lineto
-248 205 lineto
-263 206 lineto
-278 206 lineto
-293 206 lineto
-308 206 lineto
-323 206 lineto
-338 205 lineto
-353 203 lineto
-368 202 lineto
-383 200 lineto
-394 197 lineto
-389 190 lineto
-389 180 lineto
-391 176 lineto
-391 173 lineto
-380 173 lineto
-365 173 lineto
-350 174 lineto
-335 175 lineto
-320 176 lineto
-305 176 lineto
-290 176 lineto
-275 177 lineto
-260 177 lineto
-245 177 lineto
-240 173 lineto
-240 170 lineto
-245 165 lineto
-260 164 lineto
-275 164 lineto
-290 164 lineto
-305 163 lineto
-320 160 lineto
-327 155 lineto
-330 149 lineto
-330 134 lineto
-328 129 lineto
-323 124 lineto
-309 121 lineto
-294 121 lineto
-279 121 lineto
-264 121 lineto
-249 121 lineto
-234 121 lineto
-228 118 lineto
-228 112 lineto
-234 109 lineto
-249 109 lineto
-264 109 lineto
-279 108 lineto
-294 108 lineto
-306 104 lineto
-311 97 lineto
-312 91 lineto
-312 88 lineto
-311 82 lineto
-305 74 lineto
-290 72 lineto
-275 72 lineto
-260 72 lineto
-245 73 lineto
-230 73 lineto
-215 73 lineto
-205 70 lineto
-205 63 lineto
-217 60 lineto
-232 60 lineto
-247 60 lineto
-262 60 lineto
-277 57 lineto
-283 52 lineto
-285 44 lineto
-285 41 lineto
-284 35 lineto
-280 30 lineto
-268 26 lineto
-253 25 lineto
-238 26 lineto
-223 28 lineto
-208 31 lineto
-193 33 lineto
-178 34 lineto
-163 33 lineto
-148 31 lineto
-133 28 lineto
-118 27 lineto
-103 28 lineto
-88 34 lineto
-73 43 lineto
-67 52 lineto
-65 60 lineto
-stroke
-
-396 180 moveto
-396 188 lineto
-399 194 lineto
-410 196 lineto
-416 190 lineto
-416 180 lineto
-415 177 lineto
-411 173 lineto
-400 173 lineto
-396 180 lineto
-stroke
-
-grestore
-} def
blob - /dev/null
blob + bc8cac8b25d7723232be0741660e6a813fc8ee4e (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_p_w
@@ -0,0 +1,140 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%BoundingBox: 1 -1 199 258
+%%Creator: MetaPost
+%%CreationDate: 1994.06.28:1046
+/pjw1{
+37 211 moveto
+37 206 lineto
+41 206 lineto
+43 212 lineto
+44 212 46 212 46 210 curveto
+41 198 35 186 35 174 curveto
+50 174 66 175 81 173 curveto
+81 171 lineto
+61 171 lineto
+61 170 lineto
+86 170 lineto
+88 168 89 166 90 164 curveto
+101 164 111 169 122 172 curveto
+139 172 lineto
+125 194 115 219 93 233 curveto
+87 234 80 236 74 235 curveto
+64 229 54 224 46 217 curveto
+45 217 44 217 44 218 curveto
+61 242 lineto
+67 248 72 258 82 258 curveto
+94 257 107 256 119 254 curveto
+134 247 147 239 161 231 curveto
+180 231 lineto
+180 226 174 228 171 226 curveto
+178 220 185 214 192 207 curveto
+189 207 187 207 187 205 curveto
+190 205 193 204 196 203 curveto
+198 193 202 181 193 181 curveto
+193 177 198 175 198 171 curveto
+196 171 194 171 194 169 curveto
+195 165 196 161 198 157 curveto
+194 147 193 135 184 130 curveto
+180 130 lineto
+169 107 lineto
+171 103 176 104 180 104 curveto
+180 93 176 81 166 76 curveto
+162 76 157 77 155 80 curveto
+153 80 152 80 151 80 curveto
+151 71 lineto
+155 71 lineto
+155 68 153 65 152 63 curveto
+145 62 lineto
+141 47 144 31 144 15 curveto
+141 0 lineto
+124 0 107 -1 90 1 curveto
+72 36 lineto
+86 48 105 49 122 54 curveto
+122 54 lineto
+110 61 97 65 84 69 curveto
+81 71 78 73 78 76 curveto
+86 77 93 77 101 77 curveto
+106 79 113 79 113 84 curveto
+95 86 77 87 59 89 curveto
+59 92 61 95 64 95 curveto
+69 88 80 92 89 92 curveto
+95 92 104 90 104 96 curveto
+93 97 lineto
+87 103 82 109 77 115 curveto
+89 116 101 117 113 118 curveto
+99 154 lineto
+90 154 87 144 82 138 curveto
+77 132 73 124 66 120 curveto
+63 120 59 119 59 122 curveto
+62 123 66 123 66 126 curveto
+58 126 50 127 42 128 curveto
+34 137 lineto
+34 140 34 144 31 144 curveto
+30 135 31 125 31 116 curveto
+25 116 22 122 19 127 curveto
+16 131 15 136 12 139 curveto
+5 139 15 127 9 127 curveto
+3 133 3 142 1 150 curveto
+1 158 6 166 9 173 curveto
+18 186 25 199 35 211 curveto
+closepath
+} bind def
+/pjw2{
+27 112 moveto
+40 75 lineto
+40 74 38 73 37 73 curveto
+25 87 lineto
+17 112 lineto
+closepath 
+43 154 moveto
+43 167 lineto
+41 167 38 167 39 169 curveto
+57 171 lineto
+74 167 lineto
+74 166 73 165 72 165 curveto
+64 164 56 162 49 158 curveto
+48 154 45 149 49 149 curveto
+51 151 53 152 55 154 curveto
+87 153 lineto
+87 144 80 136 74 129 curveto
+64 128 53 126 43 129 curveto
+37 135 lineto
+37 138 36 141 36 145 curveto
+40 145 lineto
+41 148 42 151 43 154 curveto closepath 
+108 145 moveto
+119 145 130 143 141 140 curveto
+146 134 155 129 149 126 curveto
+138 124 126 123 116 129 curveto
+113 134 108 139 108 145 curveto
+closepath 
+114 96 moveto
+116 103 118 110 121 117 curveto
+128 117 134 112 139 107 curveto
+139 101 137 96 132 93 curveto
+closepath 
+134 162 moveto
+115 162 lineto
+115 162 115 163 115 164 curveto
+134 164 lineto
+closepath 
+117 73 moveto
+115 78 121 81 125 85 curveto
+129 85 lineto
+130 83 131 81 131 79 curveto
+128 74 lineto
+124 74 121 73 117 73 curveto closepath 
+141 119 moveto
+134 119 126 117 126 123 curveto
+131 123 136 122 141 121 curveto
+closepath
+} bind def
+
+/build_pw {
+pop
+gsave
+size .0028 mul dup scale
+currentpoint translate
+pjw1 pjw2 eofill
+grestore
+} bind def
blob - d13d85bca776992900ed2267042210db9a5f29a2 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/rf
+++ /dev/null
@@ -1,36 +0,0 @@
-%
-% This stuff has gotten terribly complicated - sorry.
-%
-
-currentdict /bvbbox known not {/bvbbox [0 0 0 0 0 0 0] def} if
-
-/build_rf {
-    pop
-    gsave
-	currentpoint translate newpath
-	bvbbox 6 get size ne {
-	    gsave
-		initgraphics
-		scaling scaling scale
-		0 0 moveto
-		(\357) false charpath flattenpath pathbbox 0 0 size bvbbox astore pop
-		0 1 idtransform dup mul exch dup mul add sqrt dup
-		bvbbox 1 get add bvbbox 1 3 -1 roll put
-		bvbbox 3 get exch sub bvbbox 3 3 -1 roll put
-		bvbbox 2 get bvbbox 0 get sub bvbbox 4 3 -1 roll put
-		bvbbox 2 get bvbbox 0 get add 2 div bvbbox 5 3 -1 roll put
-	    grestore
-	} if
-	bvbbox 2 get bvbbox 1 get moveto
-	bvbbox 2 get bvbbox 3 get lineto
-	bvbbox 5 get bvbbox 4 get 8 mul sub dup bvbbox 3 get lineto
-	bvbbox 1 get lineto closepath clip newpath
-	0 0 moveto (\357) show
-	bvbbox 5 get bvbbox 1 get moveto
-	bvbbox 4 get dup dup
-	8 mul neg 0 rlineto
-	0 exch rlineto
-	8 mul 0 rlineto
-	closepath clip eofill
-    grestore
-} def
blob - /dev/null
blob + 798c114a20ef950016ce5cab11ecaf5593fa2c30 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_rH
@@ -0,0 +1,157 @@
+/build_rH {
+pop
+gsave
+size .0022 mul dup scale
+currentpoint translate
+
+15 66 moveto
+15 86 lineto
+16 131 lineto
+17 146 lineto
+18 158 lineto
+19 167 lineto
+21 181 lineto
+24 190 lineto
+34 193 lineto
+49 189 lineto
+58 182 lineto
+60 177 lineto
+60 166 lineto
+59 156 lineto
+58 143 lineto
+57 130 lineto
+56 117 lineto
+55 102 lineto
+54 42 lineto
+53 39 lineto
+49 35 lineto
+34 34 lineto
+19 39 lineto
+16 47 lineto
+15 66 lineto
+fill
+
+65 60 moveto
+65 111 lineto
+66 127 lineto
+67 139 lineto
+69 153 lineto
+72 163 lineto
+83 171 lineto
+98 177 lineto
+113 182 lineto
+128 187 lineto
+143 190 lineto
+158 194 lineto
+173 196 lineto
+188 199 lineto
+203 201 lineto
+218 203 lineto
+233 205 lineto
+248 205 lineto
+263 206 lineto
+278 206 lineto
+293 206 lineto
+308 206 lineto
+323 206 lineto
+338 205 lineto
+353 203 lineto
+368 202 lineto
+383 200 lineto
+394 197 lineto
+389 190 lineto
+389 180 lineto
+391 176 lineto
+391 173 lineto
+380 173 lineto
+365 173 lineto
+350 174 lineto
+335 175 lineto
+320 176 lineto
+305 176 lineto
+290 176 lineto
+275 177 lineto
+260 177 lineto
+245 177 lineto
+240 173 lineto
+240 170 lineto
+245 165 lineto
+260 164 lineto
+275 164 lineto
+290 164 lineto
+305 163 lineto
+320 160 lineto
+327 155 lineto
+330 149 lineto
+330 134 lineto
+328 129 lineto
+323 124 lineto
+309 121 lineto
+294 121 lineto
+279 121 lineto
+264 121 lineto
+249 121 lineto
+234 121 lineto
+228 118 lineto
+228 112 lineto
+234 109 lineto
+249 109 lineto
+264 109 lineto
+279 108 lineto
+294 108 lineto
+306 104 lineto
+311 97 lineto
+312 91 lineto
+312 88 lineto
+311 82 lineto
+305 74 lineto
+290 72 lineto
+275 72 lineto
+260 72 lineto
+245 73 lineto
+230 73 lineto
+215 73 lineto
+205 70 lineto
+205 63 lineto
+217 60 lineto
+232 60 lineto
+247 60 lineto
+262 60 lineto
+277 57 lineto
+283 52 lineto
+285 44 lineto
+285 41 lineto
+284 35 lineto
+280 30 lineto
+268 26 lineto
+253 25 lineto
+238 26 lineto
+223 28 lineto
+208 31 lineto
+193 33 lineto
+178 34 lineto
+163 33 lineto
+148 31 lineto
+133 28 lineto
+118 27 lineto
+103 28 lineto
+88 34 lineto
+73 43 lineto
+67 52 lineto
+65 60 lineto
+fill
+
+396 180 moveto
+396 188 lineto
+399 194 lineto
+410 196 lineto
+416 190 lineto
+416 180 lineto
+415 177 lineto
+411 173 lineto
+400 173 lineto
+396 180 lineto
+fill
+
+grestore
+} def
blob - 32486e8866303ab09d318f57be7b8578669edf88 (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/sq
+++ /dev/null
@@ -1,12 +0,0 @@
-/build_sq {
-    pop
-    size 2 div /side exch def
-    currentpoint
-    newpath
-    moveto
-    0 side rlineto
-    side 0 rlineto
-    0 side neg rlineto
-    closepath
-    font B eq {fill} {stroke} ifelse
-} def
blob - /dev/null
blob + 954e290dbfa304981784b9156345d3b44e861469 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_r_c
@@ -0,0 +1,36 @@
+%
+% This stuff has gotten terribly complicated - sorry.
+%
+
+currentdict /bvbbox known not {/bvbbox [0 0 0 0 0 0 0] def} if
+
+/build_rc {
+    pop
+    gsave
+	currentpoint translate newpath
+	bvbbox 6 get size ne {
+	    gsave
+		initgraphics
+		scaling scaling scale
+		0 0 moveto
+		(\357) false charpath flattenpath pathbbox 0 0 size bvbbox astore pop
+		0 1 idtransform dup mul exch dup mul add sqrt dup
+		bvbbox 1 get add bvbbox 1 3 -1 roll put
+		bvbbox 3 get exch sub bvbbox 3 3 -1 roll put
+		bvbbox 2 get bvbbox 0 get sub bvbbox 4 3 -1 roll put
+		bvbbox 2 get bvbbox 0 get add 2 div bvbbox 5 3 -1 roll put
+	    grestore
+	} if
+	bvbbox 2 get bvbbox 1 get moveto
+	bvbbox 2 get bvbbox 3 get lineto
+	bvbbox 5 get bvbbox 4 get 8 mul sub dup bvbbox 3 get lineto
+	bvbbox 1 get lineto closepath clip newpath
+	0 0 moveto (\357) show
+	bvbbox 5 get bvbbox 3 get moveto
+	bvbbox 4 get dup dup
+	8 mul neg 0 rlineto
+	0 exch neg rlineto
+	8 mul 0 rlineto
+	closepath clip eofill
+    grestore
+} def
blob - /dev/null
blob + d13d85bca776992900ed2267042210db9a5f29a2 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_r_f
@@ -0,0 +1,36 @@
+%
+% This stuff has gotten terribly complicated - sorry.
+%
+
+currentdict /bvbbox known not {/bvbbox [0 0 0 0 0 0 0] def} if
+
+/build_rf {
+    pop
+    gsave
+	currentpoint translate newpath
+	bvbbox 6 get size ne {
+	    gsave
+		initgraphics
+		scaling scaling scale
+		0 0 moveto
+		(\357) false charpath flattenpath pathbbox 0 0 size bvbbox astore pop
+		0 1 idtransform dup mul exch dup mul add sqrt dup
+		bvbbox 1 get add bvbbox 1 3 -1 roll put
+		bvbbox 3 get exch sub bvbbox 3 3 -1 roll put
+		bvbbox 2 get bvbbox 0 get sub bvbbox 4 3 -1 roll put
+		bvbbox 2 get bvbbox 0 get add 2 div bvbbox 5 3 -1 roll put
+	    grestore
+	} if
+	bvbbox 2 get bvbbox 1 get moveto
+	bvbbox 2 get bvbbox 3 get lineto
+	bvbbox 5 get bvbbox 4 get 8 mul sub dup bvbbox 3 get lineto
+	bvbbox 1 get lineto closepath clip newpath
+	0 0 moveto (\357) show
+	bvbbox 5 get bvbbox 1 get moveto
+	bvbbox 4 get dup dup
+	8 mul neg 0 rlineto
+	0 exch rlineto
+	8 mul 0 rlineto
+	closepath clip eofill
+    grestore
+} def
blob - c08ed447f6fab0dcf122cb3cce9dc893532d569c (mode 644)
blob + /dev/null
--- troff/font/devutf/charlib/☺
+++ /dev/null
@@ -1,12 +0,0 @@
-/build_X263a{
-    pop
-    gsave
-    currentpoint translate 7.44 7.68 scale ptsize dup scale
-    31 32 true [31 0 0 -32 2 31]
-    {< 0007c000 007ff800 01c00600 03000180 060000c0 08000060 18000030 30000018
-    20000008 4000000c 40183004 c0183006 80183002 80000002 80000002 80000002
-    860000c2 8e0000e2 8e0000e2 9a0001e2 c3000186 41800304 41c0060c 60f01c08
-    303ff818 101fe030 08000060 040000c0 03000180 01c00700 007cfc00 000fe000
-    >} imagemask
-    grestore
-} def
blob - /dev/null
blob + 1e53e9a683d63a6c2be7aaa2c433bad0108afd14 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_r_h
@@ -0,0 +1,157 @@
+/build_rh {
+pop
+gsave
+size .0022 mul dup scale
+currentpoint translate
+
+15 66 moveto
+15 86 lineto
+16 131 lineto
+17 146 lineto
+18 158 lineto
+19 167 lineto
+21 181 lineto
+24 190 lineto
+34 193 lineto
+49 189 lineto
+58 182 lineto
+60 177 lineto
+60 166 lineto
+59 156 lineto
+58 143 lineto
+57 130 lineto
+56 117 lineto
+55 102 lineto
+54 42 lineto
+53 39 lineto
+49 35 lineto
+34 34 lineto
+19 39 lineto
+16 47 lineto
+15 66 lineto
+stroke
+
+65 60 moveto
+65 111 lineto
+66 127 lineto
+67 139 lineto
+69 153 lineto
+72 163 lineto
+83 171 lineto
+98 177 lineto
+113 182 lineto
+128 187 lineto
+143 190 lineto
+158 194 lineto
+173 196 lineto
+188 199 lineto
+203 201 lineto
+218 203 lineto
+233 205 lineto
+248 205 lineto
+263 206 lineto
+278 206 lineto
+293 206 lineto
+308 206 lineto
+323 206 lineto
+338 205 lineto
+353 203 lineto
+368 202 lineto
+383 200 lineto
+394 197 lineto
+389 190 lineto
+389 180 lineto
+391 176 lineto
+391 173 lineto
+380 173 lineto
+365 173 lineto
+350 174 lineto
+335 175 lineto
+320 176 lineto
+305 176 lineto
+290 176 lineto
+275 177 lineto
+260 177 lineto
+245 177 lineto
+240 173 lineto
+240 170 lineto
+245 165 lineto
+260 164 lineto
+275 164 lineto
+290 164 lineto
+305 163 lineto
+320 160 lineto
+327 155 lineto
+330 149 lineto
+330 134 lineto
+328 129 lineto
+323 124 lineto
+309 121 lineto
+294 121 lineto
+279 121 lineto
+264 121 lineto
+249 121 lineto
+234 121 lineto
+228 118 lineto
+228 112 lineto
+234 109 lineto
+249 109 lineto
+264 109 lineto
+279 108 lineto
+294 108 lineto
+306 104 lineto
+311 97 lineto
+312 91 lineto
+312 88 lineto
+311 82 lineto
+305 74 lineto
+290 72 lineto
+275 72 lineto
+260 72 lineto
+245 73 lineto
+230 73 lineto
+215 73 lineto
+205 70 lineto
+205 63 lineto
+217 60 lineto
+232 60 lineto
+247 60 lineto
+262 60 lineto
+277 57 lineto
+283 52 lineto
+285 44 lineto
+285 41 lineto
+284 35 lineto
+280 30 lineto
+268 26 lineto
+253 25 lineto
+238 26 lineto
+223 28 lineto
+208 31 lineto
+193 33 lineto
+178 34 lineto
+163 33 lineto
+148 31 lineto
+133 28 lineto
+118 27 lineto
+103 28 lineto
+88 34 lineto
+73 43 lineto
+67 52 lineto
+65 60 lineto
+stroke
+
+396 180 moveto
+396 188 lineto
+399 194 lineto
+410 196 lineto
+416 190 lineto
+416 180 lineto
+415 177 lineto
+411 173 lineto
+400 173 lineto
+396 180 lineto
+stroke
+
+grestore
+} def
blob - /dev/null
blob + 32486e8866303ab09d318f57be7b8578669edf88 (mode 644)
--- /dev/null
+++ troff/font/devutf/charlib/_s_q
@@ -0,0 +1,12 @@
+/build_sq {
+    pop
+    size 2 div /side exch def
+    currentpoint
+    newpath
+    moveto
+    0 side rlineto
+    side 0 rlineto
+    0 side neg rlineto
+    closepath
+    font B eq {fill} {stroke} ifelse
+} def