Skip to content

How should end users implement multiple edits provided by copilotInlineEdit? #32

@osiewicz

Description

@osiewicz

In docs for copilot-language-server, there's the following excerpt:

textDocument/copilotInlineEdit is a custom method used to retrieve "next edit" suggestions which are inline completions that may include deletions or modifications to existing text and may not be positioned at the cursor. These are similar to inline completions and the API shape is similar as well. But it is a separate method to allow opting into the feature and distinguishing between the two kinds of suggestions.
...
The result is an object containing an edits array:

Per the following, edits should be interpreted as alternatives to be cycled through, as defined in LSP spec:
https://microsoft.github.io/language-server-protocol/specifications/lsp/3.18/specification/#textDocument_inlineCompletion

When multiple inline completion items are returned, the client may decide whether the user can cycle through them or if they, along with their filterText, are merely for filtering if the user continues to type without yet accepting the inline completion item.

I am curious though whether this is a correct interpretation or if e.g. contents of edits could instead be interpreted as a sequence of suggestions to be applied (well..) consecutively.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions