In xfconf, keyboard shortcut entries map from keys to shortcut names (run "xfconf-query -c xfce4-keyboard-shortcuts -l -v" to see the list). This means that xfconf allows multiple keys to trigger the same shortcut. Arguably, this makes more sense than the way that Metacity deals with keybindings (where gconf maps shortcut names to keys). Unfortunately, in xfwm4's settings.c (in parseShortcut and getShortcut), it is assumed that there will only ever be one key that maps to a particular shortcut. It seems to me that this is an unnecessary assumption. I'm not actually trying to map multiple keybindings for a single shortcut, although that seems like a reasonable thing to do. Instead, the reason that I'm having a problem is that I have a script that uses xfconf-query to add a customized list of keybindings. Sometimes xfconf-query seems to remove existing "conflicting" keybindings, and other times it doesn't. In my situation, it would be fine if other keybindings worked, but it's frustrating when the custom keybindings don't work. If the intention is truly to only have one key for each shortcut, then it seems that the bindings in xfconf should be inverted, i.e., it should be a map from shortcut names to keys (as is done in gconf for metacity). If the intention is to allow multiple keybindings for a shortcut, then parseShortcut and getShortcut need to be updated to make this work. It actually looks like this wouldn't be terribly hard to do, and I might take a whack at it unless it seems like a bad idea to those who are more familiar with xfwm than I. Of course, changing the settings dialog for xfwm keybindings would be a more difficult task, but fixing the keybinding parsing in xfwm would be a first step. Please let me know if I am looking at this issue the wrong way. Thanks.
That's the normal intended behavior, 1 action <=> 1 shortcut. It's not the role of xfconf to enforce anything like that (xfconf does not know about shortcuts or anything, it stores keys and values, not shortcuts specifically). So I see no bug here.
libxfce4kbd-private is entirely designed with 1 shortcut <=> 1 action in mind as Olivier said.