Context menus with VoiceOver

macOS and Mac Apps

Is there a way in macOS to show the context menu wherever the text cursor is? For example, if I was using a text editor with the mouse I might select some text, right click and choose Cut/Copy/Paste. In Windows there is a show context menu button on the keyboard. Is there an equivalent on the Mac?

I think VO+Shift+M will show a context menu, but I think it's tied to the VO cursor. This occasionally does what I want, but often it doesn't seem to work. But I'm thinking this is maybe not a VoiceOver question and that there would be a more general way to do it?

Sorry this feels like a very basic question.



Submitted by HEXAGON on Saturday, November 6, 2021

Normally, VO+Shift+M should work when text is selected. Otherwise, the edit menu in the menu bar should work. Press VO+M and then right arrow three times to get to the edit menu. Then you can navigate through the menu with up and down arrows. Here you can find options like copy, paste select all and so on.

Submitted by mr grieves on Saturday, November 6, 2021

Oh that's a shame if that's the only way as it didn't seem to work very well from a quick play around. Typically I don't want copy/paste specifically, just that's the kind of thing that goes in those menus. I'm thinking mainly for use in PyCharm in the editor, project tree and so on. So far I've been cheating and using the mouse, but I need to get used to using the keyboard.

It seems that navigating menus with the keyboard is one thing that Windows really does much better than macOS.

Thanks very much for replying so quickly though.

Submitted by Jason White on Saturday, November 6, 2021

Once you're in a menu (which can be accessed via the keyboard), in addition to using arrow keys to navigate and enter to select, you can type the initial letter(s) of the menu item's name to move there directly.

Submitted by mr grieves on Saturday, February 26, 2022

Going back to this, I find VO+Shift+M does work fairly well in some apps. Sometimes I've found that it just stops working and I get a little beep - this happens in Mail from time to time and I then need to turn VO on and off again for it to start working.

Some apps don't work with it - for example VS Code and Jetbrains IDEs. I don't know how to do it in VS Code, although I've not researched it yet. In PyCharm I have mapped Opt+M to open the context menu which would work well if there wasn't another bug which meant that the menu contents weren't read out.

I think the main problem with VoiceOver is that it seems to have been designed as an entire alternative to using the Mac with a mouse. Whereas I think there's plenty it does that would be useful anyway, and if it wasn't part of VO it would be more mainstream and then better supported and more stable. Opening context menus is just one thing, but I think in general it would have been a better design if it was just easier to use the Mac with your keyboard and VoiceOver just enhanced that. Another example is when I use the keyboard commander in VO to open up applications quickly. Why that's a feature specific to VoiceOver I don't know.