chore: merge from master

lua5.4
TorchedSammy 2022-03-30 20:29:21 -04:00
commit 75b51075b8
Signed by: sammyette
GPG Key ID: 904FC49417B44DCD
2 changed files with 32 additions and 14 deletions

View File

@ -39,18 +39,20 @@ const (
// Escape sequences // Escape sequences
var ( var (
seqUp = string([]byte{27, 91, 65}) seqUp = string([]byte{27, 91, 65})
seqDown = string([]byte{27, 91, 66}) seqDown = string([]byte{27, 91, 66})
seqForwards = string([]byte{27, 91, 67}) seqForwards = string([]byte{27, 91, 67})
seqBackwards = string([]byte{27, 91, 68}) seqBackwards = string([]byte{27, 91, 68})
seqHome = string([]byte{27, 91, 72}) seqHome = string([]byte{27, 91, 72})
seqHomeSc = string([]byte{27, 91, 49, 126}) seqHomeSc = string([]byte{27, 91, 49, 126})
seqEnd = string([]byte{27, 91, 70}) seqEnd = string([]byte{27, 91, 70})
seqEndSc = string([]byte{27, 91, 52, 126}) seqEndSc = string([]byte{27, 91, 52, 126})
seqDelete = string([]byte{27, 91, 51, 126}) seqDelete = string([]byte{27, 91, 51, 126})
seqShiftTab = string([]byte{27, 91, 90}) seqDelete2 = string([]byte{27, 91, 80})
seqAltQuote = string([]byte{27, 34}) // Added for showing registers ^[" seqShiftTab = string([]byte{27, 91, 90})
seqAltR = string([]byte{27, 114}) // Used for alternative history seqAltQuote = string([]byte{27, 34}) // Added for showing registers ^["
seqAltR = string([]byte{27, 114}) // Used for alternative history
seqAltBackspace = string([]byte{27, 127})
) )
const ( const (

View File

@ -712,12 +712,15 @@ func (rl *Instance) escapeSeq(r []rune) {
rl.updateHelpers() rl.updateHelpers()
return return
case seqDelete: case seqDelete,seqDelete2:
if rl.modeTabFind { if rl.modeTabFind {
rl.backspaceTabFind() rl.backspaceTabFind()
} else { } else {
rl.deleteBackspace(true) if (rl.pos < len(rl.line)) {
rl.deleteBackspace(true)
}
} }
case seqHome, seqHomeSc: case seqHome, seqHomeSc:
if rl.modeTabCompletion { if rl.modeTabCompletion {
return return
@ -752,6 +755,19 @@ func (rl *Instance) escapeSeq(r []rune) {
rl.updateTabFind([]rune{}) rl.updateTabFind([]rune{})
rl.viUndoSkipAppend = true rl.viUndoSkipAppend = true
case seqAltBackspace:
if rl.modeTabCompletion {
rl.resetVirtualComp(false)
}
// This is only available in Insert mode
if rl.modeViMode != VimInsert {
return
}
rl.saveToRegister(rl.viJumpB(tokeniseLine))
rl.viDeleteByAdjust(rl.viJumpB(tokeniseLine))
rl.updateHelpers()
default: default:
if rl.modeTabFind { if rl.modeTabFind {
return return