error-log button: acknowledge new errors w/o hiding Log
[ardour.git] / tools / fmt-bindings
index ab4595d9658af4f98fa31e8c9cd2e50ceb77c0ab..aa76afe72f370d2f6873084ab812ed89032357b7 100755 (executable)
@@ -18,7 +18,7 @@ $group_number = 0;
 %merge_bindings;
 
 $platform = linux;
-$winkey = 'Mod4\>\<Super';
+$winkey = 'Win';
 $make_cheatsheet = 1;
 $make_accelmap = 0;
 $merge_from = "";
@@ -31,20 +31,36 @@ GetOptions ("platform=s" => \$platform,
            "merge=s" => \$merge_from,
             "html" => \$html);
 
+#
+# The use of a separate @WINDOW@ meta-modifier was a mistake and needs to be removed from the bindings.in file.
+# There is no separate key/modifier we can use for this, so inevitably it will be the same modifier as one of
+# the other meta-modifiers. This means, for example, that @WINDOW@-b could be same as @SECONDARY@-b with no
+# warnings given. One of the bindings will work, one won't.
+#
+
 if ($platform eq "darwin") {
 
-    $gtk_modifier_map{'PRIMARY'} = 'Primary';
+    $gtk_modifier_map{'PRIMARY'} = 'Primary'; # GTK supports Primary to allow platform-independent binding to the "primary" modifier, which on OS X is Command
     $gtk_modifier_map{'SECONDARY'} = 'Control';
     $gtk_modifier_map{'TERTIARY'} = 'Shift';
-    $gtk_modifier_map{'LEVEL4'} = 'Mod1';
+    $gtk_modifier_map{'LEVEL4'} = 'Mod1'; 
     $gtk_modifier_map{'WINDOW'} = 'Control';
 
+    # cs_modifier_map == "Cheat Sheet Modifier Map"
+    # Used to control what gets shown in the
+    # cheat sheet for a given (meta)-modifier
+
     $cs_modifier_map{'PRIMARY'} = 'Cmd';
     $cs_modifier_map{'SECONDARY'} = 'Control';
     $cs_modifier_map{'TERTIARY'} = 'Shift';
-    $cs_modifier_map{'LEVEL4'} = 'Mod1';
+    $cs_modifier_map{'LEVEL4'} = 'Opt';
     $cs_modifier_map{'WINDOW'} = 'Control';
 
+    # used to display what gets shown in the
+    # cheat sheet for mouse bindings. Differs
+    # from cs_modifier map in using shorter
+    # abbreviations.
+    
     $mouse_modifier_map{'PRIMARY'} = 'Cmd';
     $mouse_modifier_map{'SECONDARY'} = 'Ctrl';
     $mouse_modifier_map{'TERTIARY'} = 'Shift';
@@ -56,23 +72,29 @@ if ($platform eq "darwin") {
     $gtk_modifier_map{'PRIMARY'} = 'Control';
     $gtk_modifier_map{'SECONDARY'} = 'Alt';
     $gtk_modifier_map{'TERTIARY'} = 'Shift';
-    $gtk_modifier_map{'LEVEL4'} = $winkey;
+    $gtk_modifier_map{'LEVEL4'} = $winkey;  # something like "Mod4><Super" 
     $gtk_modifier_map{'WINDOW'} = 'Alt';
-    $gtk_modifier_map{$winkey} => 'Win';
+
+    # cs_modifier_map == "Cheat Sheet Modifier Map"
+    # Used to control what gets shown in the
+    # cheat sheet for a given (meta)-modifier
 
     $cs_modifier_map{'PRIMARY'} = 'Control';
     $cs_modifier_map{'SECONDARY'} = 'Alt';
     $cs_modifier_map{'TERTIARY'} = 'Shift';
     $cs_modifier_map{'LEVEL4'} = 'Win';
     $cs_modifier_map{'WINDOW'} = 'Alt';
-    $cs_modifier_map{$winkey} => 'Win';
+
+    # used to display what gets shown in the
+    # cheat sheet for mouse bindings. Differs
+    # from cs_modifier map in using shorter
+    # abbreviations.
 
     $mouse_modifier_map{'PRIMARY'} = 'Ctl';
     $mouse_modifier_map{'SECONDARY'} = 'Alt';
     $mouse_modifier_map{'TERTIARY'} = 'Shift';
     $mouse_modifier_map{'LEVEL4'} = 'Win';
     $mouse_modifier_map{'WINDOW'} = 'Alt';
-    $mouse_modifier_map{$winkey} => 'Win';
 }
 
 %keycodes = ();