Fix weird behavior of JumpToMatchingBrace in some ill cases (#1966)

It should not return false immediately when no matching brace is found. This makes the jump fails in certain case: `[  )I]` =/=> `[I  )]`.
When there is no brace near the cursor, the last statement is also executed. This may cause problems when chaining commands.
This commit is contained in:
worldmaker
2022-07-25 05:06:59 +08:00
committed by GitHub
parent cf98b7f824
commit 7efec130dc

View File

@@ -9,6 +9,7 @@ import (
"strings"
"time"
shellquote "github.com/kballard/go-shellquote"
"github.com/zyedidia/micro/v2/internal/buffer"
"github.com/zyedidia/micro/v2/internal/clipboard"
@@ -1267,15 +1268,12 @@ func (h *BufPane) JumpToMatchingBrace() bool {
} else {
h.Cursor.GotoLoc(matchingBrace.Move(1, h.Buf))
}
break
} else {
return false
h.Relocate()
return true
}
}
}
h.Relocate()
return true
return false
}
// SelectAll selects the entire buffer