Ezame is a new menu editor especially created for Unity, though it should work with other desktop environments as well.
The application lets you edit or create new menu items (application launchers), with all the options available in a .desktop file: set the icon, category and so on, as well as some advanced options like setting the setting the "OnlyShowIn" or "NotShowIn" options, which can be used to control if certain application should or shouldn't show up in some desktop environments.
If you're not using Unity, from the Ezame menu select Edit > Preferences and then set the desktop to "Classic" instead of "Ubuntu" - using this, the application should display a freedesktop menu instead. The latest Ezame version also comes with initial Cinnamon support.
Ezame doesn't allow you to create or edit categories yet, but this feature is on the todo list.
I've tested Ezame in Unity and when editing an existing application launcher, the changes were visible almost immediately, however, new launchers may take a while to show up in Dash or you may even need to restart the system to get Dash to display the new application launchers you've created. This is a Unity limitation so it can't be fixed in Ezame.
Install Ezame menu editor in Ubuntu
To add its official PPA and install Ezame in Ubuntu, use the following commands:
sudo add-apt-repository ppa:caldas-lopes/ppa sudo apt-get update sudo apt-get install ezame
The source code is available on GitHub.
Thanks to João Lopes for the tip!