2 * tio - a simple TTY terminal I/O tool
4 * Copyright (c) 2014-2022 Martin Lund
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version 2
9 * of the License, or (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
28 extern bool print_tainted;
29 extern char ansi_format[];
31 #define ANSI_RESET "\e[0m"
33 #define ansi_printf(format, args...) \
35 fprintf (stdout, "\r%s" format ANSI_RESET "\r\n", ansi_format, ## args); \
39 #define ansi_printf_raw(format, args...) \
41 fprintf (stdout, "%s" format ANSI_RESET, ansi_format, ## args); \
45 #define warning_printf(format, args...) \
47 ansi_printf("[%s] Warning: " format, current_time(), ## args); \
51 #define tio_printf(format, args...) \
55 ansi_printf("[%s] " format, current_time(), ## args); \
56 print_tainted = false; \
59 #define error_printf(format, args...) \
60 snprintf(error[0], 1000, format, ## args);
62 #define error_printf_silent(format, args...) \
63 snprintf(error[1], 1000, format, ## args);
66 #define debug_printf(format, args...) \
67 fprintf (stdout, "[debug] " format, ## args)
68 #define debug_printf_raw(format, args...) \
69 fprintf (stdout, "" format, ## args)
71 #define debug_printf(format, args...)
72 #define debug_printf_raw(format, args...)
75 void print_hex(char c);
76 void print_normal(char c);
77 void print_enable_ansi_formatting(void);