21 lines
528 B
C
21 lines
528 B
C
#define COLOR_RESET "\033[0m"
|
|
#define COLOR_KEYWORD "\033[1;35m" // Bold magenta
|
|
#define COLOR_TYPE "\033[1;34m" // Bold blue
|
|
#define COLOR_STRING "\033[1;32m" // Bold green
|
|
#define COLOR_COMMENT "\033[0;36m" // Cyan
|
|
#define COLOR_NUMBER "\033[1;33m" // Bold yellow
|
|
#define COLOR_DEFAULT "\033[0;37m" // White
|
|
|
|
// Token types
|
|
typedef enum {
|
|
TOKEN_KEYWORD,
|
|
TOKEN_TYPE,
|
|
TOKEN_STRING,
|
|
TOKEN_COMMENT,
|
|
TOKEN_NUMBER,
|
|
TOKEN_OPERATOR,
|
|
TOKEN_DEFAULT
|
|
} TokenType;
|
|
|
|
char *highlight_line(const char * line, int *length);
|