dorne/TODO.md

994 B

  • Use /dev/ptmx, to get ptmx (master) and pts (slave) file descriptors, then fork and exec shfx as child (+ close ptmx), then close pts as parent.

Note

Use termios(3) to enable raw mode (implemented in cursed.c) (for the slave or master?)

  • Implement a SIGCHLD handler instead of using waitpid in killchild(), see 2nd example in man wait(3p)

  • Use threads to launch killchild to avoid blocking, then just join all the threads using atexit()

  • Should I compile ncurses with --with-pthread? (see man 3x ncurses) What about --enable-widec? (are these just ligatures?)

  • cursetree shits itself if width/height are 0 on bifurcation

  • ensure NDEBUG is set for preprocessor to avoid <assert.h> statements if not debugging

  • resize_node() is quite wasteful and results could definitely be cached for the next resize_node() call

  • I think this should help! https://tldp.org/HOWTO/NCURSES-Programming-HOWTO/windows.html#OTHERBORDERFUNCS