Live data from Hacker News

Terminal.Gui: A Cross Platform Terminal UI Toolkit for .NET

github.com

21–30 of 83 posts

Re: Terminal.Gui: A Cross Platform Terminal UI Toolkit for .NET

#21
post #15

Earlier quoted context omitted.

I may be showing my age here, but I think most people would expect a TUI to provide arrow key navigation and highlight by default, which is not demonstrated. Simply mapping Gui -> TUI isn't really a good user experience IME. The terminal should generally be keyboard-first/designed with keyboard-only in mind.

Terminal.Gui maintainer here... We view the mouse as optional. We want the mouse to work perfectly, but it should be optional. If any of the library doesn't work well with just a keyboard, please submit an issue!

Perhaps you should also have made a demo video with keyboard only, with key pressed displayed on screen?

It could have helped showcasing that the UI works perfectly with keyboard.

I agree that the demo gif tends to say that this library is mostly intended for mouse usage.

Re: Terminal.Gui: A Cross Platform Terminal UI Toolkit for .NET

#22

Earlier quoted context omitted.

I know you're joking, but I wish I had client-server support with xterm.js or something similar. I'd like to write MUDs (Multi-User Dungeon games) in C#...

iirc most MUDs use telnet, so any user can use whichever client they prefer - I'm sure there's ways to have xterm.js use telnet. There's this project that is a MUD using Telnet written in C#: https://github.com/cmackles/MudSharp

Yes, thanks, I'm aware most MUDs use telnet, but in my opinion, that's a barrier to entry to most users.

And thanks for the link, but it makes me sad to see a repro that was last updated 5 years ago.

> I'm sure there's ways to have xterm.js use telnet.

You have to have a server in-between to do straight telnet. (You can't do a vanilla TCP/IP connection from the browser.)

So I'd like to have WebSockets + xterm.js taking the place of telnet + terminal...

And then I'd like a .Net API that looks like curses, or like this GUI, or something... and that persists the console (like tmux or something), so if the user re-connects, they get their view restored "automagically."

Re: Terminal.Gui: A Cross Platform Terminal UI Toolkit for .NET

#23
Looking at the demo images, I must admit that I have some traumatic memories associated with that shade of blue on a console :) Mostly from fiddling with BIOS settings etc.

My only experience with C# is in using the Unity 3D game engine. Now with a console apps ecosystem, cross-platform focus, GUI libraries, machine learning stuff, mobile apps. It's becoming an attractive prospect by the day.

Re: Terminal.Gui: A Cross Platform Terminal UI Toolkit for .NET

#24
post #14

Neat! I wish it also worked with something like xterm.js, a terminal in the browser. Either by compiling .Net to WASM... Like Client-Side Blazor does, right? ...or using client-server technology... Like Server-Side Blazor does, right?

Terminal.Gui maintainer here... We're working on it [1] [1] https://github.com/Blazor-Console/HACC/blob/main/README.md

Awesome, and yes, +1 to the comment:

> A possible BBS with door games like ZMachine and a sea-faring game I'm writing in a private repo, (top secret!) which used to have the only test harness solution containing both the source and test repos.

My hot take would be to implement a lot of LambdaMOO [1]... in C#... because I like the grammar and parser [1], and I like reflection and attributes... and... Well, it's a thing I'd just like to exist.

[1] : https://www.hayseed.net/MOO/manuals/ProgrammersManual.html

Re: Terminal.Gui: A Cross Platform Terminal UI Toolkit for .NET

#25

Earlier quoted context omitted.

I know you're joking, but I wish I had client-server support with xterm.js or something similar. I'd like to write MUDs (Multi-User Dungeon games) in C#...

iirc most MUDs use telnet, so any user can use whichever client they prefer - I'm sure there's ways to have xterm.js use telnet. There's this project that is a MUD using Telnet written in C#: https://github.com/cmackles/MudSharp

Oh, also...

If I had this thing I want, I could also use it as a debug console for servers...

Re: Terminal.Gui: A Cross Platform Terminal UI Toolkit for .NET

#26

Looking at the demo images, I must admit that I have some traumatic memories associated with that shade of blue on a console :) Mostly from fiddling with BIOS settings etc. My only experience with C# is in using the Unity 3D game engine. Now with a console apps ecosystem, cross-platform focus, GUI libraries, machine learning stuff, mobile apps. It's becoming an attractive prospect by the day.

Hah! But it also feels a bit Norton Commander to me, and that's not that bad ;)

Re: Terminal.Gui: A Cross Platform Terminal UI Toolkit for .NET

#28
About four years ago I had a meeting with a distributor who had terminal app and wanted to move it to a web based app. Everyone had the keyboard shortcuts memorized and did a quick demo that the refresh rate of the monitor was not fast (only slightly joking here) enough to go through all the screens they did for each task they had to do in this system. Interesting that this could be a useful replacement for something like that in a modern language.

Re: Terminal.Gui: A Cross Platform Terminal UI Toolkit for .NET

#29
post #15

Earlier quoted context omitted.

Terminal.Gui maintainer here... We view the mouse as optional. We want the mouse to work perfectly, but it should be optional. If any of the library doesn't work well with just a keyboard, please submit an issue!

That's good to hear but I have to wonder then why the demo is seemingly exclusively demonstrating the mouse?

Because I (apparently incorrectly) assumed a lot of people would appreciate the fact the mouse works so well.

Also, because getting the mouse to work well (across Windows, Mac, Linux, etc...) is freaking hard and the Terminal.Gui team is proud of their work ;-).

Post reply on HN