diff options
author | Thomas E. Dickey <dickey@invisible-island.net> | 1997-10-27 19:05:04 -0500 |
---|---|---|
committer | Thomas E. Dickey <dickey@invisible-island.net> | 1997-10-27 19:05:04 -0500 |
commit | 8f8c57cc7c0e876cd291e2b4de23a52e060b30ba (patch) | |
tree | b813d59380c9db4f7b59bf8a5a965aa606627183 /src/chrtrans | |
parent | cbcc3a1e1a82b01eea370bf7841e6b5f4d1e46c1 (diff) | |
download | lynx-snapshots-8f8c57cc7c0e876cd291e2b4de23a52e060b30ba.tar.gz |
snapshot of project "lynx", label v2-7-1ac_0-89
Diffstat (limited to 'src/chrtrans')
-rw-r--r-- | src/chrtrans/Makefile.old (renamed from src/chrtrans/Makefile) | 0 | ||||
-rw-r--r-- | src/chrtrans/README.format | 23 | ||||
-rw-r--r-- | src/chrtrans/README.tables | 5 | ||||
-rw-r--r-- | src/chrtrans/UCkd.h | 2 | ||||
-rw-r--r-- | src/chrtrans/def7_uni.tbl | 203 | ||||
-rw-r--r-- | src/chrtrans/iso01_uni.tbl | 427 | ||||
-rw-r--r-- | src/chrtrans/iso02_uni.tbl | 72 | ||||
-rw-r--r-- | src/chrtrans/iso03_uni.tbl | 72 | ||||
-rw-r--r-- | src/chrtrans/iso04_uni.tbl | 72 | ||||
-rw-r--r-- | src/chrtrans/iso05_uni.tbl | 72 | ||||
-rw-r--r-- | src/chrtrans/iso07_uni.tbl | 72 | ||||
-rw-r--r-- | src/chrtrans/iso09_uni.tbl | 72 | ||||
-rw-r--r-- | src/chrtrans/iso10_uni.tbl | 72 | ||||
-rw-r--r-- | src/chrtrans/makeuctb.c | 82 | ||||
-rw-r--r-- | src/chrtrans/mnemonic_suni.tbl | 7 | ||||
-rw-r--r-- | src/chrtrans/rfc_suni.tbl | 7 |
16 files changed, 509 insertions, 751 deletions
diff --git a/src/chrtrans/Makefile b/src/chrtrans/Makefile.old index 3b75ab08..3b75ab08 100644 --- a/src/chrtrans/Makefile +++ b/src/chrtrans/Makefile.old diff --git a/src/chrtrans/README.format b/src/chrtrans/README.format index e5eca7bf..58f0b1cc 100644 --- a/src/chrtrans/README.format +++ b/src/chrtrans/README.format @@ -12,7 +12,7 @@ There are four kinds of lines: Summary example: # This line is a comment, the next line is a directive - OBrand new Charset! + O Brand new Charset! 0x41 U+0041 U+0391 U+00cd:I' @@ -23,12 +23,25 @@ a) comment lines start with a '#' character. check the examples..) b) directives: - start with a special character, currently recognized are the letters: + start with a keyword which may be abbreviated to one letter (first + letter must be capitalized), followed by space and a value. + Currently recognized: - O The name under which this should appear on the O)ptions screen - M The name for this charset in MIME syntax (one word with digits + OptionName + The name under which this should appear on the O)ptions screen + in the list for Display Character Set + MIMEName + The name for this charset in MIME syntax (one word with digits and some other non-letters allowed, should be IANA registered) - R a number which flags some special property (encoding) for this + Default + This is the default (fallback) translation table, it will be used + for Unicode -> 8bit (or 7bit) translation if no translation is found + in the specific table. + FallBack + Whether to use the default table if no translation is found in + this table. Normally fallback is used, "FallBack NO" disables it. + RawOrEnc + a number which flags some special property (encoding) for this charset [see utf8.uni for example, see UCDefs.h for details]. c) character translation definitions: diff --git a/src/chrtrans/README.tables b/src/chrtrans/README.tables index 8e4366d1..a95d600c 100644 --- a/src/chrtrans/README.tables +++ b/src/chrtrans/README.tables @@ -35,8 +35,9 @@ a) Near the top, you will find a bunch of lines (some may be commented out) #include "chrtrans/<fn>.h" #endif /* VMS */ -Add or comment out as you wish. (But it's probably safest to leave the -first one, referring to "chrtrans/iso01_uni.h", in place...) +Add or comment out as you wish. But it is probably safest to leave the +first two, referring to "chrtrans/def7_uni.h" and "chrtrans/iso01_uni.h", +in place. b) At the bottom, you will find a bunch of lines (again, some may be commented out by default) of the form diff --git a/src/chrtrans/UCkd.h b/src/chrtrans/UCkd.h index 083afe49..1497f298 100644 --- a/src/chrtrans/UCkd.h +++ b/src/chrtrans/UCkd.h @@ -43,6 +43,8 @@ struct unimapdesc { struct unimapdesc_str { u16 entry_ct; struct unipair_str *entries; + int isdefault; + int trydefault; }; diff --git a/src/chrtrans/def7_uni.tbl b/src/chrtrans/def7_uni.tbl index dcbb2f01..c4bbef7c 100644 --- a/src/chrtrans/def7_uni.tbl +++ b/src/chrtrans/def7_uni.tbl @@ -17,7 +17,7 @@ D1 U+00a1:! U+00a2:Ct U+00a3:Pd -U+00a4:Cu +U+00a4:CUR U+00a5:Ye U+00a6:| U+00a7:SE @@ -26,15 +26,16 @@ U+00a9:(C) U+00aa:-a U+00ab:<< U+00ac:NO -U+00ad:-- +U+00ad:- U+00ae:(R) -U+00af:'m +U+00af:- U+00b0:DG U+00b1:+- U+00b2:^2 U+00b3:^3 U+00b4:' -U+00b5:My +# My -> u +U+00b6:u U+00b6:PI U+00b7:.M U+00b8:, @@ -56,7 +57,7 @@ U+00d0:D- 0x4e U+00d1 0x4f U+00d2-U+00d5 U+00d6:O: -0x2a U+00d7 +U+00d7: * U+00d8:O/ 0x55 U+00d9-U+00db U+00dc:U: @@ -147,7 +148,7 @@ U+017f:s1 U+0187:C2 U+0188:c2 U+0191:F2 -U+0192:f2 +U+0192: f U+0198:K2 U+0199:k2 U+01a0:O9 @@ -307,7 +308,7 @@ U+02b3:<r> U+02b7:<w> U+02bb:;S 0x60 U+02bc -U+02c6:1> +U+02c6:^ U+02c7:'< U+02c9:1- U+02cb:1! @@ -316,7 +317,7 @@ U+02d8:'( U+02d9:'. U+02da:'0 U+02db:'; -U+02dc:1? +U+02dc:~ U+02dd:'" 0x7e U+0303 U+0334 0x2e U+0322 U+0323 @@ -403,6 +404,9 @@ U+03cc:o% U+03cd:u% U+03ce:w% U+03d0:b3 +U+03d1:theta +U+03d2:\upsih +U+03d6:pi U+03da:T3 U+03db:t3 U+03dc:M3 @@ -924,7 +928,7 @@ U+1349:fu U+134A:fi U+134B:fa U+134C:fE -0x46 U+134D #:f +0x6f U+134D #:f U+134E:fo U+134F:fWa U+1350:pe @@ -1312,8 +1316,11 @@ U+20a9:W= U+2103:oC U+2105:c/o U+2109:oF +U+2111:Im U+2116:No. U+2117:PO +U+2118:P +U+211C:Re U+211e:Rx U+2120:(SM) U+2122:(TM) @@ -1321,6 +1328,7 @@ U+2126:Ohm U+212E:est. 0x4b U+212A # Kelvin sign - K U+212b:Ang. +U+2135:Aleph U+2153: 1/3 U+2154: 2/3 U+2155: 1/5 @@ -1369,30 +1377,34 @@ U+2180:1000RCD U+2181:5000R U+2182:10000R U+2190:<- -U+2191:-! +U+2191:-^ U+2192:-> U+2193:-v -U+2194:<> +U+2194:<-> U+2195:UD U+2196:<!! U+2197://> U+2198:!!> U+2199:<// U+21a8:UD- +U+21B5:RET U+21c0:>V U+21d0:<= +U+21d1:^^ U+21d2:=> -U+21d4:== +U+21d3:vv +U+21d4:<=> U+2200:FA -U+2202:d +U+2202:\partial U+2203:TE U+2205:{} U+2206:decr. U+2207:Nabla U+2208:(- +U+2209:!(- U+220b:-) -U+220f:*P -U+2211:+Z +U+220f:\prod +U+2211:\sum U+2212: - U+2213:-/+ U+2214:.+ @@ -1409,7 +1421,7 @@ U+2227:AND U+2228:OR U+2229:(U U+222a:)U -U+222b:In +U+222b:\int U+222c:DI U+222e:Io U+2234:.: @@ -1433,8 +1445,11 @@ U+226e:!< U+226f:!> U+2282:(C U+2283:)C +U+2282:!(C U+2286:(_ U+2287:)_ +U+2295:(+) +U+2297:(x) U+2299:0. U+229a:02 U+22a5:-T @@ -1687,7 +1702,7 @@ U+266c:M16 U+266d:b U+266e:Mx U+266f:# -0x58 U+2713 U+2717 # check marks +0x58 U+2713 U+2717 # check marks -> x U+2720:-X 0x20 U+3000 # ideographic space U+3001:,_ @@ -2073,12 +2088,12 @@ U+fefa:lh. U+fefb:la- U+fefc:la. # Symbols for C0 and C1 control characters, in case they get through... -U+0000:NU +U+0000:NUL U+0001:SH U+0002:SX U+0003:EX U+0004:ET -U+0005:EQ +U+0005:ENQ U+0006:AK U+0007:BL U+0008:BS @@ -2090,90 +2105,90 @@ U+000d:CR U+000e:SO U+000f:SI U+0010:DL -U+0011:D1 -U+0012:D2 -U+0013:D3 -U+0014:D4 -U+0015:NK -U+0016:SY +U+0011:DC1 +U+0012:DC2 +U+0013:DC3 +U+0014:DC4 +U+0015:NAK +U+0016:SYN U+0017:EB U+0018:CN U+0019:EM U+001a:SB -U+001b:EC +U+001b:ESC U+001c:FS U+001d:GS U+001e:RS U+001f:US U+007f:DT U+0080:PA -U+0081:HO -U+0082:BH -U+0083:NH -U+0084:IN -U+0085:NL -U+0086:SA -U+0087:ES -U+0088:HS -U+0089:HJ -U+008a:VS -U+008b:PD -U+008c:PU +#U+0081:HO +#U+0082:BH +#U+0083:NH +#U+0084:IN +#U+0085:NL +#U+0086:SA +#U+0087:ES +#U+0088:HS +#U+0089:HJ +#U+008a:VS +#U+008b:PD +#U+008c:PU U+008d:RI -U+008e:S2 -U+008f:S3 -U+0090:DC -U+0091:P1 -U+0092:P2 -U+0093:TS -U+0094:CC -U+0095:MW -U+0096:SG -U+0097:EG -U+0098:SS -U+0099:GC -U+009a:SC -U+009b:CI -U+009c:ST -U+009d:OC -U+009e:PM -U+009f:AC +U+008e:SS2 +U+008f:SS3 +U+0090:DCS +#U+0091:P1 +#U+0092:P2 +#U+0093:TS +#U+0094:CC +#U+0095:MW +#U+0096:SG +#U+0097:EG +#U+0098:SS +#U+0099:GC +#U+009a:SC +U+009b:CSI +#U+009c:ST +#U+009d:OC +#U+009e:PM +#U+009f:AC # Unassigned stuff in private zone (?) -U+e000:"3 -U+e001:"1 -U+e002:"! -U+e003:"' -U+e004:"> -U+e005:"? -U+e006:"- -U+e007:"( -U+e008:". -U+e009:": -U+e00a:"0 -U+e00b:", -U+e00c:"_ -U+e00d:"" -U+e00e:"; -U+e00f:"< -U+e010:"= -U+e011:"/ -U+e012:"p -U+e013:"d -U+e014:"i -U+e015:+_ -U+e016:a+: -U+e017:Tel -U+e018:UA -U+e019:UB -U+e01e:Mc -U+e01f:Fl - -U+e020:pm -U+e021:Tel -U+e022:a+: -U+e023:Fl -U+e024:GF -U+e025:>V -U+e026:!* -U+e027:?* -U+e028:J< +#U+e000:"3 +#U+e001:"1 +#U+e002:"! +#U+e003:"' +#U+e004:"> +#U+e005:"? +#U+e006:"- +#U+e007:"( +#U+e008:". +#U+e009:": +#U+e00a:"0 +#U+e00b:", +#U+e00c:"_ +#U+e00d:"" +#U+e00e:"; +#U+e00f:"< +#U+e010:"= +#U+e011:"/ +#U+e012:"p +#U+e013:"d +#U+e014:"i +#U+e015:+_ +#U+e016:a+: +#U+e017:Tel +#U+e018:UA +#U+e019:UB +#U+e01e:Mc +#U+e01f:Fl +# +#U+e020:pm +#U+e021:Tel +#U+e022:a+: +#U+e023:Fl +#U+e024:GF +#U+e025:>V +#U+e026:!* +#U+e027:?* +#U+e028:J< diff --git a/src/chrtrans/iso01_uni.tbl b/src/chrtrans/iso01_uni.tbl index 15dc6f6a..14f71ff3 100644 --- a/src/chrtrans/iso01_uni.tbl +++ b/src/chrtrans/iso01_uni.tbl @@ -20,45 +20,45 @@ OISO Latin 1 # of small letter 'c' to 'c': 0x63 U+0063 U+0107 U+0109 U+010B U+010D 0x64-0x7e idem -0x7f U+2302 0xa0-0xff idem #0x00 U+fffd # don't let failed char lookups return '\0' -# Mappings of cntrl chars, left in from original, just to see what happens... -0x01 U+263A -0x02 U+263B -0x03 U+2665 -0x04 U+2666 -0x05 U+2663 -0x06 U+2660 -0x07 U+2022 -0x08 U+25D8 -0x09 U+25CB -0x0A U+25D9 -0x0B U+2642 -0x0C U+2640 -0x0D U+266A -0x0E U+266B -0x0E U+266C -0x0F U+263C -0x10 U+25B6 -0x10 U+25BA -0x11 U+25C0 -0x11 U+25C4 -0x12 U+2195 -0x13 U+203C -0x14 U+00B6 -0x15 U+00A7 -0x16 U+25AC -0x17 U+21A8 -0x18 U+2191 -0x19 U+2193 -0x1A U+2192 -0x1B U+2190 -0x1C U+221F -0x1C U+2319 -0x1D U+2194 -0x1E U+25B2 -0x1F U+25BC +# Mappings of C0 control chars from original, disabled +#0x01 U+263A +#0x02 U+263B +#0x03 U+2665 +#0x04 U+2666 +#0x05 U+2663 +#0x06 U+2660 +#0x07 U+2022 +#0x08 U+25D8 +#0x09 U+25CB +#0x0A U+25D9 +#0x0B U+2642 +#0x0C U+2640 +#0x0D U+266A +#0x0E U+266B +#0x0E U+266C +#0x0F U+263C +#0x10 U+25B6 +#0x10 U+25BA +#0x11 U+25C0 +#0x11 U+25C4 +#0x12 U+2195 +#0x13 U+203C +#0x14 U+00B6 +#0x15 U+00A7 +#0x16 U+25AC +#0x17 U+21A8 +#0x18 U+2191 +#0x19 U+2193 +#0x1A U+2192 +#0x1B U+2190 +#0x1C U+221F +#0x1C U+2319 +#0x1D U+2194 +#0x1E U+25B2 +#0x1F U+25BC +#0x7f U+2302 0xd0 U+0110 # Dstrok and ETH are nearly the same... @@ -68,360 +68,11 @@ U+202c: # LEFT-TO-RIGHT OVERRIDE 202D U+202d: -# Replacement strings for Ethiopic characters -U+1200:he -U+1201:hu -U+1202:hi -U+1203:ha -U+1204:hE -U+1205:h -U+1206:ho -U+1208:le -U+1209:lu -U+120A:li -U+120B:la -U+120C:lE -U+120D:l -U+120E:lo -U+120F:lWa -U+1210:He -U+1211:Hu -U+1212:Hi -U+1213:Ha -U+1214:HE -U+1215:H -U+1216:Ho -U+1217:HWa -U+1218:me -U+1219:mu -U+121A:mi -U+121B:ma -U+121C:mE -U+121D:m -U+121E:mo -U+121F:mWa -U+1220:`se -U+1221:`su -U+1222:`si -U+1223:`sa -U+1224:`sE -U+1225:`s -U+1226:`so -U+1227:`sWa -U+1228:re -U+1229:ru -U+122A:ri -U+122B:ra -U+122C:rE -U+122D:r -U+122E:ro -U+122F:rWa -U+1230:se -U+1231:su -U+1232:si -U+1233:sa -U+1234:sE -U+1235:s -U+1236:so -U+1237:sWa -U+1238:xe -U+1239:xu -U+123A:xi -U+123B:xa -U+123C:xE -U+123D:xa -U+123E:xo -U+123F:xWa -U+1240:qe -U+1241:qu -U+1242:qi -U+1243:qa -U+1244:qE -U+1245:q -U+1246:qo -U+1248:qWe -U+124A:qWi -U+124B:qWa -U+124C:qWE -U+124D:qW -U+1250:Qe -U+1251:Qu -U+1252:Qi -U+1253:Qa -U+1254:QE -U+1255:Q -U+1256:Qo -U+1258:QWe -U+125A:QWi -U+125B:QWa -U+125C:QWE -U+125D:QW -U+1260:be -U+1261:bu -U+1262:bi -U+1263:ba -U+1264:bE -U+1265:b -U+1266:bo -U+1267:bWa -U+1268:ve -U+1269:vu -U+126A:vi -U+126B:va -U+126C:vE -U+126D:v -U+126E:vo -U+126F:vWa -U+1270:te -U+1271:tu -U+1272:ti -U+1273:ta -U+1274:tE -U+1275:t -U+1276:to -U+1277:tWa -U+1278:ce -U+1279:cu -U+127A:ci -U+127B:ca -U+127C:cE -U+127D:c -U+127E:co -U+127F:cWa -U+1280:`he -U+1281:`hu -U+1282:`hi -U+1283:`ha -U+1284:`hE -U+1285:`h -U+1286:`ho -U+1288:hWe -U+128A:hWi -U+128B:hWa -U+128C:hWE -U+128D:hW -U+1290:na -U+1291:nu -U+1292:ni -U+1293:na -U+1294:nE -U+1295:n -U+1296:no -U+1297:nWa -U+1298:Ne -U+1299:Nu -U+129A:Ni -U+129B:Na -U+129C:NE -U+129D:N -U+129E:No -U+129F:NWa -U+12A0:e -U+12A1:u -U+12A2:i -U+12A3:a -U+12A4:E -U+12A5:I -U+12A6:o -U+12A7:e3 -U+12A8:ke -U+12A9:ku -U+12AA:ki -U+12AB:ka -U+12AC:kE -U+12AD:k -U+12AE:ko -U+12B0:kWe -U+12B2:kWi -U+12B3:kWa -U+12B4:kWE -U+12B5:kW -U+12B8:Ke -U+12B9:Ku -U+12BA:Ki -U+12BB:Ka -U+12BC:KE -U+12BD:K -U+12BE:Ko -U+12C0:KWe -U+12C2:KWi -U+12C3:KWa -U+12C4:KWE -U+12C5:KW -U+12C8:we -U+12C9:wu -U+12CA:wi -U+12CB:wa -U+12CC:wE -U+12CD:w -U+12CE:wo -U+12D0:`e -U+12D1:`u -U+12D2:`i -U+12D3:`a -U+12D4:`E -U+12D5:`I -U+12D6:`o -U+12D8:ze -U+12D9:zu -U+12DA:zi -U+12DB:za -U+12DC:zE -U+12DD:z -U+12DE:zo -U+12DF:zWa -U+12E0:Ze -U+12E1:Zu -U+12E2:Zi -U+12E3:Za -U+12E4:ZE -U+12E5:Z -U+12E6:Zo -U+12E7:ZWa -U+12E8:ye -U+12E9:yu -U+12EA:yi -U+12EB:ya -U+12EC:yE -U+12ED:y -U+12EE:yo -U+12EF:yWa -U+12F0:de -U+12F1:du -U+12F2:di -U+12F3:da -U+12F4:dE -U+12F5:d -U+12F6:do -U+12F7:dWa -U+12F8:De -U+12F9:Du -U+12FA:Di -U+12FB:Da -U+12FC:DE -U+12FD:D -U+12FE:Do -U+12FF:DWa -U+1300:je -U+1301:ju -U+1302:ji -U+1303:ja -U+1304:jE -U+1305:j -U+1306:jo -U+1307:jWa -U+1308:ga -U+1309:gu -U+130A:gi -U+130B:ga -U+130C:gE -U+130D:g -U+130E:go -U+1310:gWu -U+1312:gWi -U+1313:gWa -U+1314:gWE -U+1315:gW -U+1318:Ge -U+1319:Gu -U+131A:Gi -U+131B:Ga -U+131C:GE -U+131D:G -U+131E:Go -U+131F:GWa -U+1320:Te -U+1321:Tu -U+1322:Ti -U+1323:Ta -U+1324:TE -U+1325:T -U+1326:To -U+1327:TWa -U+1328:Ce -U+1329:Ca -U+132A:Cu -U+132B:Ca -U+132C:CE -U+132D:C -U+132E:Co -U+132F:CWa -U+1330:Pe -U+1331:Pu -U+1332:Pi -U+1333:Pa -U+1334:PE -U+1335:P -U+1336:Po -U+1337:PWa -U+1338:SWe -U+1339:SWu -U+133A:SWi -U+133B:SWa -U+133C:SWE -U+133D:SW -U+133E:SWo -U+133F:SWa -U+1340:`Sa -U+1341:`Su -U+1342:`Si -U+1343:`Sa -U+1344:`SE -U+1345:`S -U+1346:`So -U+1348:fa -U+1349:fu -U+134A:fi -U+134B:fa -U+134C:fE -U+134D:f -U+134E:fo -U+134F:fWa -U+1350:pe -U+1351:pu -U+1352:pi -U+1353:pa -U+1354:pE -U+1355:p -U+1356:po -U+1357:pWa -U+1358:mYa -U+1359:rYa -U+135A:fYa -# ETHIOPIC SPACE U+1360 mapped to ASCII space above -U+1361:: -U+1362::: -U+1363:, -U+1364:; -U+1365:-: -U+1366::- -U+1367:`? -U+1368::|: -U+1369:`1 -U+136A:`2 -U+136B:`3 -U+136C:`4 -U+136D:`5 -U+136E:`6 -U+136F:`7 -U+1370:`8 -U+1371:`9 -U+1372:`10 -U+1373:`20 -U+1374:`30 -U+1375:`40 -U+1376:`50 -U+1377:`60 -U+1378:`70 -U+1379:`80 -U+137A:`90 -U+137B:`100 -U+137C:`10000 - - # TRADE MARK SIGN: U+2122:(TM) 0x60 U+2018 # left single quotation mark 0x27 U+2019-U+201b # various single quotation marks 0x22 U+201c-U+201f # various double quotation marks + +U+2297:(×) \ No newline at end of file diff --git a/src/chrtrans/iso02_uni.tbl b/src/chrtrans/iso02_uni.tbl index dec4d843..ac7dd37a 100644 --- a/src/chrtrans/iso02_uni.tbl +++ b/src/chrtrans/iso02_uni.tbl @@ -3,7 +3,6 @@ # [use: unicode_start iso02.f16 iso02] # 0x20-0x7e idem -0x7f U+2302 #The MIME name of this charset. Miso-8859-2 @@ -13,41 +12,42 @@ OISO Latin 2 # #0x00 U+fffd -0x01 U+263A -0x02 U+263B -0x03 U+2665 -0x04 U+2666 -0x05 U+2663 -0x06 U+2660 -0x07 U+2022 -0x08 U+25D8 -0x09 U+25CB -0x0A U+25D9 -0x0B U+2642 -0x0C U+2640 -0x0D U+266A -0x0E U+266B -0x0E U+266C -0x0F U+263C -0x10 U+25B6 -0x10 U+25BA -0x11 U+25C0 -0x11 U+25C4 -0x12 U+2195 -0x13 U+203C -0x14 U+00B6 -0x15 U+00A7 -0x16 U+25AC -0x17 U+21A8 -0x18 U+2191 -0x19 U+2193 -0x1A U+2192 -0x1B U+2190 -0x1C U+221F -0x1C U+2319 -0x1D U+2194 -0x1E U+25B2 -0x1F U+25BC +#0x01 U+263A +#0x02 U+263B +#0x03 U+2665 +#0x04 U+2666 +#0x05 U+2663 +#0x06 U+2660 +#0x07 U+2022 +#0x08 U+25D8 +#0x09 U+25CB +#0x0A U+25D9 +#0x0B U+2642 +#0x0C U+2640 +#0x0D U+266A +#0x0E U+266B +#0x0E U+266C +#0x0F U+263C +#0x10 U+25B6 +#0x10 U+25BA +#0x11 U+25C0 +#0x11 U+25C4 +#0x12 U+2195 +#0x13 U+203C +#0x14 U+00B6 +#0x15 U+00A7 +#0x16 U+25AC +#0x17 U+21A8 +#0x18 U+2191 +#0x19 U+2193 +#0x1A U+2192 +#0x1B U+2190 +#0x1C U+221F +#0x1C U+2319 +#0x1D U+2194 +#0x1E U+25B2 +#0x1F U+25BC +#0x7f U+2302 # 0xa0 U+00a0 0xa1 U+0104 diff --git a/src/chrtrans/iso03_uni.tbl b/src/chrtrans/iso03_uni.tbl index 875f4d41..2ab5171c 100644 --- a/src/chrtrans/iso03_uni.tbl +++ b/src/chrtrans/iso03_uni.tbl @@ -9,44 +9,44 @@ Miso-8859-3 OISO Latin 3 0x20-0x7e idem -0x7f U+2302 +#0x7f U+2302 # #0x00 U+fffd -0x01 U+263A -0x02 U+263B -0x03 U+2665 -0x04 U+2666 -0x05 U+2663 -0x06 U+2660 -0x07 U+2022 -0x08 U+25D8 -0x09 U+25CB -0x0A U+25D9 -0x0B U+2642 -0x0C U+2640 -0x0D U+266A -0x0E U+266B -0x0E U+266C -0x0F U+263C -0x10 U+25B6 -0x10 U+25BA -0x11 U+25C0 -0x11 U+25C4 -0x12 U+2195 -0x13 U+203C -0x14 U+00B6 -0x15 U+00A7 -0x16 U+25AC -0x17 U+21A8 -0x18 U+2191 -0x19 U+2193 -0x1A U+2192 -0x1B U+2190 -0x1C U+221F -0x1C U+2319 -0x1D U+2194 -0x1E U+25B2 -0x1F U+25BC +#0x01 U+263A +#0x02 U+263B +#0x03 U+2665 +#0x04 U+2666 +#0x05 U+2663 +#0x06 U+2660 +#0x07 U+2022 +#0x08 U+25D8 +#0x09 U+25CB +#0x0A U+25D9 +#0x0B U+2642 +#0x0C U+2640 +#0x0D U+266A +#0x0E U+266B +#0x0E U+266C +#0x0F U+263C +#0x10 U+25B6 +#0x10 U+25BA +#0x11 U+25C0 +#0x11 U+25C4 +#0x12 U+2195 +#0x13 U+203C +#0x14 U+00B6 +#0x15 U+00A7 +#0x16 U+25AC +#0x17 U+21A8 +#0x18 U+2191 +#0x19 U+2193 +#0x1A U+2192 +#0x1B U+2190 +#0x1C U+221F +#0x1C U+2319 +#0x1D U+2194 +#0x1E U+25B2 +#0x1F U+25BC # 0xa0 U+00a0 0xa1 U+0126 diff --git a/src/chrtrans/iso04_uni.tbl b/src/chrtrans/iso04_uni.tbl index d0e6f8e2..ed5d469a 100644 --- a/src/chrtrans/iso04_uni.tbl +++ b/src/chrtrans/iso04_uni.tbl @@ -9,44 +9,44 @@ Miso-8859-4 OISO Latin 4 0x20-0x7e idem -0x7f U+2302 +#0x7f U+2302 # #0x00 U+fffd -0x01 U+263A -0x02 U+263B -0x03 U+2665 -0x04 U+2666 -0x05 U+2663 -0x06 U+2660 -0x07 U+2022 -0x08 U+25D8 -0x09 U+25CB -0x0A U+25D9 -0x0B U+2642 -0x0C U+2640 -0x0D U+266A -0x0E U+266B -0x0E U+266C -0x0F U+263C -0x10 U+25B6 -0x10 U+25BA -0x11 U+25C0 -0x11 U+25C4 -0x12 U+2195 -0x13 U+203C -0x14 U+00B6 -0x15 U+00A7 -0x16 U+25AC -0x17 U+21A8 -0x18 U+2191 -0x19 U+2193 -0x1A U+2192 -0x1B U+2190 -0x1C U+221F -0x1C U+2319 -0x1D U+2194 -0x1E U+25B2 -0x1F U+25BC +#0x01 U+263A +#0x02 U+263B +#0x03 U+2665 +#0x04 U+2666 +#0x05 U+2663 +#0x06 U+2660 +#0x07 U+2022 +#0x08 U+25D8 +#0x09 U+25CB +#0x0A U+25D9 +#0x0B U+2642 +#0x0C U+2640 +#0x0D U+266A +#0x0E U+266B +#0x0E U+266C +#0x0F U+263C +#0x10 U+25B6 +#0x10 U+25BA +#0x11 U+25C0 +#0x11 U+25C4 +#0x12 U+2195 +#0x13 U+203C +#0x14 U+00B6 +#0x15 U+00A7 +#0x16 U+25AC +#0x17 U+21A8 +#0x18 U+2191 +#0x19 U+2193 +#0x1A U+2192 +#0x1B U+2190 +#0x1C U+221F +#0x1C U+2319 +#0x1D U+2194 +#0x1E U+25B2 +#0x1F U+25BC # 0xa0 U+00a0 0xa1 U+0104 diff --git a/src/chrtrans/iso05_uni.tbl b/src/chrtrans/iso05_uni.tbl index 5179dc8d..f0dfad50 100644 --- a/src/chrtrans/iso05_uni.tbl +++ b/src/chrtrans/iso05_uni.tbl @@ -9,44 +9,44 @@ Miso-8859-5 OISO 8859-5 Cyrillic 0x20-0x7e idem -0x7f U+2302 +#0x7f U+2302 # #0x00 U+fffd -0x01 U+263A -0x02 U+263B -0x03 U+2665 -0x04 U+2666 -0x05 U+2663 -0x06 U+2660 -0x07 U+2022 -0x08 U+25D8 -0x09 U+25CB -0x0A U+25D9 -0x0B U+2642 -0x0C U+2640 -0x0D U+266A -0x0E U+266B -0x0E U+266C -0x0F U+263C -0x10 U+25B6 -0x10 U+25BA -0x11 U+25C0 -0x11 U+25C4 -0x12 U+2195 -0x13 U+203C -0x14 U+00B6 -0x15 U+00A7 -0x16 U+25AC -0x17 U+21A8 -0x18 U+2191 -0x19 U+2193 -0x1A U+2192 -0x1B U+2190 -0x1C U+221F -0x1C U+2319 -0x1D U+2194 -0x1E U+25B2 -0x1F U+25BC +#0x01 U+263A +#0x02 U+263B +#0x03 U+2665 +#0x04 U+2666 +#0x05 U+2663 +#0x06 U+2660 +#0x07 U+2022 +#0x08 U+25D8 +#0x09 U+25CB +#0x0A U+25D9 +#0x0B U+2642 +#0x0C U+2640 +#0x0D U+266A +#0x0E U+266B +#0x0E U+266C +#0x0F U+263C +#0x10 U+25B6 +#0x10 U+25BA +#0x11 U+25C0 +#0x11 U+25C4 +#0x12 U+2195 +#0x13 U+203C +#0x14 U+00B6 +#0x15 U+00A7 +#0x16 U+25AC +#0x17 U+21A8 +#0x18 U+2191 +#0x19 U+2193 +#0x1A U+2192 +#0x1B U+2190 +#0x1C U+221F +#0x1C U+2319 +#0x1D U+2194 +#0x1E U+25B2 +#0x1F U+25BC # 0xa0 U+00a0 0xa1 U+0401 diff --git a/src/chrtrans/iso07_uni.tbl b/src/chrtrans/iso07_uni.tbl index 4698888a..62a85b3c 100644 --- a/src/chrtrans/iso07_uni.tbl +++ b/src/chrtrans/iso07_uni.tbl @@ -9,44 +9,44 @@ Miso-8859-7 OISO 8859-7 Greek 0x20-0x7e idem -0x7f U+2302 +#0x7f U+2302 # #0x00 U+fffd -0x01 U+263A -0x02 U+263B -0x03 U+2665 -0x04 U+2666 -0x05 U+2663 -0x06 U+2660 -0x07 U+2022 -0x08 U+25D8 -0x09 U+25CB -0x0A U+25D9 -0x0B U+2642 -0x0C U+2640 -0x0D U+266A -0x0E U+266B -0x0E U+266C -0x0F U+263C -0x10 U+25B6 -0x10 U+25BA -0x11 U+25C0 -0x11 U+25C4 -0x12 U+2195 -0x13 U+203C -0x14 U+00B6 -0x15 U+00A7 -0x16 U+25AC -0x17 U+21A8 -0x18 U+2191 -0x19 U+2193 -0x1A U+2192 -0x1B U+2190 -0x1C U+221F -0x1C U+2319 -0x1D U+2194 -0x1E U+25B2 -0x1F U+25BC +#0x01 U+263A +#0x02 U+263B +#0x03 U+2665 +#0x04 U+2666 +#0x05 U+2663 +#0x06 U+2660 +#0x07 U+2022 +#0x08 U+25D8 +#0x09 U+25CB +#0x0A U+25D9 +#0x0B U+2642 +#0x0C U+2640 +#0x0D U+266A +#0x0E U+266B +#0x0E U+266C +#0x0F U+263C +#0x10 U+25B6 +#0x10 U+25BA +#0x11 U+25C0 +#0x11 U+25C4 +#0x12 U+2195 +#0x13 U+203C +#0x14 U+00B6 +#0x15 U+00A7 +#0x16 U+25AC +#0x17 U+21A8 +#0x18 U+2191 +#0x19 U+2193 +#0x1A U+2192 +#0x1B U+2190 +#0x1C U+221F +#0x1C U+2319 +#0x1D U+2194 +#0x1E U+25B2 +#0x1F U+25BC # 0xa0 U+00a0 0xa1 U+0371 diff --git a/src/chrtrans/iso09_uni.tbl b/src/chrtrans/iso09_uni.tbl index 224cc26c..8bcb7660 100644 --- a/src/chrtrans/iso09_uni.tbl +++ b/src/chrtrans/iso09_uni.tbl @@ -9,7 +9,7 @@ Miso-8859-9 OISO 8859-9 (Latin 5) 0x20-0x7e idem -0x7f U+2302 +#0x7f U+2302 0xa0-0xcf idem 0xd0 U+011e 0xd1-0xdc idem @@ -23,41 +23,41 @@ OISO 8859-9 (Latin 5) 0xff U+00ff # #0x00 U+fffd -0x01 U+263A -0x02 U+263B -0x03 U+2665 -0x04 U+2666 -0x05 U+2663 -0x06 U+2660 -0x07 U+2022 -0x08 U+25D8 -0x09 U+25CB -0x0A U+25D9 -0x0B U+2642 -0x0C U+2640 -0x0D U+266A -0x0E U+266B -0x0E U+266C -0x0F U+263C -0x10 U+25B6 -0x10 U+25BA -0x11 U+25C0 -0x11 U+25C4 -0x12 U+2195 -0x13 U+203C -0x14 U+00B6 -0x15 U+00A7 -0x16 U+25AC -0x17 U+21A8 -0x18 U+2191 -0x19 U+2193 -0x1A U+2192 -0x1B U+2190 -0x1C U+221F -0x1C U+2319 -0x1D U+2194 -0x1E U+25B2 -0x1F U+25BC +#0x01 U+263A +#0x02 U+263B +#0x03 U+2665 +#0x04 U+2666 +#0x05 U+2663 +#0x06 U+2660 +#0x07 U+2022 +#0x08 U+25D8 +#0x09 U+25CB +#0x0A U+25D9 +#0x0B U+2642 +#0x0C U+2640 +#0x0D U+266A +#0x0E U+266B +#0x0E U+266C +#0x0F U+263C +#0x10 U+25B6 +#0x10 U+25BA +#0x11 U+25C0 +#0x11 U+25C4 +#0x12 U+2195 +#0x13 U+203C +#0x14 U+00B6 +#0x15 U+00A7 +#0x16 U+25AC +#0x17 U+21A8 +#0x18 U+2191 +#0x19 U+2193 +#0x1A U+2192 +#0x1B U+2190 +#0x1C U+221F +#0x1C U+2319 +#0x1D U+2194 +#0x1E U+25B2 +#0x1F U+25BC # TRADE MARK SIGN: U+2122:(TM) diff --git a/src/chrtrans/iso10_uni.tbl b/src/chrtrans/iso10_uni.tbl index f1123e3d..be3c02cd 100644 --- a/src/chrtrans/iso10_uni.tbl +++ b/src/chrtrans/iso10_uni.tbl @@ -13,44 +13,44 @@ Miso-8859-10 OISO 8859-10 0x20-0x7e idem -0x7f U+2302 +#0x7f U+2302 # #0x00 U+fffd -0x01 U+263A -0x02 U+263B -0x03 U+2665 -0x04 U+2666 -0x05 U+2663 -0x06 U+2660 -0x07 U+2022 -0x08 U+25D8 -0x09 U+25CB -0x0A U+25D9 -0x0B U+2642 -0x0C U+2640 -0x0D U+266A -0x0E U+266B -0x0E U+266C -0x0F U+263C -0x10 U+25B6 -0x10 U+25BA -0x11 U+25C0 -0x11 U+25C4 -0x12 U+2195 -0x13 U+203C -0x14 U+00B6 -0x15 U+00A7 -0x16 U+25AC -0x17 U+21A8 -0x18 U+2191 -0x19 U+2193 -0x1A U+2192 -0x1B U+2190 -0x1C U+221F -0x1C U+2319 -0x1D U+2194 -0x1E U+25B2 -0x1F U+25BC +#0x01 U+263A +#0x02 U+263B +#0x03 U+2665 +#0x04 U+2666 +#0x05 U+2663 +#0x06 U+2660 +#0x07 U+2022 +#0x08 U+25D8 +#0x09 U+25CB +#0x0A U+25D9 +#0x0B U+2642 +#0x0C U+2640 +#0x0D U+266A +#0x0E U+266B +#0x0E U+266C +#0x0F U+263C +#0x10 U+25B6 +#0x10 U+25BA +#0x11 U+25C0 +#0x11 U+25C4 +#0x12 U+2195 +#0x13 U+203C +#0x14 U+00B6 +#0x15 U+00A7 +#0x16 U+25AC +#0x17 U+21A8 +#0x18 U+2191 +#0x19 U+2193 +#0x1A U+2192 +#0x1B U+2190 +#0x1C U+221F +#0x1C U+2319 +#0x1D U+2194 +#0x1E U+25B2 +#0x1F U+25BC # 0xa0 U+00a0 0xa1 U+0104 diff --git a/src/chrtrans/makeuctb.c b/src/chrtrans/makeuctb.c index 62ad102d..e0630cc3 100644 --- a/src/chrtrans/makeuctb.c +++ b/src/chrtrans/makeuctb.c @@ -1,7 +1,8 @@ /* - * makeuctb.c, derived from conmakehash.c + * makeuctb.c, derived from conmakehash.c - kw + * + * Original comments from conmakehash.c: * - * [ original comments: - kw ] * Create arrays for initializing the kernel folded tables (using a hash * table turned out to be to limiting...) Unfortunately we can't simply * preinitialize the tables at compile time since kfree() cannot accept @@ -58,6 +59,28 @@ PRIVATE void usage ARGS1( exit(EX_USAGE); } +/* copied from HTString.c, not everybody has strncasecmp */ +PUBLIC int strncasecomp ARGS3( + CONST char*, a, + CONST char *, b, + int, n) +{ + CONST char *p = a; + CONST char *q = b; + + for (p = a, q = b; ; p++, q++) { + int diff; + if (p == (a+n)) + return 0; /* Match up to n characters */ + if (!(*p && *q)) + return (*p - *q); + diff = TOLOWER(*p) - TOLOWER(*q); + if (diff) + return diff; + } + /*NOTREACHED*/ +} + PRIVATE int getunicode ARGS1( char **, p0) { @@ -184,6 +207,7 @@ char this_MIMEcharset[UC_MAXLEN_MIMECSNAME +1]; char this_LYNXcharset[UC_MAXLEN_LYNXCSNAME +1]; char id_append[UC_MAXLEN_ID_APPEND +1] = "_"; int this_isDefaultMap = -1; +int useDefaultMap = 1; int lowest_eight = 999; PUBLIC int main ARGS2( @@ -267,6 +291,12 @@ PUBLIC int main ARGS2( * processing. One digit code. */ case 'R': + if (p[1] == 'a' || p[1] == 'A') { + buffer[sizeof(buffer) - 1] = '\0'; + if (!strncasecomp(p, "RawOrEnc", 8)) { + p += 8; + } + } p++; while (*p == ' ' || *p == '\t') { p++; @@ -276,17 +306,46 @@ PUBLIC int main ARGS2( continue; /* - * Is this the default display font? + * Is this the default table? */ case 'D': + if (p[1] == 'e' || p[1] == 'E') { + buffer[sizeof(buffer) - 1] = '\0'; + if (!strncasecomp(p, "Default", 7)) { + p += 7; + } + } + p++; + while (*p == ' ' || *p == '\t') { + p++; + } + this_isDefaultMap = (*p == '1' || TOLOWER(*p) == 'y'); + continue; + + /* + * Is this the default table? + */ + case 'F': + if (p[1] == 'a' || p[1] == 'A') { + buffer[sizeof(buffer) - 1] = '\0'; + if (!strncasecomp(p, "FallBack", 8)) { + p += 8; + } + } p++; while (*p == ' ' || *p == '\t') { p++; } - this_isDefaultMap = (*p == '1'); + useDefaultMap = (*p == '1' || tolower(*p) == 'y'); continue; case 'M': + if (p[1] == 'i' || p[1] == 'I') { + buffer[sizeof(buffer) - 1] = '\0'; + if (!strncasecomp(p, "MIMEName", 8)) { + p += 8; + } + } p++; while (*p == ' ' || *p == '\t') { p++; @@ -298,6 +357,12 @@ PUBLIC int main ARGS2( * Display charset name for options screen. */ case 'O': + if (p[1] == 'p' || p[1] == 'P') { + buffer[sizeof(buffer) - 1] = '\0'; + if (!strncasecomp(p, "OptionName", 10)) { + p += 10; + } + } p++; while (*p == ' ' || *p == '\t') { p++; @@ -635,12 +700,17 @@ static struct unipair_str repl_map%s[%d] = \n\ } if (themap_str.entry_ct) { printf("\n\ -static struct unimapdesc_str dfont_replacedesc%s = {%d,repl_map%s};\n", +static struct unimapdesc_str dfont_replacedesc%s = {%d,repl_map%s,", id_append, themap_str.entry_ct, id_append); } else { printf("\n\ -static struct unimapdesc_str dfont_replacedesc%s = {0,NULL};\n",id_append); +static struct unimapdesc_str dfont_replacedesc%s = {0,NULL,",id_append); } + printf("%d,%d};\n", + this_isDefaultMap ? 1 : 0, + (useDefaultMap && !this_isDefaultMap) ? 1 : 0 + ); + printf("#define UC_CHARSET_SETUP%s UC_Charset_Setup(\ \"%s\",\\\n\"%s\",\\\n\ diff --git a/src/chrtrans/mnemonic_suni.tbl b/src/chrtrans/mnemonic_suni.tbl index 7f08408c..79d374a3 100644 --- a/src/chrtrans/mnemonic_suni.tbl +++ b/src/chrtrans/mnemonic_suni.tbl @@ -1,8 +1,11 @@ #The MIME name of this charset. -Mmnemonic +M mnemonic #Name as a Display Charset (used on Options screen) -ORFC 1345 Mnemonic +O RFC 1345 Mnemonic + +# Don't fall back to default table for unicode -> 8bit +Fallback NO # U+0020:&SP U+0021:! diff --git a/src/chrtrans/rfc_suni.tbl b/src/chrtrans/rfc_suni.tbl index 5df75265..4dd8b3f6 100644 --- a/src/chrtrans/rfc_suni.tbl +++ b/src/chrtrans/rfc_suni.tbl @@ -5,10 +5,13 @@ # mnemonic,ds #The MIME name of this charset. -Mmnemonic+ascii+0 +M mnemonic+ascii+0 #Name as a Display Charset (used on Options screen) -ORFC 1345 w/o Intro +O RFC 1345 w/o Intro + +# Don't fall back to default table for unicode -> 8bit +Fallback NO U+0020:SP U+0021:! |