I'm making a program that displays some info in ncurses, and then opens vim (using system
) to allow the user to edit a file. After vim is exited, though, the ncurses screen won't redraw. refresh
and wrefresh
don't do anything, resulting in the complete trashing of my beautiful menu.
So, I get sent back to the command line. The menu items redraw when I move to them. Moving around a bit results in something that looks like this:
As you can see, I no longer am in my pretty ncurses environment,.
I could tear down ncurses completely and set things up again, but then some stuff (like menu position) is not preserved.
How do I do this correctly? Is there a better way to call some external program and return here gracefully?
I've never had to restart curses entirely.
what if you do something like
def_prog_mode() then endwin()
execute system call
and refresh() should restore it
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With