vintagedave
today at 8:07 AM
How awesome to see this on the front page! I've been writing a wrapper for this repo. Right now I'm running Turbo Vision -- this repo -- under .Net on macOS. It's a magical feeling.
The wrapper gives a higher level API, and solves some of the things like the rather antique palette API (or wraps it), is adding layout, etc.
```
var lMenuBar := new MenuBar;
lMenuBar
.Add(lDocumentMenu)
.Add(lViewMenu)
.Add(lDialogsMenu)
.Add(new Menu('~A~pp').AddItem('E~x~it', Commands.Quit));
fApplication.SetMenuBar(lMenuBar);
```
(This is Oxygene, currently compiling to .Net. Can be used from any .Net language of course, even Go or Swift with our toolchain, but as an assembly, consumed by anything. Using PInvoke for the native TV binaries.)
Heavily in progress :D The repo is still private and I'm working on things like basing palettes on the surfaces controls are placed on today and tomorrow. Todos are cleaning up layouts, adding a few more basic (for today) missing controls, etc.
I had experimented with libraries like Terminal.GUI, which was (still is?) in the middle of a v2 transition and really difficult to get behaving without bugs. And Claude is a great lesson about TUIs and libraries that have been built without real terminal consideration -- lots of what not to do. I found myself missing Turbo Vision and thinking, why not just have a modern version? Then I found this repo, saw it was updated for Unicode, etc... I am very grateful to the author.
> It's a magical feeling.
hehe working with this TV library scratches my nostalgia itch :D
it probably saved me from futile efforts like writing apps for GEOS or joining the one person Hurd team.
actionfromafar
today at 9:16 AM
I wanted to do the same. I have used Terminal.Gui but would prefer TV and so considered a wrapper. Would be really interesting to see your wrapper.