move util.c declarations in utils.h it's not spelled `util.h' because otherwise it'd get included instead of /usr/include/util.h

use '\e' instead of 27 for esc

extract keymap-related stuff to its own header

extract the key matching logic to its own function

replace TAILQ_EMPTY/INSERT_HEAD/TAIL dance with a single TAILQ_INSERT_TAIL Now that all the queues are correctly initialised, there's no need for that dance.

always include compat.h first

teach telescope how to backtab

rename: s/window/buffer (but not always) this aims to solve (albeit only partially) the confusion between telescope' ``struct window'' and ncurses WINDOW. It also brings some more emacs-like nomenclature, which may be a good thing.

add backspace (keycode 127), for the linux tty linux ttys seems to send 127 on backspace, or at least do that under tmux. Educate telescope to treat 127 as del.

big refactor: introduce the window abstraction - commands now take a struct window* instead of a raw tab - the struct ui_state is gone - using a window for the minibuffer too helps avoid code duplication - it will let us having more than one window on a tab! :DD It doesn't seem to have broken anything...

fix various warnings, no functional changes now that we have a bounch of -Wxxx flags during compilation, let's fix everything.

added <f0>...<f63> keys

mark variable as static

move keymap funcs in its own file