#include "aec.h" #include "../io/io.h" #define csi() wstd("\033[") void sgr(const char *attrs) { csi(); wstd(attrs); wstd("m"); } void foreground(const char *code) { csi(); wstd("3"); wstd(code); wstd("m"); } void background(const char *code) { csi(); wstd("4"); wstd(code); wstd("m"); } void clear_screen() { csi(); wstd("2J"); } void clear_line() { csi(); wstd("2K"); } void move_cursor(int x, int y) { csi(); wstdf("%i;%iH", y, x); } void cursor_enabled(int is_enabled) { csi(); wstd("?25"); wstd(is_enabled ? "h" : "l"); } #ifdef AEC_UNIT_TEST int main() { clear_screen(); move_cursor(1, 1); sgr(SGR_BOLD); wstd("Hallo"); sgr(SGR_RESET); wstd("Welt\n"); } #endif