function _buildKeyDescriptor(hasMacCtrl, hasCtrl, hasAlt, hasShift, key) {
        if (!key) {
            console.log("KeyBindingManager _buildKeyDescriptor() - No key provided!");
            return "";
        }

        var keyDescriptor = [];

        if (hasMacCtrl) {
            keyDescriptor.push("Ctrl");
        }
        if (hasAlt) {
            keyDescriptor.push("Alt");
        }
        if (hasShift) {
            keyDescriptor.push("Shift");
        }

        if (hasCtrl) {
            // Windows display Ctrl first, Mac displays Command symbol last
            if (brackets.platform === "mac") {
                keyDescriptor.push("Cmd");
            } else {
                keyDescriptor.unshift("Ctrl");
            }
        }

        keyDescriptor.push(key);

        return keyDescriptor.join("-");
    }
@private
Initialize an empty keymap as the current keymap. It overwrites the current keymap if there is one.
builds the keyDescriptor string from the given parts
@param {boolean} hasCtrl Is Ctrl key enabled
@param {boolean} hasAlt Is Alt key enabled
@param {boolean} hasShift Is Shift key enabled
@param {string} key The key that's pressed
@return {string} The normalized key descriptor