feat: add scroll_keybind_hints command
This commit is contained in:
parent
a296471161
commit
3012fdcd90
3 changed files with 20 additions and 1 deletions
|
|
@ -2,6 +2,7 @@
|
|||
"project": {
|
||||
"press": [
|
||||
["ctrl+?", "toggle_keybind_hints"],
|
||||
["ctrl+alt+?", "scroll_keybind_hints"],
|
||||
["ctrl+alt+shift+r", "restart"],
|
||||
["ctrl+e", "find_file"],
|
||||
["ctrl+shift+n", "create_new_file"],
|
||||
|
|
@ -382,6 +383,7 @@
|
|||
"overlay/palette": {
|
||||
"press": [
|
||||
["ctrl+?", "toggle_keybind_hints"],
|
||||
["ctrl+alt+?", "scroll_keybind_hints"],
|
||||
["alt+f9", "overlay_next_widget_style"],
|
||||
["alt+!", "add_task"],
|
||||
["ctrl+j", "toggle_panel"],
|
||||
|
|
@ -445,6 +447,7 @@
|
|||
"mini/numeric": {
|
||||
"press": [
|
||||
["ctrl+?", "toggle_keybind_hints"],
|
||||
["ctrl+alt+?", "scroll_keybind_hints"],
|
||||
["b", "toggle_goto_style"],
|
||||
["ctrl+q", "quit"],
|
||||
["ctrl+v", "system_paste"],
|
||||
|
|
@ -461,6 +464,7 @@
|
|||
"mini/get_char": {
|
||||
"press": [
|
||||
["ctrl+?", "toggle_keybind_hints"],
|
||||
["ctrl+alt+?", "scroll_keybind_hints"],
|
||||
["ctrl+g", "mini_mode_cancel"],
|
||||
["ctrl+c", "mini_mode_cancel"],
|
||||
["ctrl+l", "scroll_view_center_cycle"],
|
||||
|
|
@ -473,6 +477,7 @@
|
|||
"mini/buffer": {
|
||||
"press": [
|
||||
["ctrl+?", "toggle_keybind_hints"],
|
||||
["ctrl+alt+?", "scroll_keybind_hints"],
|
||||
["ctrl+q", "quit"],
|
||||
["ctrl+v", "system_paste"],
|
||||
["ctrl+u", "mini_mode_reset"],
|
||||
|
|
@ -492,6 +497,7 @@
|
|||
"mini/file_browser": {
|
||||
"press": [
|
||||
["ctrl+?", "toggle_keybind_hints"],
|
||||
["ctrl+alt+?", "scroll_keybind_hints"],
|
||||
["ctrl+q", "quit"],
|
||||
["ctrl+v", "system_paste"],
|
||||
["ctrl+u", "mini_mode_reset"],
|
||||
|
|
@ -520,6 +526,7 @@
|
|||
"mini/find_in_files": {
|
||||
"press": [
|
||||
["ctrl+?", "toggle_keybind_hints"],
|
||||
["ctrl+alt+?", "scroll_keybind_hints"],
|
||||
["ctrl+q", "quit"],
|
||||
["ctrl+v", "system_paste"],
|
||||
["ctrl+u", "mini_mode_reset"],
|
||||
|
|
@ -554,6 +561,7 @@
|
|||
"mini/find": {
|
||||
"press": [
|
||||
["ctrl+?", "toggle_keybind_hints"],
|
||||
["ctrl+alt+?", "scroll_keybind_hints"],
|
||||
["ctrl+q", "quit"],
|
||||
["ctrl+v", "system_paste"],
|
||||
["ctrl+u", "mini_mode_reset"],
|
||||
|
|
|
|||
|
|
@ -8,6 +8,8 @@ const Widget = @import("Widget.zig");
|
|||
|
||||
const widget_type: Widget.Type = .hint_window;
|
||||
|
||||
var show_page: usize = 0;
|
||||
|
||||
pub fn render_current_input_mode(allocator: std.mem.Allocator, select_mode: keybind.SelectMode, theme: *const Widget.Theme) void {
|
||||
const mode = tui.input_mode() orelse return;
|
||||
const bindings = blk: {
|
||||
|
|
@ -25,9 +27,13 @@ pub fn render_current_key_event_sequence(allocator: std.mem.Allocator, select_mo
|
|||
return render(bindings, theme, .no_key_event_prefix);
|
||||
}
|
||||
|
||||
pub fn scroll() void {
|
||||
show_page += 1;
|
||||
}
|
||||
|
||||
const RenderMode = enum { full, no_key_event_prefix };
|
||||
|
||||
pub fn render(bindings: []const keybind.Binding, theme: *const Widget.Theme, mode: RenderMode) void {
|
||||
fn render(bindings: []const keybind.Binding, theme: *const Widget.Theme, mode: RenderMode) void {
|
||||
// return if something is already rendering to the top layer
|
||||
if (tui.have_top_layer()) return;
|
||||
if (bindings.len == 0) return;
|
||||
|
|
|
|||
|
|
@ -1057,6 +1057,11 @@ const cmds = struct {
|
|||
}
|
||||
pub const toggle_keybind_hints_meta: Meta = .{ .description = "Toggle keybind hints" };
|
||||
|
||||
pub fn scroll_keybind_hints(_: *Self, _: Ctx) Result {
|
||||
@import("keyhints.zig").scroll();
|
||||
}
|
||||
pub const scroll_keybind_hints_meta: Meta = .{ .description = "Scroll keybind hints" };
|
||||
|
||||
pub fn force_color_scheme(self: *Self, ctx: Ctx) Result {
|
||||
self.force_color_scheme(if (try ctx.args.match(.{"dark"}))
|
||||
.dark
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue