static char *get_buffer(t_list *histo) { t_tutils utils; xwrite(1, PROMPT, strlen(PROMPT)); if (get_term() || init_termcaps(&utils)) return (get_next_line(0)); else return (termcaps(&utils, histo)); }
char *prompt_dispatcher(t_glob *glob, t_prompt *prompt) { char *str; if (isatty(0) && init_termcaps(glob)) { str = termcap_prompt(glob, prompt); str = epur_str(str, 1, 0); reset_term(); return (str); } else { reset_term(); str = basic_prompt(glob, prompt); str = epur_str(str, 1, 0); return (str); } }
char init_sys(t_system *sys, t_hist **root, char **env) { sys->env = NULL; sys->path = NULL; sys->cmd = NULL; sys->alias = NULL; sys->exit.exit = false; sys->exit.value = 0; if ((*root = malloc(sizeof(**root))) == NULL) { printf("Malloc error\n"); return (-1); } (*root)->next = NULL; (*root)->line = NULL; (*root)->prev = NULL; (*root)->id = -1; save_env_and_path(sys, env); return (init_termcaps(sys)); }