Skip to content

Terminal Key-Map Sets for/from iTerm & other Terminals #2205

Open

Description

@bitcrazed

Description of the new feature/enhancement

This feature request was requested by an early-adopter of Terminal at a review meeting.

It'd be great if Terminal could implement a set of key-mappings that mimic most/many of iTerm's most common key-mappings.

This would help users who're already familiar with iTerm

We should also take a look at key mappings for other common Terminals and see if we can introduce "key-mapping sets" or preconfigured "key-maps" allowing the user to select and/or switch between key-maps on the fly, perhaps per-tab since some shells/apps/tools may be better suited to one set of key-maps than others.

If other Terminals store their key-mappings in settings/config, we could even permit importing of keymaps & converting them into Terminal key-mappings.

Proposed technical implementation details (optional)

Activity

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

    @DHowett-MSFT
    Contributor

    Somebody has to spec this. Rich Turner (@bitcrazed), want to do the honors?

  5. ghost removed
    Needs-Tag-FixDoesn't match tag requirements
    on Aug 5, 2019
  6. zadjii-msft commented on Aug 19, 2019

    @zadjii-msft
    Member

    Ooh this is a subset of #2237

  7. removed
    Area-InteractionInteracting with the vintage console window (as opposed to driving via API or hooks)
    on Jul 7, 2020
  8. zadjii-msft commented on Jan 7, 2022

    @zadjii-msft
    Member

    Documenting publicly for posterity:

    I think our unofficial plan has been to add support for "keymaps". This would follow the work for #1571 / #6899. Then, keymaps would contain objects which bind keys to various actions. The user could then just specify keymap: "foo" to replace all their keybindings with the ones in foo, no layering involved. Adding keys to actions directly would just update the "default" keymap, which is used when no keymap is specified.

    Profiles could also just set a keymap relatively easy then. That's still weird - different profiles having different keys for an app-level command like newTab, but hey, if that's what people want, that's what they get.

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-SettingsIssues related to settings and customizability, for console or terminalIssue-FeatureComplex enough to require an in depth planning process and actual budgeted, scheduled work.Product-TerminalThe new Windows Terminal.

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions