Providing contextual actions in command line interfaces

US12014194B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12014194-B2
Application numberUS-202217704192-A
CountryUS
Kind codeB2
Filing dateMar 25, 2022
Priority dateMar 25, 2022
Publication dateJun 18, 2024
Grant dateJun 18, 2024

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.

Techniques for expanding capabilities of a computing shell, which exposes services provided by an OS and which is separated from a kernel of the OS, by enabling a command line interface (CLI) of the shell to have context aware capabilities. An event in which a command is entered in the CLI is detected. The CLI displays a command decoration that is selectable and that, when selected, triggers display of a menu comprising a command suggestion. The command suggestion is generated based on a context associated with the command. In response to selection of the command decoration, the menu is displayed. This menu includes the command suggestion. In response to selection of the command suggestion, the computing shell automatically executes the command suggestion.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for expanding capabilities of a computing shell, which exposes services provided by an operating system (OS) and which is separated from a kernel of the OS, by enabling a command line interface (CLI) of the shell to have context aware capabilities, said method comprising: detecting an event in which a command is entered in the CLI; after detecting the event, displaying, proximately to a line in the CLI where new text is enterable in a character grid of the CLI and in a region that is outside of the character grid of the CLI but that is still entirely within a window of the CLI, a command decoration that is selectable and that, when selected, triggers display of a menu comprising one or more command suggestions that are recognized by the computing shell, wherein each command suggestion included among the one or more command suggestions is generated based on a context associated with the command, wherein the region is a border region of the CLI's window, and wherein an entirety of the command decoration is displayed within the border region; detecting, within the CLI, a first selection of the command decoration; in response to the first selection of the command decoration, displaying the menu, which includes the one or more command suggestions, wherein each command suggestion included among the one or more command suggestions is selectable within the menu and, when selected, results in the computing shell automatically executing said selected command suggestion; and in response to a second selection of a particular command suggestion that was displayed in the menu, causing the computing shell to automatically execute the particular command suggestion. 2. The method of claim 1 , wherein: the CLI of the shell is a Windows OS command prompt or an iOS terminal, the CLI of the shell allows for new text to be entered only at a tail end of the CLI, and the CLI of the shell is not a text editor. 3. The method of claim 1 , wherein the particular command suggestion includes at least one of: a change directory set of commands that cause the shell to change a working directory and that then subsequently reruns the command that was originally entered in the CLI such that the change directory set of commands causes multiple commands to be executed automatically, or a termination set of commands that cause a termination event to occur and that then subsequently reruns the command that was originally entered in the CLI such that the termination set of commands also causes multiple commands to be executed automatically. 4. The method of claim 1 , wherein the command that was entered in the CLI was not recognized by the computing shell, and wherein the command was not recognized as a result of the command including a typographical error. 5. The method of claim 1 , wherein the menu is displayed as overlapping at least some text that is already displayed in the CLI. 6. The method of claim 1 , wherein: a single command suggestion is displayed in the menu, the single command suggestion is one of a plurality of command suggestions that are generated, and the single command suggestion is displayed in the menu as a result of the single command suggestion having a highest confidence level as compared to confidence levels of other command suggestions included in the plurality of command suggestions. 7. The method of claim 1 , wherein the command that was entered in the CLI was not recognized by the computing shell, and wherein the command was not recognized as a result of the command being associated with an incorrect directory. 8. The method of claim 1 , wherein the command that was entered in the CLI was recognized by the computing shell, and wherein the command decoration is displayed despite the command being recognized by the computing shell. 9. The method of claim 1 , wherein the context is based on historical data associated with a user who entered the command. 10. The method of claim 9 , wherein the context is based on the command itself and/or based on an output that is displayed in response to an attempt by the computing shell to execute the command. 11. The method of claim 10 , wherein some, but not all, of the output is scanned to generate the context on which the one or more command suggestions are generated. 12. The method of claim 1 , wherein a listing of specific commands are maintained in a database, the command that was entered in the CLI is included in the listing of specific commands, and the menu is displayed only when a specific command included in the listing of specific commands is entered in the CLI such that the menu is refrained from being displayed when a particular command that is not included in the listing of specific commands is entered in the CLI. 13. The method of claim 1 , wherein the one or more command suggestions are generated based on using the command that was entered in the CLI as a filter. 14. The method of claim 1 , wherein the one or more command suggestions are generated based on historical data associated with a user who entered the command in the CLI. 15. A computer system configured to expand capabilities of a computing shell, which exposes services provided by an operating system (OS) of the computer system and which is separated from a kernel of the OS, by enabling a command line interface (CLI) of the shell to have context aware capabilities, said computer system comprising: one or more processors; and one or more hardware storage devices that store instructions that are executable by the one or more processors to cause the computer system to: detect an event in which a command is entered in the CLI; after detecting the event, display, proximately to a line in the CLI where new text is enterable in a character grid of the CLI and in a region that is outside of the character grid of the CLI but that is still entirely withing a window of the CLI, a command decoration that is selectable and that, when selected, triggers display of a menu comprising one or more command suggestions that are recognized by the computing shell, wherein each command suggestion included among the one or more command suggestions is generated based on a context associated with the command, wherein the region is a border region of the CLI's window, and wherein an entirety of the command decoration is displayed within the border region; detect, within the CLI, a first selection of the command decoration; in response to the first selection of the command decoration, display the menu, which includes the one or more command suggestions, wherein each command suggestion included among the one or more command suggestions is selectable within the menu; and in response to a second selection of a particular command suggestion that was displayed in the menu, cause the computing shell to automatically execute the particular command suggestion or, alternatively, cause the particular command suggestion to be automatically entered into the CLI but refrain, at least temporarily, from causing the particular command suggestion to be executed by the computing shell. 16. The computer system of claim 15 , wherein the CLI operates independently relative to an integration development environment (IDE). 17. The computer system of claim 15 , wherein a color of the command decoration is different from a color of text displayed in the CLI. 18. A method for expanding capabilities of a computing shell, which exposes services provided by an operating system (OS) and which is separated from a kernel of the OS, by enabling a command line inte

Assignees

Inventors

Classifications

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 US12014194B2 cover?
Techniques for expanding capabilities of a computing shell, which exposes services provided by an OS and which is separated from a kernel of the OS, by enabling a command line interface (CLI) of the shell to have context aware capabilities. An event in which a command is entered in the CLI is detected. The CLI displays a command decoration that is selectable and that, when selected, triggers di…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G06F9/45512. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 18 2024 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 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).