From f03dc0158507e9066884fee8caf235cb84d40f55 Mon Sep 17 00:00:00 2001 From: Matthew Mondor Date: Tue, 30 Jul 2024 04:12:48 +0000 Subject: [PATCH] AnalogTerm2: Misc changes: - Fix single quotes mapping - Update TODO - Alter the "Archaic" font for 94 to be early 1963 ASCII arrow --- mmsoftware/analogterm2/TODO.txt | 25 ++++++++++++++++++++- .../fonts/7x11/archaic-even-ansi.txt.gz | Bin 3325 -> 3324 bytes mmsoftware/analogterm2/fonts/7x11/archaic-even.txt | 12 +++++----- .../analogterm2/fonts/7x9/archaic-ansi.txt.gz | Bin 2794 -> 2791 bytes mmsoftware/analogterm2/fonts/7x9/archaic.txt | 12 +++++----- mmsoftware/analogterm2/src/font.c | 3 ++- 6 files changed, 38 insertions(+), 14 deletions(-) diff --git a/mmsoftware/analogterm2/TODO.txt b/mmsoftware/analogterm2/TODO.txt index 9bf82ed..66f7562 100644 --- a/mmsoftware/analogterm2/TODO.txt +++ b/mmsoftware/analogterm2/TODO.txt @@ -1,3 +1,18 @@ +- HP300 font +- VT220 font +- IBM Plex Mono? +- The misc default font set contains the curly double quotes and apparently + one curly single quote. Ensure that the default mapping be appropriate and + add as necessary a few mappings. +- Using the atreverse+atintreverse aliases already allows to switch to an + interesting reverse-video mode. However, the foreground/background colors + should also be inverted if using it with color mode in vim, for instance. +- https://en.wikipedia.org/wiki/IBM_2741 Maybe APL support +-   Yet another type of unsupported space character +- The ultraterm font variant is right-aligned, but should be left-aligned for + the at2 bold implementation to look optimal. Since some glyphs appear to + use the whole cell, an easy option would be to add an extra rightwards + empty column. - If it's possible to find a ROM or a good enough photograph of the Intertec Intertube II terminal, its font is apparently implemented with an 8x8 matrix projected into 8x10 cells and has Topaz-like properties like a curved i. @@ -11,6 +26,7 @@ While attempting to not slow down the renderer dramatically. Possible renderers would be pain unscaled, scaled with xvideo, antialiased, vector, etc. + Another part that needs to take size in consideration is copy/pasting. - Maybe make the t an ascender in the default font, making it higher by one pixel. Currently, because variants like "wideserif" and "widecurved" also alter "t" and must stick to a common default, new aliases also allow to @@ -121,7 +137,7 @@ - Character graphics before 🭨 https://en.wikipedia.org/wiki/Box-drawing_character - ≣ † ☆ ツ ⌘›🍺∴ ( ͡° ͜ʖ ͡°) ƒ ︵ ₂ 😈 θ ƒ › ʼ ƒ ∂ ʻ μ › ∫ ◇ ♪ - ► ə β ə ſ ρ ə ∴ ♪ 😱 † 😳 › ▛ ᵗ * ‽ ℣ Ω ⌘   ❇ ⸮ Σ н ● ≈ ℗ 🍺 ≈ + ► ə β ə ſ ρ ə ∴ ♪ 😱 † 😳 › ▛ ᵗ * ‽ ℣ Ω ⌘   ❇ ⸮ Σ н ● ≈ ℗ 🍺 ≈   🍺 - Verify if dead key support is incomplete for ISO-8859-4 and ISO-8859-10. There were special characters that were unicode since the start but also could have punctuation. And others that used two at a time... It might @@ -208,6 +224,13 @@ - Optional half-bright in color mode (14 vs 7) support. - Perhaps allow more configurable cursors, like some based on custom shapes, glyphs or not using XOR. Underline/bar/block are supported already. + Ideas may be a value to configure the cursor height, which currently is low + in line mode and high in block mode, then an Apple IIe style cursor where a + special character is used instead, that instead of using XOR, substitutes + the character at point by itself when in the "on" phase. That cursor is + also no longer synchronized with the text blinking, just like AT2 allows. + In the case of AT2, what character to use for the cursor would be + configurable. - C cedilla characters look strange. These could be improved if the font was eventually one pixel wider vertically. The same is true for descenders like 'q' and 'p'. diff --git a/mmsoftware/analogterm2/fonts/7x11/archaic-even-ansi.txt.gz b/mmsoftware/analogterm2/fonts/7x11/archaic-even-ansi.txt.gz index c6b23477a1a23141ce8fd41213dcc83bc7ee1815..2a8524ceaade57158538023fbc50a20d0cd96f55 100644 GIT binary patch literal 3324 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 literal 3325 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 diff --git a/mmsoftware/analogterm2/fonts/7x11/archaic-even.txt b/mmsoftware/analogterm2/fonts/7x11/archaic-even.txt index cd45735..8b284e7 100644 --- a/mmsoftware/analogterm2/fonts/7x11/archaic-even.txt +++ b/mmsoftware/analogterm2/fonts/7x11/archaic-even.txt @@ -811,13 +811,13 @@ 94 ....... -....... ...O... -..O.O.. -.O...O. -....... -....... -....... +..OOO.. +.O.O.O. +...O... +...O... +...O... +...O... ....... ....... ....... diff --git a/mmsoftware/analogterm2/fonts/7x9/archaic-ansi.txt.gz b/mmsoftware/analogterm2/fonts/7x9/archaic-ansi.txt.gz index 1e595d2f82c892cbf32023cbf0c4876cc2076b4d..eabadab6fc69c28c24847779b4b5642a5801bd19 100644 GIT binary patch delta 937 zcmV;a16KU%73UQPABzY82xq9V2M`B;jmG&^yK!EW4r9?U77b(3FcuAC(GV65W6|)r z>)~_P!{@Gt-#;5Zc0GLTdidD&EDzbK-vPV{6VW7}V4Wo**12OQCzH=!PqNWuql`m? z*D?+bpS+&pWELMync|N5oiYOR#bv-LUW5*_&?u2*ECWu98KwC(*b%#GBX-q)M(nDM z*i{>bp&=L=hN0opM#HC#=0hRWai?^KcS>h?tA9r1lxfHwvh=A!rz1zJ)4Z}ergZ~& zW_JUj0@#Q*fQ~o7mMLAIDs*){<#%;qS(J`8fM<|4fH~d(&Z!$<%lxQ}NUP(E6C1!1 z(grSVOl$y&a07^h8$c%909FToH^8Q8BK%aLbDpor^W~1b0nxOtYTB324sM{-|7iXn zG|PXg(D4NR1`vlgfJf6eAX>NBhT8zHTQ`6U*9~x@X=?vep%XQ(&WR2zrmaq-u{v?% z>I9Cf6FIKVZi!evRp>lo^BZle(^6n{LXOpGF|azV238kMI#rV=989%B3FXQ6W>gqls%SUBdY~F1k*_pyF zJNycR8FH5i?lQq$Cb-KKcbVcYQ`}`&dA|5E!|Dw`)?$X#WrDhle=cBkcC47oTxHn> zT$>BHHdk2|%w@=2CYZ~(hP66d4wdBKW%35F_OSt~y{=yTtqSgcGUP53+-3Z8N~`0P zY{~DfYyjtEOP-T0c}_Oo;#-~VB6gX;F5|k^>YU)>cX>A;dU2^dcweYJL)@qBelrxEtUk3+^)HE)(2kg1by`mx*n^4KR0^;x1F%WyAZq8$ink ztsTK#M{w5>+;tv*Vfj4#OFbLFetaI0^et`)#vac`5cjBRqHy3_j)(LIY#C>g1OH3g9NDK zt;5xidxH{YA<5Q~(<5YZjr*L(4%X@{Bo(e<= LaOG@5LRSC)Ox(s~ delta 940 zcmV;d15^Cx73viSABzY8aPgk82M`B;u7{y$oQK)~_P!|$IBAG;ntc0GLTdX|Um)b9Y^go$X9Pq5As5$oJBlRGA#y`E&F$wnE6 z2Crot8a{bF#mOu_nli;5^E+h(=8MaKQ@jWrW}#6c%UA}S7BfooYp^4B)kf@ps*TuH z8?mc43`0XOGz>$-r;UbB8_kD8sN+uQ4DXcA@K*nf$SKp1J!I)qg-%C~R;PJobxi99 z@XYQ8LIto9ZvY){fGtzHK2_-IddlzW!m=nGZ2-?8Z2)t;0i07ez?S(@8Ie}U7biA= zC8P~p+L+h?65$3A2{(XDxB;wx4sL)=(?s~GLgzeRk>|@Dc>|(pU)8iPpB>ylssGXZ zKWLW!RH5Su{0$%uZvc;`Z$Pweu?@EYT(@oj7p@!NMAOv%sY0hy>Z^021B+>^6KSkY zi`Ug@^}0GOUsq?hL@b{wbRMz!jkeWkDX=;r$Lh2gSe;e_tBWR`s!0=nUVW<2MUyVo zq(#MP1EM1@XW?ikKx+e{Ni%BMBUPbulWtrItJ8w= z&IZ^rTM*!70=!IsmnranG6h~HPBv|TrzTV2Wdgj6A60;tadB#Obsv%Cqp~bE?>3O^ zOktNDeucpdxyuB1ncyxH++~WpOmUYf?y{>qUwoNi^@bm7F+=JyL0!gWtJT@DVlH!) zWfyR5F5uc+WmzznA#<5vF5?>3>TEewl7pAY8^GGf2B`MBdhxe^D!9v#yG(GG@y{u( zj#IKFzqhghoRckiPPXJZ*?5a@b+(JxWdgg5>sqUGf{Wkf-GJ!DrFyY~E)(Ug4X|aY z3Y{(U%XF(VXIiWINt}w>0B+-MfRik^%aFTFaF+@0GQnLYw*5B1++~WpOmUYD@8@m+ zEg!UY1a}?5T}N<#*Lj5H^YAbAYykW5c|?xSBS`ZI>^kf~VAm1Ybp&=DaZ+jn+^mnn zuJd6Re@4+5ewMmu&_DdB0=tgDt|PGP95Gg(!;9o|M2=Oh>m1(e-2mqpnd=DVI^Pcx zppKK%;nU@-JN=a22G}s4FkijI1F>BMt|Nf!@b40=&UX0@_|)n+6(2r8wK}`yBUF={ O3PcEiLfx-IR{#KtddBDg diff --git a/mmsoftware/analogterm2/fonts/7x9/archaic.txt b/mmsoftware/analogterm2/fonts/7x9/archaic.txt index 6452793..c2b282a 100644 --- a/mmsoftware/analogterm2/fonts/7x9/archaic.txt +++ b/mmsoftware/analogterm2/fonts/7x9/archaic.txt @@ -686,13 +686,13 @@ 94 ....... -....... ...O... -..O.O.. -.O...O. -....... -....... -....... +..OOO.. +.O.O.O. +...O... +...O... +...O... +...O... ....... 95 diff --git a/mmsoftware/analogterm2/src/font.c b/mmsoftware/analogterm2/src/font.c index 8a500d0..866a39a 100644 --- a/mmsoftware/analogterm2/src/font.c +++ b/mmsoftware/analogterm2/src/font.c @@ -146,7 +146,8 @@ static uint32_t remap_default[][2] = { { 0x2013, '-' }, /* " */ { 0x2014, 0x1FB78 }, /* Long dash */ { 0x2015, 0x1FB78 }, /* " */ - { 0x2019, 0xB4 }, /* Close single quote */ + { 0x2018, 0x60 }, /* Open single quote -> backtick */ + { 0x2019, 0xB4 }, /* Close single quote -> apostrophe */ { 0x2032, 0xB4 }, /* " */ { 0x202F, 0xA0 }, /* Narrow NBSP */ { 0x2033, 0x201D }, /* Straight double quote */ -- 2.9.0