mirror of
https://github.com/Hilbis/Hilbish
synced 2025-03-30 10:13:23 +00:00
feat: select 1st item on history find menu (closes #148)
cancels on escape unless the user moves to another item
This commit is contained in:
parent
ebec585690
commit
bd4e0df7b3
@ -333,6 +333,8 @@ func (rl *Instance) Readline() (string, error) {
|
||||
|
||||
rl.modeTabFind = true
|
||||
rl.updateTabFind([]rune{})
|
||||
rl.updateVirtualComp()
|
||||
rl.renderHelpers()
|
||||
rl.viUndoSkipAppend = true
|
||||
|
||||
// Tab Completion & Completion Search ---------------------------------------------------------------
|
||||
@ -486,7 +488,10 @@ func (rl *Instance) Readline() (string, error) {
|
||||
if string(r[:i]) != seqShiftTab &&
|
||||
string(r[:i]) != seqForwards && string(r[:i]) != seqBackwards &&
|
||||
string(r[:i]) != seqUp && string(r[:i]) != seqDown {
|
||||
rl.resetVirtualComp(false)
|
||||
// basically only applies except on 1st ctrl r open
|
||||
// so if we have not explicitly selected something
|
||||
// (tabCompletionSelect is false) drop virtual completion
|
||||
rl.resetVirtualComp(!rl.tabCompletionSelect)
|
||||
}
|
||||
}
|
||||
|
||||
@ -608,6 +613,7 @@ func (rl *Instance) escapeSeq(r []rune) {
|
||||
case string(charEscape):
|
||||
switch {
|
||||
case rl.modeAutoFind:
|
||||
rl.resetVirtualComp(true)
|
||||
rl.resetTabFind()
|
||||
rl.clearHelpers()
|
||||
rl.resetTabCompletion()
|
||||
@ -615,6 +621,7 @@ func (rl *Instance) escapeSeq(r []rune) {
|
||||
rl.renderHelpers()
|
||||
|
||||
case rl.modeTabFind:
|
||||
rl.resetVirtualComp(true)
|
||||
rl.resetTabFind()
|
||||
rl.resetTabCompletion()
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user