top | item 15548235

(no title)

davidad_ | 8 years ago

I’m embodying an archetype here, but I can’t resist.

The use of QTermWidget makes this almost entirely an exercise in building a hello-world Qt app and very little about building a terminal. That is all very well if you are looking to learn Qt—which is by no means an unworthy aim—but I wouldn’t use the adjective “minimal” to describe any Qt app, no matter how short its main().

If you are actually looking for a minimal terminal, whose source code is intelligible and readily customizable, look no further than https://st.suckless.org/

discuss

order

sjmulder|8 years ago

Good suggestion! I found st a joy to read. Only a couple of C files, few frills and a straightforward coding style. I can see what the suckless folks are getting at.

Slightly OT here but I was thinking about what a suckless UI system would be like - one without excessive layering and as few moving parts as possible. I'm fairly sure it should be possible by avoiding truetype fonts and using the framebuffer directly. That would preclude ubiquitous animation but smooth scrolling and dragging is perfectly doable even with a single buffer.

racer-v|8 years ago

What would be the win in avoiding TrueType? Seems like we could easily convert any TTF files to PostScript Type 1 if there were an advantage to be gained.

jasonkostempski|8 years ago

"That would preclude ubiquitous animation"

That would be its best feature.

majewsky|8 years ago

Yeah, I too was hoping for something substantital, e.g. a description of how to allocate and manage a pseudo-terminal (especially since I'll be needing that for a project of mine quite soon). I'll probably be looking at the st(1) source code, then.

sjmulder|8 years ago

I was experimenting with pty's just the other day. I needed only I/O and window size updates, so it turned out fairly succinct:

https://github.com/sjmulder/trickle/blob/master/tritty.c

I'm not at all an experienced Unix programmer though so take it with a grain of salt. Would be happy to hear about any defects or possible improvements.

freedomben|8 years ago

I came out of it feeling like it was a great foundation, and ready for me to hack and customize without having to start the project from scratch.

Suckless looks great tho. Thanks for the link!

dang|8 years ago

Ok, we swapped "minimal" for "QT" in the title above.

slavik81|8 years ago

It's Qt. The author writes it both ways, but lowercase 't' is correct. It's a tad bit weird to see it all uppercase. It's kinda like "Build your own WebApp using NODE".