termui: use Esc key to quit instead of 'q' to free it for a "query" feature

Michael Muré created

Change summary

termui/bug_table.go | 4 ++--
termui/show_bug.go  | 4 ++--
termui/termui.go    | 2 ++
3 files changed, 6 insertions(+), 4 deletions(-)

Detailed changes

termui/bug_table.go 🔗

@@ -114,7 +114,7 @@ func (bt *bugTable) layout(g *gocui.Gui) error {
 		v.Frame = false
 		v.BgColor = gocui.ColorBlue
 
-		fmt.Fprintf(v, "[q] Quit [←↓↑→,hjkl] Navigation [enter] Open bug [n] New bug [i] Pull [o] Push")
+		fmt.Fprintf(v, "[Esc] Quit [←↓↑→,hjkl] Navigation [enter] Open bug [n] New bug [i] Pull [o] Push")
 	}
 
 	_, err = g.SetCurrentView(bugTableView)
@@ -123,7 +123,7 @@ func (bt *bugTable) layout(g *gocui.Gui) error {
 
 func (bt *bugTable) keybindings(g *gocui.Gui) error {
 	// Quit
-	if err := g.SetKeybinding(bugTableView, 'q', gocui.ModNone, quit); err != nil {
+	if err := g.SetKeybinding(bugTableView, gocui.KeyEsc, gocui.ModNone, quit); err != nil {
 		return err
 	}
 

termui/show_bug.go 🔗

@@ -93,7 +93,7 @@ func (sb *showBug) layout(g *gocui.Gui) error {
 	}
 
 	v.Clear()
-	fmt.Fprintf(v, "[q] Save and return [←↓↑→,hjkl] Navigation ")
+	fmt.Fprintf(v, "[Esc] Save and return [←↓↑→,hjkl] Navigation ")
 
 	if sb.isOnSide {
 		fmt.Fprint(v, "[a] Add label [r] Remove label")
@@ -112,7 +112,7 @@ func (sb *showBug) layout(g *gocui.Gui) error {
 
 func (sb *showBug) keybindings(g *gocui.Gui) error {
 	// Return
-	if err := g.SetKeybinding(showBugView, 'q', gocui.ModNone, sb.saveAndBack); err != nil {
+	if err := g.SetKeybinding(showBugView, gocui.KeyEsc, gocui.ModNone, sb.saveAndBack); err != nil {
 		return err
 	}
 

termui/termui.go 🔗

@@ -76,6 +76,8 @@ func initGui(action func(ui *termUI) error) {
 
 	ui.g.SetManagerFunc(layout)
 
+	ui.g.InputEsc = true
+
 	err = keybindings(ui.g)
 
 	if err != nil {