Documentation ¶
Index ¶
- func IsSeedMatching(lseed string, completion string) bool
- func MatchPrecedence(lseed string, completion string) int
- func MatchSeedString(completions []string, seed string) []string
- func SeedAfter(text string, f func(r rune) bool) string
- func SeedPath(text string) string
- func SeedSpace(text string) string
- type Completion
- type Completions
- type Edit
- type EditFunc
- type Lookup
- type LookupFunc
- type MatchFunc
- type Matches
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsSeedMatching ¶
IsSeedMatching returns whether the given lowercase seed matches the given completion string. It checks whether different transformations of the completion contain the lowercase version of the seed.
func MatchPrecedence ¶
MatchPrecedence returns the sorting precedence of the given completion relative to the given lowercase seed. The completion is assumed to already match the seed by IsSeedMatching. A lower return value indicates a higher precedence.
func MatchSeedString ¶
MatchSeedString returns a list of matches given a list of string possibilities and a seed. It checks whether different transformations of each possible completion contain a lowercase version of the seed. It returns nil if there are no matches.
func SeedAfter ¶ added in v0.1.4
SeedPath returns the text after the last rune for which the given function returns true, which is typically used for creating a completion seed string.
Types ¶
type Completion ¶
type Completion struct { // Text is the completion text: what will actually be inserted if selected. Text string // Label is the label text to show the user. It is only used if // non-empty; otherwise Text is used. Label string // Icon is the icon to render in core for the completion item. Icon icons.Icon // Desc is extra description information used in tooltips in core. Desc string }
Completion holds one potential completion
func MatchSeedCompletion ¶
func MatchSeedCompletion(completions []Completion, seed string) []Completion
MatchSeedCompletion returns a list of matches given a list of Completion possibilities and a seed. It checks whether different transformations of each possible completion contain a lowercase version of the seed. It returns nil if there are no matches.
type Completions ¶
type Completions []Completion
Completions is a full list (slice) of completion options
type Edit ¶
type Edit struct { // completion text after special edits NewText string // number of runes, past the cursor, to delete, if any ForwardDelete int // cursor adjustment if cursor should be placed in a location other than at end of newText CursorAdjust int }
Edit is returned from completion edit function to incorporate the selected completion
type EditFunc ¶
EditFunc is passed the current text and the selected completion for text editing. Allows for other editing, e.g. adding "()" or adding "/", etc.
type Lookup ¶
type Lookup struct { // if non-empty, the result is to view this file (full path) Filename string // starting line number within file to display StLine int // ending line number within file EdLine int // if filename is empty, this is raw text to display for lookup result Text []byte }
Lookup is used for returning lookup results
type LookupFunc ¶
LookupFunc is the function called to get the lookup results for given input test and position.
type MatchFunc ¶
MatchFunc is the function called to get the list of possible completions and also determines the correct seed based on the text passed as a parameter of CompletionFunc
type Matches ¶
type Matches struct { // the matches based on seed Matches Completions // seed is the prefix we use to find possible completions Seed string }
Matches is used for passing completions around. contains seed in addition to completions