static void setup_terminal(t_environment *env) { char *terminal_name; if (!(terminal_name = getenv("TERM"))) ft_putendl_exit("Error getting env->TERM", 1); if (tgetent(NULL, terminal_name) <= 0) { ft_putendl_fd("Error getting env->TERM", 2); exit(1); } tcgetattr(0, &env->term); env->term.c_lflag &= ~(ICANON); env->term.c_lflag &= ~(ECHO); env->term.c_cc[VMIN] = 1; env->term.c_cc[VTIME] = 0; if (tcsetattr(0, TCSADRAIN, &env->term) == -1) exit(1); ft_putstr_fd(tgetstr("ti", NULL), 2); ft_putstr_fd(tgetstr("vi", NULL), 2); }
void ft_assert(int assertion, char *if_error) { if (!assertion) ft_putendl_exit(if_error, 1); }