From 3936a6f07b216c9ad0bfcdec64d2a2343f33ebeb Mon Sep 17 00:00:00 2001 From: ayntgl Date: Tue, 25 Jan 2022 00:19:03 +0400 Subject: [PATCH] Refine and set default keybindings to sane defaults --- config/mod.go | 34 ++++++++++++++++------------------ ui/handlers.go | 17 ++++++----------- 2 files changed, 22 insertions(+), 29 deletions(-) diff --git a/config/mod.go b/config/mod.go index a09776c..57fd04c 100644 --- a/config/mod.go +++ b/config/mod.go @@ -15,18 +15,17 @@ type GeneralConfig struct { } type KeybindingsConfig struct { - FocusGuildsList string `json:"focusGuildsList"` - FocusChannelsTreeView string `json:"focusChannelsTreeView"` - FocusMessagesTextView string `json:"focusMessagesTextView"` - FocusMessageInputField string `json:"focusMessageInputField"` - FocusMessageActionsList string `json:"focusMessageActionsList"` + ToggleGuildsList string `toml:"toggle_guilds_list"` + ToggleChannelsTreeView string `toml:"toggle_channels_tree_view"` + ToggleMessagesTextView string `toml:"toggle_messages_text_view"` + ToggleMessageInputField string `toml:"toggle_message_input_field"` + ToggleMessageActionsList string `toml:"toggle_message_actions_list"` + ToggleExternalEditor string `toml:"toggle_external_editor"` - OpenEditor string `json:"open_editor"` - - SelectPreviousMessage string `json:"selectPreviousMessage"` - SelectNextMessage string `json:"selectNextMessage"` - SelectFirstMessage string `json:"selectFirstMessage"` - SelectLastMessage string `json:"selectLastMessage"` + SelectPreviousMessage string `toml:"select_previous_message"` + SelectNextMessage string `toml:"select_next_message"` + SelectFirstMessage string `toml:"select_first_message"` + SelectLastMessage string `toml:"select_last_message"` } type Config struct { @@ -75,13 +74,12 @@ func newDefaultConfig() Config { Timestamps: false, }, Keybindings: KeybindingsConfig{ - FocusGuildsList: "Alt+Rune[g]", - FocusChannelsTreeView: "Alt+Rune[t]", - FocusMessagesTextView: "Alt+Rune[m]", - FocusMessageInputField: "Alt+Rune[i]", - FocusMessageActionsList: "Alt+Rune[a]", - - OpenEditor: "Alt+Rune[e]", + ToggleGuildsList: "g", + ToggleChannelsTreeView: "c", + ToggleMessagesTextView: "m", + ToggleMessageInputField: "i", + ToggleMessageActionsList: "a", + ToggleExternalEditor: "Ctrl-E", SelectPreviousMessage: "Up", SelectNextMessage: "Down", diff --git a/ui/handlers.go b/ui/handlers.go index 1fe977c..80bb1e2 100644 --- a/ui/handlers.go +++ b/ui/handlers.go @@ -16,16 +16,16 @@ import ( func onAppInputCapture(app *App, e *tcell.EventKey) *tcell.EventKey { switch e.Name() { - case app.Config.Keybindings.FocusGuildsList: + case app.Config.Keybindings.ToggleGuildsList: app.SetFocus(app.GuildsList) return nil - case app.Config.Keybindings.FocusChannelsTreeView: + case app.Config.Keybindings.ToggleChannelsTreeView: app.SetFocus(app.ChannelsTreeView) return nil - case app.Config.Keybindings.FocusMessagesTextView: + case app.Config.Keybindings.ToggleMessagesTextView: app.SetFocus(app.MessagesTextView) return nil - case app.Config.Keybindings.FocusMessageInputField: + case app.Config.Keybindings.ToggleMessageInputField: app.SetFocus(app.MessageInputField) return nil } @@ -197,7 +197,7 @@ func onMessagesTextViewInputCapture(app *App, e *tcell.EventKey) *tcell.EventKey Highlight(ms[app.SelectedMessage].ID). ScrollToHighlight() return nil - case app.Config.Keybindings.FocusMessageActionsList: + case app.Config.Keybindings.ToggleMessageActionsList: messageActionsList := tview.NewList() hs := app.MessagesTextView.GetHighlights() @@ -320,7 +320,7 @@ func onMessageInputFieldInputCapture(app *App, e *tcell.EventKey) *tcell.EventKe app.SelectedMessage = -1 app.MessagesTextView.Highlight() return nil - case app.Config.Keybindings.OpenEditor: + case app.Config.Keybindings.ToggleExternalEditor: e := os.Getenv("EDITOR") if e == "" { return nil @@ -351,10 +351,5 @@ func onMessageInputFieldInputCapture(app *App, e *tcell.EventKey) *tcell.EventKe app.MessageInputField.SetText(string(b)) } - // The default global navigation shortcuts include Alt as the mod key. - if e.Modifiers() == tcell.ModAlt { - return nil - } - return e }