mirror of
https://github.com/Hopiu/micro.git
synced 2026-03-17 06:20:28 +00:00
bindings: Allow raw escape sequence to be bound with bind
This commit is contained in:
parent
68d88b571d
commit
dcc7205699
1 changed files with 8 additions and 3 deletions
|
|
@ -634,6 +634,11 @@ func (h *BufPane) ShowCmd(args []string) {
|
|||
InfoBar.Message(option)
|
||||
}
|
||||
|
||||
func parseKeyArg(arg string) string {
|
||||
// If this is a raw escape sequence, convert it to its raw byte form
|
||||
return strings.ReplaceAll(arg, "\\x1b", "\x1b")
|
||||
}
|
||||
|
||||
// ShowKeyCmd displays the action that a key is bound to
|
||||
func (h *BufPane) ShowKeyCmd(args []string) {
|
||||
if len(args) < 1 {
|
||||
|
|
@ -641,7 +646,7 @@ func (h *BufPane) ShowKeyCmd(args []string) {
|
|||
return
|
||||
}
|
||||
|
||||
event, err := findEvent(args[0])
|
||||
event, err := findEvent(parseKeyArg(args[0]))
|
||||
if err != nil {
|
||||
InfoBar.Error(err)
|
||||
return
|
||||
|
|
@ -660,7 +665,7 @@ func (h *BufPane) BindCmd(args []string) {
|
|||
return
|
||||
}
|
||||
|
||||
_, err := TryBindKey(args[0], args[1], true)
|
||||
_, err := TryBindKey(parseKeyArg(args[0]), args[1], true)
|
||||
if err != nil {
|
||||
InfoBar.Error(err)
|
||||
}
|
||||
|
|
@ -673,7 +678,7 @@ func (h *BufPane) UnbindCmd(args []string) {
|
|||
return
|
||||
}
|
||||
|
||||
err := UnbindKey(args[0])
|
||||
err := UnbindKey(parseKeyArg(args[0]))
|
||||
if err != nil {
|
||||
InfoBar.Error(err)
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue