From 9537c5496256e7a76b8e5364b4b0cfc9fd09cfed Mon Sep 17 00:00:00 2001 From: CJ van den Berg Date: Fri, 1 Mar 2024 22:37:51 +0100 Subject: [PATCH] feat: add status message on input mode change --- src/tui/mode/input/flow.zig | 1 + src/tui/mode/input/home.zig | 1 + src/tui/mode/input/vim/insert.zig | 1 + src/tui/mode/input/vim/normal.zig | 1 + src/tui/mode/input/vim/visual.zig | 1 + src/tui/tui.zig | 3 +++ 6 files changed, 8 insertions(+) diff --git a/src/tui/mode/input/flow.zig b/src/tui/mode/input/flow.zig index a8797df..c3ffe3b 100644 --- a/src/tui/mode/input/flow.zig +++ b/src/tui/mode/input/flow.zig @@ -30,6 +30,7 @@ pub fn create(a: Allocator) !tui.Mode { return .{ .handler = EventHandler.to_owned(self), .name = root.application_logo ++ root.application_name, + .description = "default", }; } diff --git a/src/tui/mode/input/home.zig b/src/tui/mode/input/home.zig index b6f6f9e..ac04b39 100644 --- a/src/tui/mode/input/home.zig +++ b/src/tui/mode/input/home.zig @@ -20,6 +20,7 @@ pub fn create(a: std.mem.Allocator) !tui.Mode { return .{ .handler = EventHandler.to_owned(self), .name = root.application_logo ++ root.application_name, + .description = "home", }; } diff --git a/src/tui/mode/input/vim/insert.zig b/src/tui/mode/input/vim/insert.zig index 6235aaa..f860b51 100644 --- a/src/tui/mode/input/vim/insert.zig +++ b/src/tui/mode/input/vim/insert.zig @@ -30,6 +30,7 @@ pub fn create(a: Allocator) !tui.Mode { return .{ .handler = EventHandler.to_owned(self), .name = root.application_logo ++ "INSERT", + .description = "vim", }; } diff --git a/src/tui/mode/input/vim/normal.zig b/src/tui/mode/input/vim/normal.zig index a870bc2..a8d24e9 100644 --- a/src/tui/mode/input/vim/normal.zig +++ b/src/tui/mode/input/vim/normal.zig @@ -31,6 +31,7 @@ pub fn create(a: Allocator) !tui.Mode { return .{ .handler = EventHandler.to_owned(self), .name = root.application_logo ++ "NORMAL", + .description = "vim", .line_numbers = .relative, }; } diff --git a/src/tui/mode/input/vim/visual.zig b/src/tui/mode/input/vim/visual.zig index 30d4ad1..992f76c 100644 --- a/src/tui/mode/input/vim/visual.zig +++ b/src/tui/mode/input/vim/visual.zig @@ -31,6 +31,7 @@ pub fn create(a: Allocator) !tui.Mode { return .{ .handler = EventHandler.to_owned(self), .name = root.application_logo ++ "VISUAL", + .description = "vim", }; } diff --git a/src/tui/tui.zig b/src/tui/tui.zig index e35704d..f281f2d 100644 --- a/src/tui/tui.zig +++ b/src/tui/tui.zig @@ -703,6 +703,7 @@ const cmds = struct { self.logger.print("unknown mode {s}", .{mode}); break :ret @import("mode/input/flow.zig").create(self.a) catch |e| return tp.exit_error(e); }; + self.logger.print("input mode: {s}", .{(self.input_mode orelse return).description}); } pub fn enter_mode_default(self: *Self, _: Ctx) tp.result { @@ -742,6 +743,7 @@ const cmds = struct { self.input_mode = .{ .handler = mode_instance.handler(), .name = mode_instance.name(), + .description = mode_instance.name(), }; self.mini_mode = .{}; } @@ -759,6 +761,7 @@ const cmds = struct { pub const Mode = struct { handler: EventHandler, name: []const u8, + description: []const u8, line_numbers: enum { absolute, relative } = .absolute, fn deinit(self: *Mode) void {