Versions in this module Expand all Collapse all v0 v0.2.1 Jul 13, 2026 v0.2.0 Jun 28, 2026 v0.1.0 Jun 27, 2026 Changes in this version + const MinScorePerRune + func ApplyNode(dir string, n Node) (field string, descended bool) + func AscendPath(field string) string + func ClampWindow(n, cursor, scroll int, contains func(start, cursor int) bool) (newCursor, newScroll int) + func CommonPrefix(cands []Candidate) string + func DisplayDir(dir string) string + func JumpSection(n, cursor, delta int, groupAt func(i int) string) int + func Relevant(r Result, queryLen int) bool + func Snap(n, idx, dir int, selectable func(i int) bool) int + func SplitPath(field string) (dir, frag string) + func Update(m Model, ev Event) (Model, []Effect) + func WindowContainsCursor(n, start, cursor, budget int, groupAt func(i int) (group string, ok bool)) bool + type CancelListEffect struct + Gen uint64 + type Candidate struct + Match bool + Node Node + Positions []int + func MatchingCandidates(cands []Candidate) []Candidate + type CloseEffect struct + type Closer interface + Close func() error + type Crumb struct + Exists bool + Name string + type Effect interface + type Event interface + type FileSource interface + List func(ctx context.Context, dir string) (Listing, error) + Resolve func(ctx context.Context, path string) (start string, err error) + type Fuzzy struct + MinScore int + func (f Fuzzy) Match(query, candidate string) (Result, bool) + type Index struct + func BuildIndex(entryPaths []string) *Index + func (ix *Index) Breadcrumb(field string) (segs []Crumb, leaf string, kind LeafKind) + func (ix *Index) Candidates(dir, frag string) []Candidate + func (ix *Index) CaseCanonical(field string) string + func (ix *Index) ChildCount(dir, name string) int + func (ix *Index) Children(folder string) []Node + func (ix *Index) Classify(field string) LeafKind + func (ix *Index) HasEntry(path string) bool + func (ix *Index) IsFolder(path string) bool + type Indexer interface + Index func() *Index + type KeyEvent struct + Key string + Text string + type LeafKind int + const LeafCaseCollision + const LeafEmpty + const LeafEmptySegment + const LeafExistingEntry + const LeafIsFolder + const LeafNew + const LeafTrailingSlash + type ListDirEffect struct + Dir string + Gen uint64 + Sync bool + type ListLoadedEvent struct + Err error + Gen uint64 + Listing Listing + type Listing struct + Dir string + Notice string + Parent string + Rows []Row + type LoadState uint8 + const Empty + const Error + const Idle + const Loading + const Ready + func (s LoadState) String() string + type Matcher interface + Match func(query, candidate string) (Result, bool) + type Model struct + func New(opts Options) Model + func (m Model) Budget() int + func (m Model) Canceled() bool + func (m Model) Cursor() int + func (m Model) Cwd() string + func (m Model) Done() bool + func (m Model) Filtered() []int + func (m Model) FocusedRow() (Row, bool) + func (m Model) Gen() uint64 + func (m Model) GroupAt(i int) (string, bool) + func (m Model) Height() int + func (m Model) Load(dir string) (Model, []Effect) + func (m Model) Loading() bool + func (m Model) MatchTextOf(r Row) string + func (m Model) Notice() string + func (m Model) Outcome() (Outcome, bool) + func (m Model) PrevRows() []Row + func (m Model) Query() string + func (m Model) Rows() []Row + func (m Model) Scroll() int + func (m Model) State() LoadState + func (m Model) Width() int + type Nav struct + Parent string + UpBadge string + UpGroup string + UpKind string + UpTitle string + UseBadge string + UseGroup string + UseKind string + UseRow bool + UseTitle string + type NavIntent uint8 + const IntentAscend + const IntentDescend + const IntentReference + const IntentSelectLeaf + const IntentUseContainer + func (in NavIntent) String() string + type Node struct + IsEntry bool + IsFolder bool + Name string + type Options struct + KeepCursorOnFilter bool + MatchText func(Row) string + Matcher Matcher + MinRows int + ReserveRows int + Start string + Validate Validator + type Outcome struct + Intent NavIntent + Notice string + Rows []Row + func (o Outcome) Token() string + func (o Outcome) Tokens() []string + type ResizeEvent struct + H int + W int + type Result struct + Positions []int + Score int + func MatchFuzzy(query, candidate string) (Result, bool) + type Row struct + Badge string + Description string + Detail string + Group string + Intent NavIntent + IsContainer bool + IsSymlink bool + Kind string + LinkTarget string + Meta any + Positions []int + Selectable bool + Title string + Token string + func InjectNav(dir string, children []Row, nav Nav) []Row + type Substring struct + func (Substring) Match(query, candidate string) (Result, bool) + type SyncLister interface + ListSync func(dir string) (Listing, error) + type Validator func(r Row) (ok bool, notice string)