Skip to content

Make the Command Line Mode easier to access #8322

Closed

Description

@Don-Vito

Description of the new feature/enhancement

Today, to get to the command line mode I need to open the action mode and then to delete a ">" symbol, which is not very convenient.

While discussing this with Mike Griese (@zadjii-msft) few ideas were raised:

  1. Adding a separate binding for ToggleCommandPalette(mode=commandline)
  2. Having ToggleCommandPalette() switch between modes: closed->action->command line->closed.
  3. Both of them ☺️

Proposed technical implementation details (optional)

The most straightforward solution is to add an optional command palette mode to the ToggleCommandPalette, with two "launch modes": action and command line.

We will be able to implement option 2 only once #8044 gets merged.

Activity

  1. added
    Issue-FeatureComplex enough to require an in depth planning process and actual budgeted, scheduled work.
    on Nov 18, 2020
  2. ghost added
    Needs-TriageIt's a new issue that the core contributor team needs to triage at the next triage meeting
    on Nov 18, 2020
  3. ghost added
    Needs-Tag-FixDoesn't match tag requirements
    on Nov 18, 2020
  4. zadjii-msft commented on Nov 18, 2020

    @zadjii-msft
    Member

    I'll be danged, I could have sworn I had already filed a task for this.

    Ideas:

    • I don't really care that toggle with a mode might also close it. Maybe if you're in action mode, and you press the toggleCommandPalette(mode=commandline) keybinding, it'll pop you directly into commandline mode? (with Enable shortcut while CommandPalette is open #8044) (and vice versa)
    • Action and commandline mode definitely, tab search maybe? I suppose { action: toggleCommandPalette, mode: tabSearch } doesn't really make sense now does it.
  5. added
    Area-UserInterfaceIssues pertaining to the user interface of the Console or Terminal
    Issue-TaskIt's a feature request, but it doesn't really need a major design.
    and removed
    Issue-FeatureComplex enough to require an in depth planning process and actual budgeted, scheduled work.
    on Nov 18, 2020
  6. ghost removed
    Needs-Tag-FixDoesn't match tag requirements
    on Nov 18, 2020
  7. DHowett commented on Nov 18, 2020

    @DHowett
    Member

    I'd say that the command palette being the backend for tab search is an implementation detail, not something to expose to the users 😄

  8. Don-Vito commented on Nov 18, 2020

    @Don-Vito
    ContributorAuthor

    I'll be danged, I could have sworn I had already filed a task for this.

    Ideas:

    * I don't really care that toggle with a mode might also close it. Maybe if you're in action mode, and you press the `toggleCommandPalette(mode=commandline)` keybinding, it'll pop you directly into commandline mode? (with #8044) (and vice versa)
    
    * Action and commandline mode definitely, tab search maybe? I suppose `{ action: toggleCommandPalette, mode: tabSearch }` doesn't _really_ make sense now does it.
    

    Mike Griese (@zadjii-msft) - I believe that:

    • toggleCommandPalette(mode=commandline) - should work from everywhere (even if the window is minimized and the PC is hibernated)
    • same for toggleCommandPalette(mode=commandline)
    • while toggleCommandPalette() with no mode specified should rotate through the modes (closed->action->command line).

    WDYT?

  9. Don-Vito commented on Nov 18, 2020

    @Don-Vito
    ContributorAuthor

    I'd say that the command palette being the backend for tab search is an implementation detail, not something to expose to the users 😄

    Yep.. that was a bad idea, especially since we already have a tabSeach binding...

  10. changed the title [-]Allow binding a shortcut to openning CommandPalette in the Command Line Mode[/-] [+]Make the Command Line Mode easier to access[/+] on Nov 18, 2020
  11. removed
    Needs-TriageIt's a new issue that the core contributor team needs to triage at the next triage meeting
    on Nov 20, 2020
  12. Don-Vito commented on Nov 23, 2020

    @Don-Vito
    ContributorAuthor

    I'll be danged, I could have sworn I had already filed a task for this.

    Mike Griese (@zadjii-msft) - I found it.. in the form of TODO 😆

     void TerminalPage::_HandleToggleCommandPalette(const IInspectable& /*sender*/,
                                                       const ActionEventArgs& args)
        {
            // TODO GH#6677: When we add support for commandline mode, first set the
            // mode that the command palette should be in, before making it visible.
            CommandPalette().EnableCommandPaletteMode();
            CommandPalette().Visibility(CommandPalette().Visibility() == Visibility::Visible ?
                                            Visibility::Collapsed :
                                            Visibility::Visible);
            args.Handled(true);
        }
    
  13. ghost added
    In-PRThis issue has a related PR
    on Nov 24, 2020
  14. ghost removed
    In-PRThis issue has a related PR
    on Dec 3, 2020
  15. ghost closed this as completedin f072eafon Dec 3, 2020
  16. ghost added
    Resolution-Fix-CommittedFix is checked in, but it might be 3-4 weeks until a release.
    on Dec 3, 2020
  17. deleted a comment from on Dec 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area-CmdPalCommand Palette issues and featuresArea-UserInterfaceIssues pertaining to the user interface of the Console or TerminalIssue-TaskIt's a feature request, but it doesn't really need a major design.Product-TerminalThe new Windows Terminal.Resolution-Fix-CommittedFix is checked in, but it might be 3-4 weeks until a release.

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions