mirror of
https://github.com/kovidgoyal/kitty.git
synced 2026-10-21 04:32:05 +00:00
...
This commit is contained in:
parent
591473d9c1
commit
7b0caaa491
1 changed files with 17 additions and 13 deletions
|
|
@ -82,20 +82,24 @@ func (h *Handler) render_match_with_positions(text string, add_ellipsis bool, po
|
|||
}
|
||||
h.lp.QueueWriteString(text)
|
||||
}
|
||||
at := 0
|
||||
runes := []rune(text)
|
||||
limit := len(runes)
|
||||
for _, p := range positions {
|
||||
if p >= limit || at >= limit || p <= at {
|
||||
break
|
||||
if len(positions) == 0 {
|
||||
write_chunk(text, false)
|
||||
} else {
|
||||
at := 0
|
||||
runes := []rune(text)
|
||||
limit := len(runes)
|
||||
for _, p := range positions {
|
||||
if p >= limit || at >= limit || p <= at {
|
||||
break
|
||||
}
|
||||
before := runes[at:p]
|
||||
write_chunk(string(before), false)
|
||||
write_chunk(string(runes[p]), true)
|
||||
at = p + 1
|
||||
}
|
||||
if at < len(runes) {
|
||||
write_chunk(string(runes[at:]), false)
|
||||
}
|
||||
before := runes[at:p]
|
||||
write_chunk(string(before), false)
|
||||
write_chunk(string(runes[p]), true)
|
||||
at = p + 1
|
||||
}
|
||||
if at < len(runes) {
|
||||
write_chunk(string(runes[at:]), false)
|
||||
}
|
||||
if add_ellipsis {
|
||||
write_chunk("…", false)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue