From 7a86e7f0433b85c5a4921abb172c78b1135da551 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 15 Feb 2020 23:32:52 +0100 Subject: [PATCH] - fix for Greek uppercase-only fonts. In Greek for all-caps text there *must* not be any accents. As such, all accented characters now contain a default remap to the unaccented version and the accented characters in the already converted Doom Small and BigFont have been removed as these are all-caps fonts. Doom BigUpper still requires investigation how Smallcaps fonts need to be handled. --- src/gamedata/fonts/v_font.cpp | 12 ++++++++++++ .../static/filter/doom.id/fonts/bigfont/03AC.lmp | Bin 301 -> 0 bytes .../static/filter/doom.id/fonts/bigfont/03AD.lmp | Bin 318 -> 0 bytes .../static/filter/doom.id/fonts/bigfont/03AE.lmp | Bin 341 -> 0 bytes .../static/filter/doom.id/fonts/bigfont/03AF.lmp | Bin 176 -> 0 bytes .../static/filter/doom.id/fonts/bigfont/03B0.lmp | Bin 320 -> 0 bytes .../static/filter/doom.id/fonts/bigfont/03CA.lmp | Bin 198 -> 0 bytes .../static/filter/doom.id/fonts/bigfont/03CB.lmp | Bin 298 -> 0 bytes .../static/filter/doom.id/fonts/bigfont/03CC.lmp | Bin 365 -> 0 bytes .../static/filter/doom.id/fonts/bigfont/03CD.lmp | Bin 304 -> 0 bytes .../static/filter/doom.id/fonts/bigfont/03CE.lmp | Bin 371 -> 0 bytes .../filter/doom.id/fonts/defsmallfont/0386.lmp | Bin 137 -> 0 bytes .../filter/doom.id/fonts/defsmallfont/0388.lmp | Bin 135 -> 0 bytes .../filter/doom.id/fonts/defsmallfont/0389.lmp | Bin 149 -> 0 bytes .../filter/doom.id/fonts/defsmallfont/038A.lmp | Bin 85 -> 0 bytes .../filter/doom.id/fonts/defsmallfont/038C.lmp | Bin 129 -> 0 bytes .../filter/doom.id/fonts/defsmallfont/038E.lmp | Bin 135 -> 0 bytes .../filter/doom.id/fonts/defsmallfont/038F.lmp | Bin 141 -> 0 bytes .../filter/doom.id/fonts/defsmallfont/0390.lmp | Bin 120 -> 0 bytes .../filter/doom.id/fonts/defsmallfont/03B0.lmp | Bin 128 -> 0 bytes 20 files changed, 12 insertions(+) delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/bigfont/03AC.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/bigfont/03AD.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/bigfont/03AE.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/bigfont/03AF.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/bigfont/03B0.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CA.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CB.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CC.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CD.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CE.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0386.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0388.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0389.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/038A.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/038C.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/038E.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/038F.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0390.lmp delete mode 100644 wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/03B0.lmp diff --git a/src/gamedata/fonts/v_font.cpp b/src/gamedata/fonts/v_font.cpp index 31f984f28..25658ff41 100644 --- a/src/gamedata/fonts/v_font.cpp +++ b/src/gamedata/fonts/v_font.cpp @@ -895,7 +895,9 @@ int getAlternative(int code) case 0x21b: return 0x163; + // Greek characters with equivalents in either Latin or Cyrillic. This is only suitable for uppercase fonts! + case 0x386: case 0x391: return 'A'; @@ -905,15 +907,18 @@ int getAlternative(int code) case 0x393: return 0x413; + case 0x388: case 0x395: return 'E'; case 0x396: return 'Z'; + case 0x389: case 0x397: return 'H'; + case 0x38a: case 0x399: return 'I'; @@ -926,6 +931,7 @@ int getAlternative(int code) case 0x39d: return 'N'; + case 0x38c: case 0x39f: return 'O'; @@ -938,6 +944,7 @@ int getAlternative(int code) case 0x3a4: return 'T'; + case 0x38e: case 0x3a5: return 'Y'; @@ -947,15 +954,20 @@ int getAlternative(int code) case 0x3a7: return 'X'; + case 0x390: case 0x3aa: return 0xcf; + case 0x3b0: case 0x3ab: return 0x178; case 0x3bf: return 'o'; + case 0x38f: // Greek capital omega with tonos. + return 0x3a9; + case 0x3c2: return 0x3c3; // Lowercase Sigma character in Greek, which changes depending on its positioning in a word; if the font is uppercase only or features a smallcaps style, the second variant of the letter will remain unused diff --git a/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03AC.lmp b/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03AC.lmp deleted file mode 100644 index e31f1213f367c8d77b08a1ce7c98478f55e4092d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 301 zcmXYp!41MN3`N}*RG?5cU>c5GN>w7uK~X9W$Rn@=D=-5KumCHt0xO{Moi@?4oM-26 zsV1VF_NWJN0#|SYcklpD@B(k}0blR~bw;!URiSo<(h_fYRsAv|9YQabpQYW diff --git a/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03AD.lmp b/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03AD.lmp deleted file mode 100644 index 5ff6c8aa3f2dcfafa54276bb64c7690f3a88a981..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 318 zcmY+9%?ScQ42841;=$hrY{4$Pd0K}dgk1?MdkR>?Hen04U<WBWpX#S-4h+C44HFIfejZ5~8TG)BXg(hC#@da50Mroif}TA=Xm{ awtp9C@Qi%nVeXGvXyI4TWWj%yYy1K&ePwt6 diff --git a/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03AE.lmp b/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03AE.lmp deleted file mode 100644 index df6f443176b7d2b734d7cc2caff7aecb71a7ea00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 341 zcmX|*%MHRn3`CvqIiW~U0xi%21+YY`m1Uy^j_!dTXn_`Jffl%OM!4~Ym9?WWkx@wNfXlP+}QM`-ybTnVTAwy diff --git a/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CA.lmp b/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CA.lmp deleted file mode 100644 index 1ad003441e08b915efb032e14cd40bfd86b0c7bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 198 zcmZvWu?+%23gItokV~^dc{JkQgX*lU8;Y&@^ WR;3Z^t=3woUjA*Mo(5t+-+2S1i9Ra; diff --git a/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CB.lmp b/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CB.lmp deleted file mode 100644 index d91230a9a7218d33e46b0632a797bd7da76d8cea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 298 zcmY+9%?-jZ42507kEn#ol`GS5jHyCorBc-*F1~gHhF}RMU;>t42sS9sfgZ5*CAO9K z9B-*2B1Z?D9tgOA0bIci+`$7p!3(^>2sQ=L4(x$*YB9RGYUq&^E2~4>A*Z#foYlva zt5WsUsplZMtW=M!YF#rorZMr%u0@G%OsVa9b6mp33!*XERK*DGpFm;~u_nP8W0hl& c$(i7Z;T(TY;ECZJzApLCKIgUwo6EG>2iT2UoB#j- diff --git a/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CC.lmp b/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CC.lmp deleted file mode 100644 index 1fa37423b5dbd509ba4ea5d405287975375412ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 365 zcmYk2!41MN3`Ns|5JJF#3oEb!8*priDl2MHl!ycJ2F$<`tiTGazzVFuxxAzm!qSVC zUw_-_#;lDorKvatE^vh#+~EOFc)=S!Fe{AN!VdOu0D&`1N+tSY%IQ>RDHFX}svg}* zHFRB zx#DLT1$$0SQ$-jm8gd@nI6m=;j>=(=w)NfzACi#vWUCNkV0gYpah_{xIGy7R1gZc1 FgfASPZ+8Fy diff --git a/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CD.lmp b/wadsrc_extra/static/filter/doom.id/fonts/bigfont/03CD.lmp deleted file mode 100644 index a3730f406f677fd3fe45a368c890133036a890a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 304 zcmX|+Jr2S!429ja1yLjx#LUWZYD#2TDXNN?GBC3 z{!8XGBO*r|_yG3c0FK}U&fo&B;0EsC0iNIm-k?Z`7GMchAaxP;NiukapghL4ZhuO; zB#rFwJ6t-Xebbu4WhtSPV@URDI-SN?Rm`=uAkGTJ5<=7NtUsTiRAIFh50OaoFI5Su f7TP2hufrsVEi8S`mb34=>_ug-@CUX|m-f5AB@ArTM&;vbC1uf75EpX+^EzFvqgr#Tg zj>bFdnVA}6N@IBkav(=?B4=_TS8^kF@*tzam^oRHC0UUT0jWyx)C0YNzR+R~46EF$ z?jvAZEMDKy-BMFe2mIpSdD-Wy2fOR6RgH>ZW0fLD4zH^P*RB)0sK_m-|v7Gx| zqkIc}F6ev}oc6PDNZajoNawRdW47B6LJUy_-GiYqrPm(XC+ULrnmVZYHbxH3|M~y& GH|Yty-*Wl@ diff --git a/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0386.lmp b/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0386.lmp deleted file mode 100644 index 88e049d87669f4c7a61fea56a2ba955a245f93a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 137 zcmd;J;9y{2U}Vq$k|sdx2*iFs90kN_KwJdGbwJF>t`7tM894OyH|y`(vSo|DKA5Aw jearUk+kqUAs!jS^K`JrX+aMZ1YPM|#0-zcuHn^bxZpb9j diff --git a/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0388.lmp b/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0388.lmp deleted file mode 100644 index e214af8fd72e9fc19950cc784121c8f07043ea90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 135 zcmXwx-3fp&41})_Vn^}qzyVyq0UW>q9KfwiLygPT1M9&TzWk7k3?N}roy8(nv58$A o;uLA%mxhrvMt#VJtYO&YRZY^uP3c~ugm*VOOZS_>|Neja0*75B`v3p{ diff --git a/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0389.lmp b/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0389.lmp deleted file mode 100644 index f24050f227c51e116c74d700beacbe61dde58972..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 149 zcmYj}!3}^g3lwFYgU;!3j00v+H24DczDT%^%#i{zh(nWUUWRff*NoLN4tYjlQ uImk&aa+5TGs*-^x9Mu9e#E?e7UER9}td(N__ipBI?-VVC-`Z`osQLksJtoBf diff --git a/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/038A.lmp b/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/038A.lmp deleted file mode 100644 index b12b5c6441a117ff589896953464154329c90cf7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85 zcmZQ&;9y{2U}TU1lFC4A0K~RH>$1YnN-b`St^7}@ppH*VUz N2`CF@L)7U12LLs36O;e| diff --git a/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/038C.lmp b/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/038C.lmp deleted file mode 100644 index ea1d72247832528f02832946c0b35a5302b2669e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 129 zcmd;J;9y{2U}Vq$l14ym2gKe$91g_EK%5W6l|anMst*DG8QAspH|y`(u}fe7KLZC) paM$Lon?W2#pv1ptp91FymKwJvM4M5Duq7MdaOd#q%1Bbr;X8m0|^tVAd o`nxu7-MksdVPx0W-?$U37K6QO>(=ccHB4;!FulxR^Pr{z0D?p#d;kCd diff --git a/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0390.lmp b/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/0390.lmp deleted file mode 100644 index debd7f00b23f34c4eb95107d5c535158e1cc1f3b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 120 zcmXAh!3}^w2m~R1D8-livjH2h0UPjXXWr#vc{<=Gvji3h3o~<@@dZ}cV21-vxWHY~ dYm+pxhSV9Ps*xU4O((cp!z*FERJS?&KYhpt92@`u diff --git a/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/03B0.lmp b/wadsrc_extra/static/filter/doom.id/fonts/defsmallfont/03B0.lmp deleted file mode 100644 index c2cc77cc8f1001773278975079aee0a38edfdd84..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 128 zcmd;J;9y{2U}Vq$k_JF*1;p+^90J6NK%57}6+q0$tPcYJ8Cdo8x9V>Pu{iYgH|uW% iGNBwGy?HxCX7gqcXWLe&%vSwPP-Q^fo58wa<^cfbmLJvt