From 0c08f0b6fd7925818925ffdc64bfc742c563c431 Mon Sep 17 00:00:00 2001 From: CJ van den Berg Date: Wed, 6 Mar 2024 10:28:40 +0100 Subject: [PATCH] feat: make gutter line numbers configurable for all vim modes --- src/config.zig | 3 +++ src/tui/mode/input/vim/insert.zig | 1 + src/tui/mode/input/vim/normal.zig | 2 +- src/tui/mode/input/vim/visual.zig | 1 + 4 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/config.zig b/src/config.zig index 0c28276..eac9730 100644 --- a/src/config.zig +++ b/src/config.zig @@ -7,6 +7,9 @@ modstate_show: bool = false, keystate_show: bool = false, gutter_line_numbers: bool = true, gutter_line_numbers_relative: bool = false, +vim_normal_gutter_line_numbers_relative: bool = true, +vim_visual_gutter_line_numbers_relative: bool = true, +vim_insert_gutter_line_numbers_relative: bool = false, enable_terminal_cursor: bool = false, highlight_current_line: bool = true, highlight_current_line_gutter: bool = true, diff --git a/src/tui/mode/input/vim/insert.zig b/src/tui/mode/input/vim/insert.zig index f860b51..3eb7054 100644 --- a/src/tui/mode/input/vim/insert.zig +++ b/src/tui/mode/input/vim/insert.zig @@ -31,6 +31,7 @@ pub fn create(a: Allocator) !tui.Mode { .handler = EventHandler.to_owned(self), .name = root.application_logo ++ "INSERT", .description = "vim", + .line_numbers = if (tui.current().config.vim_insert_gutter_line_numbers_relative) .relative else .absolute, }; } diff --git a/src/tui/mode/input/vim/normal.zig b/src/tui/mode/input/vim/normal.zig index 5eca4a2..222dd91 100644 --- a/src/tui/mode/input/vim/normal.zig +++ b/src/tui/mode/input/vim/normal.zig @@ -32,7 +32,7 @@ pub fn create(a: Allocator) !tui.Mode { .handler = EventHandler.to_owned(self), .name = root.application_logo ++ "NORMAL", .description = "vim", - .line_numbers = .relative, + .line_numbers = if (tui.current().config.vim_normal_gutter_line_numbers_relative) .relative else .absolute, }; } diff --git a/src/tui/mode/input/vim/visual.zig b/src/tui/mode/input/vim/visual.zig index 992f76c..eab013b 100644 --- a/src/tui/mode/input/vim/visual.zig +++ b/src/tui/mode/input/vim/visual.zig @@ -32,6 +32,7 @@ pub fn create(a: Allocator) !tui.Mode { .handler = EventHandler.to_owned(self), .name = root.application_logo ++ "VISUAL", .description = "vim", + .line_numbers = if (tui.current().config.vim_visual_gutter_line_numbers_relative) .relative else .absolute, }; }