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

allow to re-open closed tabs Save closed tabs to a "killed tabs" queue, for up to a max of "max-killed-tabs", and allow to re-open them. Keep the tab history but not its content. This integrates nicely with the session file, just add the "killed" flag as alias for TAB_KILLED and put it in the ktabshead queue upon initalization. It's thus possible to re-open closed tabs even after telescope has been closed, and tabs keeps their history! Add a new cmd, cmd_tab_undo_close, to try to re-open the most recently closed tab and bind it to `u'. While here, add a TODO for the tab history memory leak.

mark last_time_crashed as static


move xdg_* paths as local variables of xdg_init

move session_tab{,_hist} to session.h

mark parse_khost_line as inline

move know_host parsing to the fs process and load the store via imsgs Like previously did with the session file, now the main process doesn't parse anything with the only exception being the configuration file. With this in, the only bit from fs.h still used in the main process is the path to the configuration file.

avoid zero-timer hack by triggering session initialization with IMSG_INIT

implement persistent tab history The session file is now overloaded with the history info, that means that upon startup telescope can repopulate each tab history! The price to pay is that one can't start an old telescope with a new session file, otherwise will get a lot of fancy '<' and '>' tabs...

reuse struct session_tab when saving the session

move parse_last_session to the fs process ~/.telescope/session was parsed in the main process before dropping in the sandbox: that's no good. This moves the initialization of the ui events later in ui_main_loop and makes so that the fs process, after entering the sandbox, parses and sends the content of the last session back to the main process; when it's done the ui gets loaded and telescope is back rocking. I'm plannig to re-use the struct session_tab during the save session operation soon.

adjust some comments text

[xdg] move pages path under $XDG_DATA_HOME instead of CONFIG_HOME OK andrea

move declarations from telescope.h in fs.h and while there also publish various path. It's easier and better to have all of them exported from here instead of hardcoding them in other files (such as sandbox.c)