install.fairie/dotfiles/.vim/plugged/fzf/src/item.go
Git E2E Dev Test Username 8c6fca48ea git subrepo clone https://github.com/junegunn/fzf.git ./dotfiles/.vim/plugged/fzf
subrepo:
  subdir:   "dotfiles/.vim/plugged/fzf"
  merged:   "dad26d81d"
upstream:
  origin:   "https://github.com/junegunn/fzf.git"
  branch:   "master"
  commit:   "dad26d81d"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"
2022-10-18 10:37:14 -04:00

44 lines
957 B
Go

package fzf
import (
"github.com/junegunn/fzf/src/util"
)
// Item represents each input line. 56 bytes.
type Item struct {
text util.Chars // 32 = 24 + 1 + 1 + 2 + 4
transformed *[]Token // 8
origText *[]byte // 8
colors *[]ansiOffset // 8
}
// Index returns ordinal index of the Item
func (item *Item) Index() int32 {
return item.text.Index
}
var minItem = Item{text: util.Chars{Index: -1}}
func (item *Item) TrimLength() uint16 {
return item.text.TrimLength()
}
// Colors returns ansiOffsets of the Item
func (item *Item) Colors() []ansiOffset {
if item.colors == nil {
return []ansiOffset{}
}
return *item.colors
}
// AsString returns the original string
func (item *Item) AsString(stripAnsi bool) string {
if item.origText != nil {
if stripAnsi {
trimmed, _, _ := extractColor(string(*item.origText), nil, nil)
return trimmed
}
return string(*item.origText)
}
return item.text.ToString()
}