remove original `color_buffer`

plugins
Patrick Cleavelin 2024-01-05 15:32:26 -06:00
parent d29b032251
commit 434a4e74db
1 changed files with 0 additions and 67 deletions

View File

@ -799,73 +799,6 @@ color_character :: proc(buffer: ^FileBuffer, start: Cursor, end: Cursor, palette
} }
} }
color_buffer :: proc(buffer: ^FileBuffer) {
start_it := new_file_buffer_iter(buffer);
it := new_file_buffer_iter(buffer);
for character in iterate_file_buffer(&it) {
if it.cursor.line > it.buffer.glyph_buffer_height && (it.cursor.line - it.buffer.top_line) > it.buffer.glyph_buffer_height {
break;
}
if character == '/' {
start_it = it;
// need to go back one character because `it` is on the next character
iterate_file_buffer_reverse(&start_it);
character, _, succ := iterate_file_buffer(&it);
if !succ { break; }
if character == '/' {
iterate_file_buffer_until(&it, until_line_break);
color_character(buffer, start_it.cursor, it.cursor, .Foreground4);
} else if character == '*' {
// TODO: block comments
}
} else if character == '\'' {
start_it = it;
// need to go back one character because `it` is on the next character
iterate_file_buffer_reverse(&start_it);
// jump into the quoted text
iterate_file_buffer_until(&it, until_single_quote);
color_character(buffer, start_it.cursor, it.cursor, .Yellow);
iterate_file_buffer(&it);
} else if character == '"' {
start_it = it;
// need to go back one character because `it` is on the next character
iterate_file_buffer_reverse(&start_it);
// jump into the quoted text
iterate_file_buffer_until(&it, until_double_quote);
color_character(buffer, start_it.cursor, it.cursor, .Yellow);
iterate_file_buffer(&it);
} else if (character >= 'a' && character <= 'z') || (character >= 'A' && character <= 'Z') || character == '_' {
start_it = it;
// need to go back one character because `it` is on the next character
iterate_file_buffer_reverse(&start_it);
it = start_it;
iterate_file_buffer_until(&it, until_end_of_word);
// TODO: color keywords
if is_keyword(start_it, it) {
color_character(buffer, start_it.cursor, it.cursor, .Blue);
} else if character, _, cond := iterate_peek(&it, iterate_file_buffer); cond {
if character == '(' {
color_character(buffer, start_it.cursor, it.cursor, .Green);
}
} else {
break;
}
iterate_file_buffer(&it);
}
}
}
update_glyph_buffer :: proc(buffer: ^FileBuffer) { update_glyph_buffer :: proc(buffer: ^FileBuffer) {
for &glyph in buffer.glyph_buffer { for &glyph in buffer.glyph_buffer {
glyph = Glyph{}; glyph = Glyph{};