Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
Get a devDuck
Rubber duck debugging has never been so cute! Get your favorite coding language devDuckBuy Now
Search - "ncurses"
Shalom my dudes!
A quick GT from my college years:
>barely knew how to program but eager to learn more and more
>end of first semester, teacher assigns a couple of classic games for extra points
>battleship, pacman, sudoku, tetris, etc. All done in C
>end up with tetris
>2 days later I have the final build, including all the tech shit like walljump
>start thinking to myself "this looks really fucking ugly, what's wrong with me??"
>look up graphic libraries for C when a light flashes on my computer screen
>the next 2 weeks were a montage of me learning linux, understanding ncurses and redoing my code (plus bug fixing)
>palms are spaghetti
>class is impressed with my work
>professor comes up to the board and tells me that I get a 0 because it wasn't "pure C"
>clenched my jaw and walked towards the dean office
>"hey, mind if I show you something?"
>open my laptop and show him the game
>he's having a blast since every time you do a 5 row crunch (a tetris), a piece of clothing of a random model comes off
>explain to him what happened in the classroom
>he looks at my code, runs it on a plagiarism checker and tells me that he will edit the grade himself
> a week later there's a 10 on my grading area
Cross platform terminal library is just about complete!
Here's the same program running in both Windows and "Ubuntu" (WSL, but it's using the ncurses back-end nonetheless)
What my library does:
- Double-buffers the console for drawing (like curses does)
- Translates input into a standard structure (Linux and Windows have different input systems, obviously)
- Does the same thing for output
- Even supports color!3
I love Windows Subsystem for Linux for one reason.
I love making ncurses shit.
The project I have been working on on/ off since Christmas is finally interesting enough to show off!
In short, it's a faux GUI system in the console, with a lot of advanced features that you would see in web browsers and other professional GUI systems.
Most of the core items are now implemented, and it's only time to make it functional in a usability sense.
Here's the tech demo; readme.md is a HUGE essay about everything that's going on. Plus some pretty damn good instructions on how to get it running:
Happy to hear your thoughts!17
I feel totally empty inside, it's 3:30 AM, but I got emoji's working in the Linux terminal AND Windows terminal using the same c code.
What you're looking at here is Linux (top left), Windows (starting slightly right of the top left), and the source code for both platforms. It also runs until you press the 'q' key so just displaying an Emoji would be much less code.
It took literally all day of learning about Unicode, Unicode in c, Unicode in ncurses, Unicode in Linux, and Unicode in Windows. But fuck me, I did it.
Only the new Windows Terminal (Preview) renders emoji. The old CMD.exe and powershell.exe will only render what their fonts offer, which isn't much. This got me stuck for a while.
Check out the lib here... leave a star for my ego.
I'm a happy programmer. My thing works.
ASCII art studio. Running in Linux console using c++ and ncurses. Mouse compatible.
CW tech demo 2 coming soon... Interactive tech demo this time!
So some of @ewpratten's rants just inspired me to tell my story of a somewhat ignorant teacher.
So we had an english class, it was abou Nelson Mandela or something, but I was sitting and learning about apache2(well I first learned about ncurses in python but since there was a command for restarting the apache server it got me curious, as usual). When she said something along the lines of(translated from.my language): "Then you read the text about Nelson Mandela, but other people are programming!". I was about to say that I was actually not programming, but setting up an apache server, but that would have been a dick move since she at least didn't accuse me for hacking.3
.NET Core broke cause of the recent ncurses update… And I just HAD to do a full system upgrade on my Arch laptop right… Guess I'll try to downgrade ncurses now…
For fucks sake Windows. Why can't you just fucking have a sane terminal without fucking with everything.
Installing and using MinGW and CMake is enough of a pain when in a slow VM.
Does curses even work with color in Windows!? The best I've gotten is a shade of grey, and white, and I can't even get the grey back!
Thought I would help the webdev find a memory leak so step one build a developer version of chromium. Problem one ncurses and libtinfo 😅 got to love the split! Problem two gpg keys on old nucurses compat libs 😅. Linux is not for the faint hearted 😎
A project where we had to program a Tetris game on terminal with ncurses. My mate was finishing a project and was supposed to finish it on Tuesday, finally, he finished on Friday. (We had three weeks to do it in parallel with other projects).
I asked him to come in the week end : he told me that he can't come to school on week end so he said that he would work at home.
The following week, he didn't tell me that he'll join his girlfriend in another city and spend the week with her.
The last week, he didn't work, spending all his time playing baby-foot on the school hub.
I don't know why it became like this, he was a perfect mate before this project!5
Trying to write a program a la `man` in ncurses and just, is this hell?
I just want a floating header, a scrollable main body that reads from a file, and a command line footer, why is that so difficult? I finally got it to handle resizing terminals but now I need to try to compile it for windows, which does have unofficial ports of ncurses, but I have no idea how to use them.
Should I just restrict the windows version to a non-interactive command instead of a TUI like I want?2
Finally managed to build a working Wordsearch system with OpenCV and curses.
I curse ncurses till the end of days.
I am doing a small application using C++ as a side project to learn C++ Developement. It would be better if i have a small UI . Will ncurses be okay ? Does it have any utility now ? Is there a better way ? Please keep in mind i am a beginner in terms of application developement..1