summaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
authorAlbert Cervin <albert@acervin.com>2023-02-21 22:26:36 +0100
committerAlbert Cervin <albert@acervin.com>2023-02-21 22:26:36 +0100
commit44fd8cde61e3e89e5f83c98900a403e922073727 (patch)
tree22ed65a8b3c766fa21c35fe4d567399e3810454a /src/main.c
parentd7bf8702bf32720d93c4e690937bc8b683926be1 (diff)
downloaddged-44fd8cde61e3e89e5f83c98900a403e922073727.tar.gz
dged-44fd8cde61e3e89e5f83c98900a403e922073727.tar.xz
dged-44fd8cde61e3e89e5f83c98900a403e922073727.zip
Implement support for settings
Settings are a flat "dictionary" containing paths to settings on the format: <category>.<sub-category>.<setting>.
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/main.c b/src/main.c
index 6a84dd4..31305d9 100644
--- a/src/main.c
+++ b/src/main.c
@@ -13,6 +13,7 @@
#include "display.h"
#include "minibuffer.h"
#include "reactor.h"
+#include "settings.h"
struct frame_allocator frame_allocator;
@@ -84,6 +85,9 @@ int main(int argc, char *argv[]) {
signal(SIGTERM, terminate);
+ settings_init(64);
+ buffer_static_init();
+
frame_allocator = frame_allocator_create(16 * 1024 * 1024);
// create reactor
@@ -103,6 +107,8 @@ int main(int argc, char *argv[]) {
sizeof(GLOBAL_COMMANDS) / sizeof(GLOBAL_COMMANDS[0]));
register_commands(&commands, BUFFER_COMMANDS,
sizeof(BUFFER_COMMANDS) / sizeof(BUFFER_COMMANDS[0]));
+ register_commands(&commands, SETTINGS_COMMANDS,
+ sizeof(SETTINGS_COMMANDS) / sizeof(SETTINGS_COMMANDS[0]));
// keymaps
struct keymap *current_keymap = NULL;
@@ -307,6 +313,7 @@ int main(int argc, char *argv[]) {
frame_allocator_clear(&frame_allocator);
}
+ minibuffer_destroy();
buffer_destroy(&minibuffer);
buffers_destroy(&buflist);
display_clear(display);
@@ -317,6 +324,7 @@ int main(int argc, char *argv[]) {
reactor_destroy(reactor);
frame_allocator_destroy(&frame_allocator);
buffer_static_teardown();
+ settings_destroy();
return 0;
}