2 ms·
It seems to have supported UTF-8 for at least a decade. Although it went the full-on ECMA-35 route of making that an optional switchable character set. There
by JdeBP 1y ago
It seems to have supported UTF-8 for at least a decade. Although it went the full-on ECMA-35 route of making that an optional switchable character set.
There was an issue back in 2016 where, ironically, it was coming up in Latin-1 mode with everything else around it talking UTF-8, and there have been other similar impedance mis-matches over the years. But they seem to hinge on it actually having UTF-8 support.
* https://github.com/cosmos72/twin/issues/4 https://github.com/cosmos72/twin/issues/4
* https://github.com/cosmos72/twin/issues/7 https://github.com/cosmos72/twin/issues/7
* https://github.com/cosmos72/twin/issues/8 https://github.com/cosmos72/twin/issues/8
However: There was no 256 colours support as of 2021.
* https://github.com/cosmos72/twin/issues/30 https://github.com/cosmos72/twin/issues/30
And in some places it even required IBM code page 437.
* https://github.com/cosmos72/twin/issues/22 https://github.com/cosmos72/twin/issues/22
And some of the doco seems to have never been incorporated.
* https://github.com/cosmos72/twin/issues/100 https://github.com/cosmos72/twin/issues/100
- cosmos0072 1y agoAuthor here :) I've been using Twin as my everyday terminal emulator and terminal multiplexer since ~2000, slowly adding features as my free time - and other interests - allowed. As someone pointed out, the look-and-feel reminds Borland Turbo Vision. The reason is simple: I started writing in in the early '90s on DOS with a Borland C compiler, and I used the Borland Turbo Vision look-and-feel as a visual guideline (never actually looked at the code, though). The porting to linux happened in 1999 (it was basically dormant before that), and Unicode support was progressively added around 2015-2016 (initially UCS-2 i.e. only the lowest 64k codepoints, then full UTF-32 internally, with terminal emulator accepting UTF-8). There are still some missing features, most notably: no grapheme clusters, no fullwidth (asian etc.) support, no right-to-left support. Right now I'm adding truecolor support (see https://github.com/cosmos72/twin/tree/truecolor https://github.com/cosmos72/twin/tree/truecolor) - it's basically finished, I'm ironing out some remaining bugs, and thinking whether wire compatibility with older versions is worth adding. And yes, documentation has been stalled for a very long time. Retrospectively, I should have switched C -> C++ much earlier: lots of ugly preprocessor macros accumulated over time, and while I rewrote the C widget hierarchy as C++ classes, several warts remain.
- panzi 1y agoDo symbols for legacy computing work with it? Especially the 1/8ths vertical/horizontal blocks?
- cosmos0072 1y agoIf you mean the Unicode glyphs listed at https://en.m.wikipedia.org/wiki/Block_Elements https://en.m.wikipedia.org/wiki/Block_Elements they are supported - you just need a display driver that can render them. For example, `twin --hw=xft` (it's the default) or `twin --hw=X11`, both with a font that contains them
- JdeBP 1y agoXe means the Unicode block that is actually named "Symbols For Legacy Computing". It's not in the BMP. Some bloke named Bruce was doing TUI windows with scrollbars and sizer/menu boxes some years before TurboVision and code page 437. (-:
- panzi 1y agoIndeed I meant these: https://en.wikipedia.org/wiki/Symbols_for_Legacy_Computing https://en.wikipedia.org/wiki/Symbols_for_Legacy_Computing I use them in some tiny hobby projects like these: https://github.com/panzi/progress-pride-bar https://github.com/panzi/progress-pride-bar https://github.com/panzi/bad-apple-terminal https://github.com/panzi/bad-apple-terminal https://github.com/panzi/js-unicode-bar-chart https://github.com/panzi/js-unicode-bar-chart https://github.com/panzi/js-unicode-plot https://github.com/panzi/js-unicode-plot https://github.com/panzi/js-unicode-progress-bar https://github.com/panzi/js-unicode-progress-bar https://github.com/panzi/python-term-flags https://github.com/panzi/python-term-flags
- JdeBP 1y agoReading the flags one: Unscii has font coverage, if you want to try that out on the emulators whose fonts were problems. * https://news.ycombinator.com/item?id=43812026 https://news.ycombinator.com/item?id=43812026