mirror of
https://github.com/eeeXun/GTT.git
synced 2025-05-15 15:20:37 -07:00
117 lines
3.3 KiB
Go
117 lines
3.3 KiB
Go
package main
|
|
|
|
import (
|
|
"github.com/gdamore/tcell/v2"
|
|
)
|
|
|
|
var keyNames = map[tcell.Key]string{
|
|
tcell.KeyF1: "F1",
|
|
tcell.KeyF2: "F2",
|
|
tcell.KeyF3: "F3",
|
|
tcell.KeyF4: "F4",
|
|
tcell.KeyF5: "F5",
|
|
tcell.KeyF6: "F6",
|
|
tcell.KeyF7: "F7",
|
|
tcell.KeyF8: "F8",
|
|
tcell.KeyF9: "F9",
|
|
tcell.KeyF10: "F10",
|
|
tcell.KeyF11: "F11",
|
|
tcell.KeyF12: "F12",
|
|
tcell.KeyF13: "F13",
|
|
tcell.KeyF14: "F14",
|
|
tcell.KeyF15: "F15",
|
|
tcell.KeyF16: "F16",
|
|
tcell.KeyF17: "F17",
|
|
tcell.KeyF18: "F18",
|
|
tcell.KeyF19: "F19",
|
|
tcell.KeyF20: "F20",
|
|
tcell.KeyF21: "F21",
|
|
tcell.KeyF22: "F22",
|
|
tcell.KeyF23: "F23",
|
|
tcell.KeyF24: "F24",
|
|
tcell.KeyF25: "F25",
|
|
tcell.KeyF26: "F26",
|
|
tcell.KeyF27: "F27",
|
|
tcell.KeyF28: "F28",
|
|
tcell.KeyF29: "F29",
|
|
tcell.KeyF30: "F30",
|
|
tcell.KeyF31: "F31",
|
|
tcell.KeyF32: "F32",
|
|
tcell.KeyF33: "F33",
|
|
tcell.KeyF34: "F34",
|
|
tcell.KeyF35: "F35",
|
|
tcell.KeyF36: "F36",
|
|
tcell.KeyF37: "F37",
|
|
tcell.KeyF38: "F38",
|
|
tcell.KeyF39: "F39",
|
|
tcell.KeyF40: "F40",
|
|
tcell.KeyF41: "F41",
|
|
tcell.KeyF42: "F42",
|
|
tcell.KeyF43: "F43",
|
|
tcell.KeyF44: "F44",
|
|
tcell.KeyF45: "F45",
|
|
tcell.KeyF46: "F46",
|
|
tcell.KeyF47: "F47",
|
|
tcell.KeyF48: "F48",
|
|
tcell.KeyF49: "F49",
|
|
tcell.KeyF50: "F50",
|
|
tcell.KeyF51: "F51",
|
|
tcell.KeyF52: "F52",
|
|
tcell.KeyF53: "F53",
|
|
tcell.KeyF54: "F54",
|
|
tcell.KeyF55: "F55",
|
|
tcell.KeyF56: "F56",
|
|
tcell.KeyF57: "F57",
|
|
tcell.KeyF58: "F58",
|
|
tcell.KeyF59: "F59",
|
|
tcell.KeyF60: "F60",
|
|
tcell.KeyF61: "F61",
|
|
tcell.KeyF62: "F62",
|
|
tcell.KeyF63: "F63",
|
|
tcell.KeyF64: "F64",
|
|
tcell.KeyCtrlA: "C-a",
|
|
tcell.KeyCtrlB: "C-b",
|
|
tcell.KeyCtrlC: "C-c",
|
|
tcell.KeyCtrlD: "C-d",
|
|
tcell.KeyCtrlE: "C-e",
|
|
tcell.KeyCtrlF: "C-f",
|
|
tcell.KeyCtrlG: "C-g",
|
|
tcell.KeyCtrlJ: "C-j",
|
|
tcell.KeyCtrlK: "C-k",
|
|
tcell.KeyCtrlL: "C-l",
|
|
tcell.KeyCtrlN: "C-n",
|
|
tcell.KeyCtrlO: "C-o",
|
|
tcell.KeyCtrlP: "C-p",
|
|
tcell.KeyCtrlQ: "C-q",
|
|
tcell.KeyCtrlR: "C-r",
|
|
tcell.KeyCtrlS: "C-s",
|
|
tcell.KeyCtrlT: "C-t",
|
|
tcell.KeyCtrlU: "C-u",
|
|
tcell.KeyCtrlV: "C-v",
|
|
tcell.KeyCtrlW: "C-w",
|
|
tcell.KeyCtrlX: "C-x",
|
|
tcell.KeyCtrlY: "C-y",
|
|
tcell.KeyCtrlZ: "C-z",
|
|
tcell.KeyCtrlSpace: "C-Space",
|
|
tcell.KeyCtrlUnderscore: "C-_",
|
|
tcell.KeyCtrlRightSq: "C-]",
|
|
tcell.KeyCtrlBackslash: "C-\\",
|
|
tcell.KeyCtrlCarat: "C-^",
|
|
}
|
|
|
|
func getKeyName(event *tcell.EventKey) string {
|
|
var key = event.Key()
|
|
|
|
keyName := keyNames[key]
|
|
|
|
if event.Modifiers() == tcell.ModAlt && key == tcell.KeyRune {
|
|
if event.Rune() == ' ' {
|
|
keyName = "A-Space"
|
|
} else {
|
|
keyName = "A-" + string(event.Rune())
|
|
}
|
|
}
|
|
|
|
return keyName
|
|
}
|