App

Zed from a game controller

Download on the Mac App StoreThe Zed layout is built into InputConfig, free on the Mac App Store. You don't have to make an account, there are no subscriptions, and nothing is locked. Optimized for Apple silicon.

On a Mac: Zed reads its default Mac keymap from this layout. If you switched Zed to another base keymap, change the output of any row that no longer matches.

Yes, Zed works from a game controller on a Mac, and this layout is built around finding things: Goto Anything on the big button, the command palette beside it, a cursor at the next match, and a comment toggle. Every key is one Zed ships with.

The layout, control by control

Click a control. Labels:

How the layout thinks

  • Find. Goto Anything (Command P) on the bottom face button, the command palette (Command Shift P) on the right, Find on the left bumper.
  • Edit. Add a cursor at the next match (Command D) on the left face button, toggle comment (Command Slash) on the top, Save on the right bumper.
  • Tabs and files. Previous and next tab on the D-pad (Command Shift and the brackets), close tab on Back, Share or View, a new file on Start.
  • Point and scroll. The left stick is the pointer, the right stick scrolls, the right trigger clicks.

Tune it

  • Project panel. Command B shows and hides it. Put it on a stick click.
  • File tree focus. Put Command Shift E on the other stick click.
  • The agent panel. Find its key in Zed's command palette, which lists every action's shortcut.
  • Vim mode. It works alongside all of this.

Goto Anything on the big button gets you to any file in two presses and a few words of dictation.

Get it in two clicks

  1. Open InputConfig and click Smart Preset Maker on the welcome screen.
  2. Search for Zed and pick it. The layout is created as a preset in your sidebar, named and ready.
  3. Press Activate. Every row can be changed afterwards: the editor's Scan button rebinds any control the moment you touch it.

Every binding, as a table

The Zed preset in InputConfig, drawn on a DualSense Edge with each control labeled with the key or action it sends.
Figure 1. The Zed preset drawn on a DualSense Edge in InputConfig's Live Visualizer. For example, Right trigger is labeled Click, and A / Cross is labeled Goto Anything (Cmd+P).
ControllerSendsWhat it does
Left stick leftMouse motion left (speed 16)Pointer left
Left stick rightMouse motion right (speed 16)Pointer right
Left stick upMouse motion up (speed 16)Pointer up
Left stick downMouse motion down (speed 16)Pointer down
Right stick downScroll downScroll down
Right stick upScroll upScroll up
Right triggerLeft clickClick
A / CrossCommand (Left), PGoto Anything (Cmd+P)
B / CircleCommand (Left), Shift (Left), PCommand Palette (Cmd+Shift+P)
X / SquareCommand (Left), DAdd multi-cursor (Cmd+D)
Y / TriangleCommand (Left), /Toggle comment (Cmd+/)
LB / L1Command (Left), FFind (Cmd+F)
RB / R1Command (Left), SSave (Cmd+S)
Back / Share / SelectCommand (Left), WClose tab (Cmd+W)
Start / OptionsCommand (Left), NNew file (Cmd+N)
D-pad leftCommand (Left), Shift (Left), [Previous tab (Cmd+Shift+[)
D-pad rightCommand (Left), Shift (Left), ]Next tab (Cmd+Shift+])

Names follow the editor's Xbox / PlayStation pair, and a Switch pad fires by position.

Questions

Does it work if I use Zed's VS Code keymap?

Mostly. Check Goto Anything and the tab rows, and change the output of any that differ.

Download on the Mac App StoreOpen source on GitHub.

Updated