Documentation
¶
Overview ¶
Package complete implements the code completion algorithm for Elvish.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ArgGenerator ¶
ArgGenerator is the type of functions that generate raw candidates for a command argument. It takes all the existing arguments, the last being the argument to complete, and returns raw candidates or an error.
type CodeBuffer ¶
CodeBuffer is the same the type in src.elv.sh/pkg/el/codearea, replicated here to avoid an unnecessary dependency.
type ComplexItem ¶
type ComplexItem struct { Stem string // Used in the code and the menu. CodeSuffix string // Appended to the code. Display ui.Text // How the item is displayed. If empty, defaults to ui.T(Stem). }
ComplexItem is an implementation of RawItem that offers customization options.
func (ComplexItem) Cook ¶
func (c ComplexItem) Cook(q parse.PrimaryType) modes.CompletionItem
func (ComplexItem) String ¶
func (c ComplexItem) String() string
type Config ¶
type Config struct { // A function for filtering raw candidates. If nil, no filtering is done. Filterer Filterer // Used to generate candidates for a command argument. Defaults to // GenerateFileNames. ArgGenerator ArgGenerator }
Config stores the configuration required for code completion.
type PlainItem ¶
type PlainItem string
PlainItem is a simple implementation of RawItem.
func (PlainItem) Cook ¶
func (p PlainItem) Cook(q parse.PrimaryType) modes.CompletionItem
type RawItem ¶
type RawItem interface { String() string Cook(parse.PrimaryType) modes.CompletionItem }
RawItem represents completion items before the quoting pass.
func FilterPrefix ¶
FilterPrefix filters raw items by prefix. It can be used as a Filterer in Config.
func GenerateDirNames ¶ added in v0.21.0
GenerateFileNames returns directory name candidates that are suitable for completing the last argument. It can be used in Config.ArgGenerator.
func GenerateFileNames ¶
GenerateFileNames returns filename candidates that are suitable for completing the last argument. It can be used in Config.ArgGenerator.