Menugool is a menu generation language for Ncurses. It takes as input a small language describing the menu, and spits out C code (optional makefile) to display the menu. You can embed callbacks or call external scripts (in this way you can create a men