diff options
| author | Albert Cervin <albert@acervin.com> | 2024-01-29 23:34:07 +0100 |
|---|---|---|
| committer | Albert Cervin <albert@acervin.com> | 2024-01-30 15:04:44 +0100 |
| commit | dda591fa33ac10c433289aa3ee862c3ded41eed3 (patch) | |
| tree | 9a25edbc810fd5d8fbc20f367c71ebcd81bb6026 /src/main/main.c | |
| parent | 880199011075afd4f2d9bd16c7ce42a04741b5b7 (diff) | |
| download | dged-dda591fa33ac10c433289aa3ee862c3ded41eed3.tar.gz dged-dda591fa33ac10c433289aa3ee862c3ded41eed3.tar.xz dged-dda591fa33ac10c433289aa3ee862c3ded41eed3.zip | |
Syntax highlight is a go
Diffstat (limited to 'src/main/main.c')
| -rw-r--r-- | src/main/main.c | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/src/main/main.c b/src/main/main.c index 02afd2b..7b9a812 100644 --- a/src/main/main.c +++ b/src/main/main.c @@ -20,6 +20,10 @@ #include "dged/reactor.h" #include "dged/settings.h" +#ifdef SYNTAX_ENABLE +#include "dged/syntax.h" +#endif + #include "bindings.h" #include "cmds.h" #include "completion.h" @@ -213,11 +217,20 @@ int main(int argc, char *argv[]) { struct buffers buflist = {0}; buffers_init(&buflist, 32); + struct buffer minibuffer = buffer_create("minibuffer"); + minibuffer.lazy_row_add = false; + minibuffer_init(&minibuffer, &buflist); + buffers_add_add_hook(&buflist, watch_file, (void *)reactor); +#ifdef SYNTAX_ENABLE + syntax_init(); +#endif + struct buffer initial_buffer = buffer_create("welcome"); if (filename != NULL) { buffer_destroy(&initial_buffer); initial_buffer = buffer_from_file(filename); + free((void *)filename); } else { const char *welcome_txt = "Welcome to the editor for datagubbar 👴\n"; buffer_set_text(&initial_buffer, (uint8_t *)welcome_txt, @@ -225,9 +238,6 @@ int main(int argc, char *argv[]) { } struct buffer *ib = buffers_add(&buflist, initial_buffer); - struct buffer minibuffer = buffer_create("minibuffer"); - minibuffer.lazy_row_add = false; - minibuffer_init(&minibuffer); windows_init(display_height(display), display_width(display), ib, &minibuffer); @@ -383,6 +393,11 @@ int main(int argc, char *argv[]) { minibuffer_destroy(); buffer_destroy(&minibuffer); buffers_destroy(&buflist); + +#ifdef SYNTAX_ENABLE + syntax_teardown(); +#endif + display_clear(display); display_destroy(display); destroy_bindings(); |
