Documentation
¶
Overview ¶
Package fzf implements fzf, a command-line fuzzy finder.
Index ¶
- Constants
- Variables
- func CountItems(cs []*Chunk) int
- func Run(opts *Options, version string, revision string)
- type ByOrder
- type ByRelevance
- type ByRelevanceTac
- type Case
- type Chunk
- type ChunkCache
- type ChunkList
- type Delimiter
- type History
- type Item
- type ItemBuilder
- type MatchRequest
- type Matcher
- type Merger
- type Offset
- type Options
- type Pattern
- type Range
- type Reader
- type Result
- type Terminal
- func (t *Terminal) Input() (bool, []rune)
- func (t *Terminal) Loop()
- func (t *Terminal) MaxFitAndPad(opts *Options) (int, int)
- func (t *Terminal) UpdateCount(cnt int, final bool, failedCommand *string)
- func (t *Terminal) UpdateHeader(header []string)
- func (t *Terminal) UpdateList(merger *Merger, reset bool)
- func (t *Terminal) UpdateProgress(progress float32)
- type Token
Constants ¶
const ( EvtReadNew util.EventType = iota EvtReadFin EvtSearchNew EvtSearchProgress EvtSearchFin EvtHeader EvtReady EvtQuit )
fzf events
Variables ¶
EmptyMerger is a Merger with no data
Functions ¶
Types ¶
type ByRelevance ¶
type ByRelevance []Result
ByRelevance is for sorting Items
func (ByRelevance) Len ¶
func (a ByRelevance) Len() int
func (ByRelevance) Less ¶
func (a ByRelevance) Less(i, j int) bool
func (ByRelevance) Swap ¶
func (a ByRelevance) Swap(i, j int)
type ByRelevanceTac ¶
type ByRelevanceTac []Result
ByRelevanceTac is for sorting Items
func (ByRelevanceTac) Len ¶
func (a ByRelevanceTac) Len() int
func (ByRelevanceTac) Less ¶
func (a ByRelevanceTac) Less(i, j int) bool
func (ByRelevanceTac) Swap ¶
func (a ByRelevanceTac) Swap(i, j int)
type Chunk ¶
type Chunk struct {
// contains filtered or unexported fields
}
Chunk is a list of Items whose size has the upper limit of chunkSize
type ChunkCache ¶
type ChunkCache struct {
// contains filtered or unexported fields
}
ChunkCache associates Chunk and query string to lists of items
func (*ChunkCache) Add ¶
func (cc *ChunkCache) Add(chunk *Chunk, key string, list []Result)
Add adds the list to the cache
type ChunkList ¶
type ChunkList struct {
// contains filtered or unexported fields
}
ChunkList is a list of Chunks
func NewChunkList ¶
func NewChunkList(trans ItemBuilder) *ChunkList
NewChunkList returns a new ChunkList
type Delimiter ¶
type Delimiter struct {
// contains filtered or unexported fields
}
Delimiter for tokenizing the input
type History ¶
type History struct {
// contains filtered or unexported fields
}
History struct represents input history
type Item ¶
type Item struct {
// contains filtered or unexported fields
}
Item represents each input line. 56 bytes.
func (*Item) Colors ¶
func (item *Item) Colors() []ansiOffset
Colors returns ansiOffsets of the Item
func (*Item) TrimLength ¶
type ItemBuilder ¶
ItemBuilder is a closure type that builds Item object from byte array
type MatchRequest ¶
type MatchRequest struct {
// contains filtered or unexported fields
}
MatchRequest represents a search request
type Matcher ¶
type Matcher struct {
// contains filtered or unexported fields
}
Matcher is responsible for performing search
type Merger ¶
type Merger struct {
// contains filtered or unexported fields
}
Merger holds a set of locally sorted lists of items and provides the view of a single, globally-sorted list
func PassMerger ¶
PassMerger returns a new Merger that simply returns the items in the original order
type Offset ¶
type Offset [2]int32
Offset holds two 32-bit integers denoting the offsets of a matched substring
type Options ¶
type Options struct { Fuzzy bool FuzzyAlgo algo.Algo Scheme string Extended bool Phony bool Case Case Normalize bool Nth []Range WithNth []Range Delimiter Delimiter Sort int Tac bool Criteria []criterion Multi int Ansi bool Mouse bool Theme *tui.ColorTheme Black bool Bold bool Height heightSpec MinHeight int Layout layoutType Cycle bool KeepRight bool Hscroll bool HscrollOff int ScrollOff int FileWord bool InfoStyle infoStyle JumpLabels string Prompt string Pointer string Marker string Query string Select1 bool Exit0 bool Filter *string ToggleSort bool Expect map[tui.Event]string Keymap map[tui.Event][]*action Preview previewOpts PrintQuery bool ReadZero bool Printer func(string) PrintSep string Sync bool History *History Header []string HeaderLines int HeaderFirst bool Ellipsis string Margin [4]sizeSpec Padding [4]sizeSpec BorderShape tui.BorderShape Unicode bool Tabstop int ClearOnExit bool Version bool }
Options stores the values of command-line options
type Pattern ¶
type Pattern struct {
// contains filtered or unexported fields
}
Pattern represents search pattern
func BuildPattern ¶
func BuildPattern(fuzzy bool, fuzzyAlgo algo.Algo, extended bool, caseMode Case, normalize bool, forward bool, withPos bool, cacheable bool, nth []Range, delimiter Delimiter, runes []rune) *Pattern
BuildPattern builds Pattern object from the given arguments
type Range ¶
type Range struct {
// contains filtered or unexported fields
}
Range represents nth-expression
func ParseRange ¶
ParseRange parses nth-expression and returns the corresponding Range object
type Reader ¶
type Reader struct {
// contains filtered or unexported fields
}
Reader reads from command or standard input
func (*Reader) ReadSource ¶
func (r *Reader) ReadSource()
ReadSource reads data from the default command or from standard input
type Terminal ¶
type Terminal struct {
// contains filtered or unexported fields
}
Terminal represents terminal input/output
func NewTerminal ¶
NewTerminal returns new Terminal object
func (*Terminal) UpdateCount ¶
UpdateCount updates the count information
func (*Terminal) UpdateHeader ¶
UpdateHeader updates the header
func (*Terminal) UpdateList ¶
UpdateList updates Merger to display the list
func (*Terminal) UpdateProgress ¶
UpdateProgress updates the search progress
type Token ¶
type Token struct {
// contains filtered or unexported fields
}
Token contains the tokenized part of the strings and its prefix length