Kaynağa Gözat

Refine and set default keybindings to sane defaults

ayntgl 4 yıl önce
ebeveyn
işleme
3936a6f07b
2 değiştirilmiş dosya ile 22 ekleme ve 29 silme
  1. 16 18
      config/mod.go
  2. 6 11
      ui/handlers.go

+ 16 - 18
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",

+ 6 - 11
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
 }