The GNU Readline library provides a set of functions for use by applications that allow users to edit command lines as they are typed in.