Provisional selection drives edit suggestion generation

US11763078B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11763078-B2
Application numberUS-202117237936-A
CountryUS
Kind codeB2
Filing dateApr 22, 2021
Priority dateApr 22, 2021
Publication dateSep 19, 2023
Grant dateSep 19, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Edit automation enhancements may be implemented in source code editors and other text editors. Provisional selections that indicate user intentions are submitted to a suggestion generator with other edit context information, to improve the quality of generated text suggestions and reduce the cognitive load on users. A provisional selection may include a highlighted completion list entry, or document text targeted by a hovering cursor, or metainformation text targeted by the hovering cursor, for example. An inline grey text suggestion driven by provisional selection may be displayed simultaneously with completion list suggestions that were created without regard to provisional selection. Suggestions driven by provisional selection may be interleaved with existing document text. Suggestions may be accepted fully in one gesture, or in parts. Suggestions may be edited by a user before being accepted, driving further suggestion refinement. Multiple suggestions may be displayed simultaneously, reducing pressure on the suggestion generator.

First claim

Opening claim text (preview).

What is claimed is: 1. A computing system configured to display text suggestions which change according to provisional selections from a user during an editing session, the system comprising: a digital memory, the digital memory configurable to contain a document, the document including document text; a processor in operable communication with the digital memory; a display device; an editor having a user interface which upon execution with the processor displays at least a portion of the document on the display device, the user interface including a text insertion point; wherein the editor is configured to perform edit automation steps upon execution with the processor, including automatically (a) submitting edit context information to a suggestion generation machine learning model, the edit context information including a provisional selection of displayed text which is a focus of attention in the user interface due to user interaction with the computing system via the user interface, the provisionally selected text corresponding to a completion list entry of a completion list which has a plurality of entries, (b) getting from the suggestion generation machine learning model a token completion text suggestion which is based at least in part on the provisional selection, and (c) displaying the token completion text suggestion near the text insertion point. 2. The system of claim 1 , wherein the document text includes source code, and the provisional selection includes at least one of the following: a user-indicated entry in a completion list which includes source code method suggestions; a user-indicated entry in a completion list which includes an application program interface method suggestion; a user-indicated entry in a completion list which includes source code property suggestions; a user-indicated entry in a completion list which includes source code reserved word suggestions; a user-indicated entry in a completion list which includes source code data variable suggestions; a user-indicated entry in a completion list which includes source code data structure suggestions; a user-indicated entry in a completion list which includes source code identifiers from one or more application program interface suggestions; a user-indicated entry in a completion list which includes source code method argument suggestions; or a user-indicated entry in a completion list which includes source code overloaded method suggestions. 3. The system of claim 1 , wherein the edit automation steps include producing a filtered completion item list by filtering a set of source code completion items, and wherein the provisional selection includes a user-indicated entry in the filtered completion item list. 4. The system of claim 1 , wherein the edit automation steps include detecting that a cursor is hovering over a hover target portion of the document text, and wherein the provisional selection includes at least part of the hover target portion. 5. The system of claim 1 , wherein the edit automation steps further comprise committing the token completion text suggestion, and wherein the committing includes: receiving an acceptance of at least a part of the token completion text suggestion; designating the part of the token completion text suggestion as an accepted part; and altering the document text to include a copy of the accepted part. 6. A method which provides updated text suggestions as a user changes provisional selections during a document editing session, the method comprising: obtaining via a user interface a first provisional selection which is a first focus of attention in the user interface due to user interaction with the computing system via the user interface, the provisional selection corresponding to a completion list entry of a completion list which has a plurality of entries; submitting the first provisional selection to a suggestion generation machine learning model; getting from the suggestion generation machine learning model a first text suggestion which is based at least in part on the first provisional selection and which includes a possible line completion; and displaying the first text suggestion inline in the user interface. 7. The method of claim 6 , further comprising: obtaining via the user interface a second provisional selection which is a second focus of attention in the user interface; submitting the second provisional selection to the suggestion generation machine learning model; getting from the suggestion generation machine learning model a second text suggestion which is based at least in part on the second provisional selection; removing the first text suggestion from being displayed; and displaying the second text suggestion inline in the user interface. 8. The method of claim 7 , further comprising: getting a third text suggestion from an origin which is not the suggestion generation model; and displaying the third text suggestion at the same time as displaying the second text suggestion. 9. The method of claim 6 , wherein at least one of the following conditions is satisfied: the first text suggestion spans more than one line of text; or the first text suggestion includes a multi-part text suggestion having at least two parts, and the method displays the two parts with an intervening portion of document text displayed between the two parts. 10. The method of claim 6 , wherein the method integrates semantic completion with full line completion. 11. The method of claim 6 , further comprising: acquiring metainformation text which includes a natural language description of a token that is represented by at least a part of the first text suggestion; and displaying the metainformation text at the same time as displaying the first text suggestion. 12. The method of claim 6 , further comprising: committing the first provisional selection upon receiving a first instance of a commit gesture; and then committing at least a part of the first text suggestion upon receiving a second instance of the commit gesture. 13. The method of claim 6 , wherein the first provisional selection corresponds to an item in a set of available provisional items, and method comprises displaying at least a portion of the set of available provisional items. 14. The method of claim 6 , wherein the method includes modifying the first text suggestion based on user input, and then committing the first text suggestion as modified. 15. The method of claim 6 , wherein the method comprises detecting that a cursor is hovering over a hover target, and wherein the first provisional selection corresponds to at least a part of the hover target. 16. A computer-readable storage device configured with data and instructions which upon execution by a processor cause a computing system to perform a method which provides updated text suggestions as a user changes provisional selections during a document editing session, the method comprising: obtaining via a user interface a first provisional selection corresponding to a first completion set entry of a completion set which has a plurality of entries; submitting the first provisional selection to a suggestion generation model which includes a machine learning model; getting from the suggestion generation model a first text suggestion which is based at least in part on the first provisional selection; displaying the first text suggestion; obtaining via a user interface a second provisional selection corresponding to a second completion set entry of the completion set; submitting the second provisional selection to the suggesti

Assignees

Inventors

Classifications

  • G06F40/166Primary

    Editing, e.g. inserting or deleting · CPC title

  • G06F40/274Primary

    Converting codes to words; Guess-ahead of partial word inputs · CPC title

  • Intelligent editors · CPC title

  • model driven · CPC title

  • Interaction with lists of selectable items, e.g. menus · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11763078B2 cover?
Edit automation enhancements may be implemented in source code editors and other text editors. Provisional selections that indicate user intentions are submitted to a suggestion generator with other edit context information, to improve the quality of generated text suggestions and reduce the cognitive load on users. A provisional selection may include a highlighted completion list entry, or doc…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F40/166. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 19 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).