diff --git a/src/orca/scripts/toolkits/Gecko/formatting.py b/src/orca/scripts/toolkits/Gecko/formatting.py
index 5d2adfd..f076ecf 100644
--- a/src/orca/scripts/toolkits/Gecko/formatting.py
+++ b/src/orca/scripts/toolkits/Gecko/formatting.py
@@ -77,6 +77,26 @@ formatting = {
         pyatspi.ROLE_TABLE: {
             'unfocused': '[]'
             },
+        pyatspi.ROLE_CHECK_MENU_ITEM: {
+            'focused': 'checkedState',
+            'unfocused': 'labelAndName + roleName + checkedState + required + availability + ' + orca.formatting.MNEMONIC + ' + accelerator',
+            'basicWhereAmI': 'ancestors + labelAndName + roleName + checkedState + accelerator + positionInList + ' + orca.formatting.MNEMONIC
+            },
+        pyatspi.ROLE_MENU: {
+            'focused': '[]',
+            'unfocused': 'labelAndName + allTextSelection + roleName + availability + ' + orca.formatting.MNEMONIC + ' + accelerator',
+            'basicWhereAmI': '(ancestors or parentRoleName) + labelAndName + roleName +  positionInList + ' + orca.formatting.MNEMONIC
+            },
+        pyatspi.ROLE_MENU_ITEM: {
+            'focused': '[]',
+            'unfocused': 'labelAndName + menuItemCheckedState + availability + ' + orca.formatting.MNEMONIC + ' + accelerator',
+            'basicWhereAmI': 'ancestors + labelAndName + accelerator + positionInList + ' + orca.formatting.MNEMONIC
+            },
+        pyatspi.ROLE_RADIO_MENU_ITEM: {
+            'focused': 'labelAndName + radioState + roleName + availability + positionInList',
+            'unfocused': 'labelAndName + radioState + roleName + availability + ' + orca.formatting.MNEMONIC + ' + accelerator',
+            'basicWhereAmI': 'ancestors + labelAndName + roleName + radioState + accelerator + positionInList + ' + orca.formatting.MNEMONIC
+            },
     },
     'braille': {
         # [[[TODO: WDW - we're doing very little here.  The goal for
