Show HN: Pie Menu – a radial menu for macOS (pie-menu.com)
Hi everyone! I'm Marius Hauken, an indie developer, and I'm excited to share my app: Pie Menu. It offers a fresh way to access your favorite menu bar commands and keyboard shortcuts on macOS. By simply pressing a hotkey you choose during setup, a radial menu appears around your cursor, customized to the current active application. This allows you to quickly select commands without having to remember complex shortcuts across different applications.
Pie Menu comes with a library of preprogrammed commands for popular apps, but you can easily add any app on your computer. We've also created an extensive database at https://www.pie-menu.com/shortcuts where you can quickly add shortcuts for different programs. If a command lacks a keyboard shortcut, you can always create one through System Preferences > Keyboard > Application Shortcuts.
For now, you can use Apple’s SF Symbols to label your commands, but we plan to include custom symbol sets in the future. You can see and vote on our roadmap at https://www.pie-menu.com/help/roadmap.
I hope you give Pie Menu a try and find it as useful as I intended!
145 comments
[ 3.3 ms ] story [ 205 ms ] threadhttps://patents.google.com/?q=(radial+menu)&oq=radial+menu
Fortunately their patent has long expired, and Blender supports pie menus quite well now.
Pie Menu FUD and Misconceptions.
Dispelling the fear, uncertainty, doubt and misconceptions about pie menus.
https://donhopkins.medium.com/pie-menu-fud-and-misconception...
Patent Abuse Example: US Patent US5689667A: Methods and system of controlling menus with radial and linear portions
Unfortunately a bad patent that covered an obvious technique, and also made some incorrect misleading claims, was abused by Alias marketing in Bill Buxton’s name to baselessly threaten and discouraged others from using pie or marking menus, by exaggerating its scope and obfuscating its specificity. It’s my strong opinion that the particular technique that it covered (overflow items) was quite obvious.
Gordon Kurtenbach and I discussed pie and marking menus in 1990 before he wrote his paper and filed the patent, and at that time he made it clear that he understood pie menus supported mouse ahead display suppression, and that pie menus enjoyed the same benefits as marking menus have in easing the transition from novice to expert user:
“The the cool thing is that expert can mouse ahead like you’ve talked about but they get an ink trail so they have a better idea what they’ve selected without even bothering to wait for the menu to come up.” -Gordon Kurtenbach
However that contradicts what the paper and the patent implies, and it’s misled other people into incorrectly believing that pie menus don’t support what I call “mouse ahead display preemption” (or “suppression”, a harsher word), and that the patent covers much more than it actually does.
When Gordon applied for the patent on in 1995, which his employment contract with SGI required him to do, the patent had at least two misleading statements, and the “overflow” technique claim was obvious, which should have prevented it from being granted or invalidated it.
Another piece of mistaken but published misinformation about the differences of “typical pie menus” and marking menus is that “typical pie menus” pop up submenus after the cursor has moved a certain distance from the menu center, without clicking the mouse button. However, I have never seen nor implemented such badly designed pie menus in the real world.
Dumbold Voting Machine Pie Menu in The Sims “Typical pie menus” (such as those in The Sims, played by hundreds of millions of people) have always selected leaf and submenu items by triggering on a button press or release (or pen or finger tap or release). They also typically support mouse-ahead. Pie menus can seamlessly support both quick press-drag-release gestures, as well as the more leisurely click-move-click gestures.
The patent US5689667A “Methods and system of controlling menus with radial and linear portions” also makes the mistake of claiming that that pie menu selection is based on pointing at the items like linear menus (or PIXIE), instead of the direction of cursor motion, which Kurtenbach and Buxton know very well is simply not the case with “typical pie menus”.
“Radial menus include two types: pie menus and marking menus. Pie menus are typically used in item selection using the location principles of linear menus as discussed above. Marking menus operate on the principle of the direction of cursor or pointer motion as being t...
https://www.youtube.com/watch?v=jDrqR9XssJI
Dedication and Thanks to:
Neil E. Wiseman, Heinz U. Lemke, John O. Hiles,
PIXIE: A New Approach to Graphical Man-Machine Communication, Proceedings of 1969 CAD Conference Southampton IEEE Conference Publication 51, pp. 463–471.
https://www.donhopkins.com/home/documents/PIXIE%20a%20new%20...
David Chapman, Cambridge University Library
https://www.cl.cam.ac.uk/library/archives.html
This film demonstrates an early graphical user interface in use. It was made in 1969 to accompany a paper entitled “PIXIE: a new approach to graphical man-machine communication” presented at the 1969 CAD Conference held in Southampton. Rimsky-Korsakov’s Flight of the Bumble-Bee performed by Yuja Wang
https://archive.org/details/FlightOfTheBumblebeeChaameh/02+Y...
Remixing and Synchronization with AfterEffects by Don Hopkins.
See also:
Pie Menus: A 30 Year Retrospective. By Don Hopkins, Ground Up Software, May 15, 2018.
https://donhopkins.medium.com/pie-menus-936fed383ff1
Timeline of pie menu development by Don Hopkins.
https://donhopkins.medium.com/pie-menu-timeline-21bec9b21620
I use the Windows key to open applications on Windows, Cmd+Space on MacOS, and Mod+d on my i3 nixOS machine.
Some people like their mouse/trackpad though, and this seems like a useful tool for those that do.
https://www.youtube.com/watch?v=1brQOz6FZjI
Smarter Pie Menu: Searchable Interactions V2.0:
https://www.patreon.com/posts/83099506
RosannaTxt: SEARCHABLE Pie Menu Mod for The Sims 4 - An absolute GAME CHANGER!
https://www.youtube.com/watch?v=A0TY6gV9InQ
Keyboard shortcuts are a completely different action than pie menu gestures, so keyboard shortcuts are not as easy to learn as pie menu gestures, because they don't support "rehearsal": browsing a pie menu is actually rehearsal for using them with quick "mouse ahead" gestures, while selecting from linear drop-down menus that show keyboard shortcuts isn't rehearsal because using keyboard shortcuts is a totally different unrelated action than using a drop-down menu.
https://news.ycombinator.com/item?id=17105643
>Swiping gestures are essentially like invisible pie menus, but actual pie menus have the advantage of being "Self Revealing" [5] because they have a way to prompt and show you what the possible gestures are, and give you feedback as you make the selection.
>They also provide the ability of "Reselection" [6], which means you as you're making a gesture, you can change it in-flight, and browse around to any of the items, in case you need to correct a mistake or change your mind, or just want to preview the effect or see the description of each item as you browse around the menu.
>Compared to typical gesture recognition systems, like Palm's graffiti for example, you can think of the gesture space of all possible gestures between touching the screen, moving around through any possible path, then releasing: most gestures are invalid syntax errors, and they only recognizes well formed gestures.
>There is no way to correct or abort a gesture once you start making it (other than scribbling, but that might be recognized as another undesired gesture!). Ideally each gesture should be as far away as possible from all other gestures in gesture space, to minimize the possibility of errors, but in practice they tend to be clumped (so "2" and "Z" are easily confused, while many other possible gestures are unused and wasted).
>But with pie menus, only the direction between the touch and the release matter, not the path. All gestures are valid and distinct: there are no possible syntax errors, so none of gesture space is wasted. There's a simple intuitive mapping of direction to selection that the user can understand (unlike the mysterious fuzzy black box of a handwriting recognizer), that gives you the ability to refine your selection by moving out further (to get more leverage), return to the center to cancel, move around to correct and change the selection.
>Pie menus also support "Rehearsal" [7] -- the way a novice uses them is actually practice for the way an expert uses them, so they have a smooth learning curve. Contrast this with keyboard accelerators for linear menus: you pull down a linear menu with the mouse to learn the keyboard accelerators, but using the keyboard accelerators is a totally different action, so it's not rehearsal.
>Pie menu users tend to learn them in three stages: 1) novice pops up an unfamiliar menu, looks at all the items, moves in the direction of the desired item, and selects it. 2) intermediate remembers the direction of the item they want, pop up the menu and moves in that direction without hesitating (mousing ahead but not selecting), looks at the screen to make sure the desired item is selected, then clicks to select the item. 3) expert knows w...
That is what I mean by "self revealing": When it pops up, the menu shows you what options you have. But you can use it with a swift gesture and it doesn't pop up at all, or you can start out with a swift gesture in the direction you want, then stop and wait for the menu to pop up to confirm you've selected the right item, then click to select it.
Also the menu can display the selected item label next to the cursor like a tooltip while you're gesturing ahead, before it's popped up the entire menu, to feed back the selected item even before popping up the menu.
The best case is when the menu can apply a preview of the currently selected item (which can include using the distance as a parameter, like setting the size of something by "pulling out"), so you just release the button when you see what you want, without ever having to see the menu itself if you move continuously, but at any time you can stop moving and see the menu.
Not all implementations of pie menus support all these features, but I've been implementing and writing about them for decades, they're not patented, and anyone who wants is free to implement them.
You really ought to try them out yourself, since just architectural armchair astronaut speculating about how a hypothetical user interface you've never actually used might work, without actually implementing it, and using it a lot, and measuring its speed and error rates, and iteratively refining it, and putting in front of users and asking them for feedback, and shipping and supporting it in real world products and open source projects, isn't really useful and doesn't provide much insight.
I haven't used it, but the readme seems very nice. It might be more focused on app launching.
Does not feel intuitive with mouse (too slow) but keybinds / touch, sure.
I like how I can swipe to open apps without looking.
For desktop, I've already customized a keyboard-driven workflow that's hard to beat. So a pie menu doesn't make much sense there for me.
You can also pin menu items for each apps.
https://www.youtube.com/watch?v=7Q06HN5dXzI
Somehow I‘m an orthogonal-grid person and perceive radial movements as too finicky to perform accurately.
My first thought was how this would be helpful for the app commands I use just enough to want quickly accessible but not often enough that I remember the keyboard shortcuts. I'll give this a try when my Mac/OS are compatible. Best of luck.
However, a few years later, they removed it from the driver, and Windows 7 couldn't use the older driver. So, I made a AutoHotkey script that displayed the same grid as a plain jpeg and then activated some action depending on the mouse coordinates within that image.
Seems like a reasonable choice for one-thumb controls.
The lack of seeing this may be an patent issue where a patent for a radial menu needs to be invalidated. Pie menus existed back in the 60's, before the patents, lots of examples in this thread.
And for what it's wroth, I'm glad this thing exists, because people should be able to see it and say 'oh yeah, this is like the buttons on my remote control"
It's a big no for me.
Unfortunately, all I saw were rather dirty hacks that only kinda worked.
It was kinda neat, I forget the name of it.
I don't know why but I have long struggled with using icons to mark a task. There are certain ones that are so engrained like a floppy disk to save, a plus mark for a new tab, reload symbol, home symbol, or other very obvious ones. Or ones that are just the logo for a brand, those are easy to remember.
But especially as we moved away from skeuomorphism (which thankfully bits and pieces of it are combing back, without it being bashed over the head with, like with the apple pencil UI) this got a lot harder for me.
And I see this, and and I just know that I am going to have to look at all 6 going in a circle to find the one I want every time.
I experienced this recently where I wanted to put a Shortcut (from the Mac App) on my toolbar in finder. My only option is to show icon only, text only, or both. I can't say, I want to have both for some things.
I am curious if anyone else has struggle with symbols. Basically it seems like for me, the only symbols I remember are the ones that are so obvious (I guess) that it couldn't possible be something else. Or its universal across most/all apps. Even apps that I use daily, if its a symbol unique to that app I am still going to go top to bottom or left to right mousing over until I find the one I am looking for.
What immediately came to my mind was Autodesk Maya, where they have similar menus that use text only labels (see the screenshot from their manual). They have a lot of very abstract and complicated features, so every bit of usability counts.
https://www.nngroup.com/articles/icon-usability/
https://help.autodesk.com/view/MAYAUL/2022/ENU/?guid=GUID-8B...
The grumpy.website linked above is gold!
The most well-known implementation of the concept was in the Sims 1, where actions for the active sim were clearly labelled. The menu was a nest of unlimited depth. Good to see someone bring it to the desktop, but it would be better if it were more like its forbearer.
You could also try a 7 day free trial if you pick the yearly subscription (you can then directly cancel in App store and not pay)
Here is more on the pricing: https://www.pie-menu.com/help/pricing
But as you say I haven’t written about the free tier there.
https://stackoverflow.com/questions/826782/how-to-disable-te...
I had to do something similar a while ago to implement drag&drop while keeping text selectable.
With help of better touch tool or others you can also trigger it with three finger tap on your trackpad: https://www.pie-menu.com/help/show-options
I wrote a Swift package that does a similar thing (but as an iOS widget): https://github.com/RiftValleySoftware/RVS_Spinner
My own experience, is that I keep on not using it in my projects. It's too much of an "in your face" widget. I was going to do a SwiftUI version of it, but stopped working on it, when I figured out that I probably wouldn't use it.
I suspect that MacOS, with the cursor-oriented navigation, is a better home for it.
For other apps where the keyboard shortcuts acts more as other shortcuts I don’t use it as much.
EDIT: I know a lot of Mac users have HHKBs or whatever, so they are not actually pressing Apple keys, but I think it would make the page seem more Apple-oriented.
X11 SimCity Demo:
https://www.youtube.com/watch?v=Jvi98wVUmQA
Here's a demo of a more recent version for Flash from around 2009, which demonstrates how the pie menus serve as a much quicker alternative to the tool palette:
Micropolis Online (SimCity) Web Demo:
https://www.youtube.com/watch?v=8snnqQSI0GE
And of course The Sims 1 uses pie menus too.
The Sims, Pie Menus, Edith Editing, and SimAntics Visual Programming Demo:
https://www.youtube.com/watch?v=-exdu4ETscs
https://github.com/SimHacker/micropolis/blob/master/laszlo/m...
Here's a link to the WebAssembly / WebGL / HTML / SvelteKit development version of Micropolis (SimCity), but I haven't implemented most of the user interface or pie menus yet.
https://micropolisweb.com/
https://github.com/SimHacker/MicropolisCore
SvelteKit pie menus for Micropolis are my roadmap, and I've started implementing pie menus for SvelteKit by translating my old jQuery pie menus code, but jQuery and SvelteKit has vastly different architectures, so there's more work to do, and I'm working on it in my spare time, not as a full time job.
Old jQuery pie menus:
https://github.com/SimHacker/jquery-pie/blob/master/javascri...
New SvelteKit pie menus for Micropolis (SimCity), a work in progress, but I haven't written the rendering stuff yet:
https://github.com/SimHacker/MicropolisCore/blob/main/microp...
Also, here's a video of the Unity3D pie menus I implemented a dozen years or so ago (there's a link to the code in the description, but it's 12 years old and Unity's approach to user interfaces has changed a lot since then):
https://www.youtube.com/watch?v=sMN1LQ7qx9g
https://donhopkins.com/home/catalog/piemenus/piemenus-hopkin...