minor fixes/changes based on comparison with existing bindings
[ardour.git] / gtk2_ardour / opts.cc
index 8da0fb9ca115ced40f8ac217dce800006938f041..4437a9d22411cf910d09c3405ea17a6bf53f8931 100644 (file)
@@ -21,6 +21,8 @@
 #include <iostream>
 #include <cstdlib>
 
+#include "ardour/session.h"
+
 #include "opts.h"
 
 #include "i18n.h"
@@ -38,6 +40,7 @@ char* ARDOUR_COMMAND_LINE::curvetest_file = 0;
 bool ARDOUR_COMMAND_LINE::try_hw_optimization = true;
 string ARDOUR_COMMAND_LINE::keybindings_path = ""; /* empty means use builtin default */
 Glib::ustring ARDOUR_COMMAND_LINE::menus_file = "ardour.menus";
+bool ARDOUR_COMMAND_LINE::finder_invoked_ardour = false;
 
 using namespace ARDOUR_COMMAND_LINE;
 
@@ -48,8 +51,9 @@ print_help (const char *execname)
             << _("  -v, --version                    Show version information\n")
             << _("  -h, --help                       Print this message\n")
             << _("  -b, --bindings                   Print all possible keyboard binding names\n")
-            << _("  -n, --show-splash                Show splash screen\n")
             << _("  -c, --name  name                 Use a specific jack client name, default is ardour\n")
+            << _("  -d, --disable-plugins            Disable all plugins in an existing session\n")
+            << _("  -n, --show-splash                Show splash screen\n")
             << _("  -m, --menus file                 Use \"file\" for Ardour menus\n")                       
             << _("  -N, --new session-name           Create a new session from the command line\n")                       
             << _("  -O, --no-hw-optimizations        Disable h/w specific optimizations\n")
@@ -59,7 +63,7 @@ print_help (const char *execname)
 #endif
             << _("  [session-name]                   Name of session to load\n")
             << _("  -C, --curvetest filename         Curve algorithm debugger\n")
-            << _("  -k, --keybindings filename       Name of key bindings to load (default is ~/.ardour2/ardour.bindings)\n")
+            << _("  -k, --keybindings filename       Name of key bindings to load (default is ~/.ardour3/ardour.bindings)\n")
                ;
        return 1;
 
@@ -69,11 +73,12 @@ int
 ARDOUR_COMMAND_LINE::parse_opts (int argc, char *argv[])
 
 {
-       const char *optstring = "U:hSbvVnOc:C:m:N:k:";
+       const char *optstring = "U:hSbvVnOdc:C:m:N:k:p:";
        const char *execname = strrchr (argv[0], '/');
 
        if (getenv ("ARDOUR_SAE")) {
                menus_file = "ardour-sae.menus";
+               keybindings_path = "SAE";
        }
 
        if (execname == 0) {
@@ -122,15 +127,23 @@ ARDOUR_COMMAND_LINE::parse_opts (int argc, char *argv[])
                case 'b':
                        show_key_actions = true;
                        break;
+                       
+               case 'd':
+                       ARDOUR::Session::set_disable_all_loaded_plugins (true);
+                       break;
 
-                case 'm':
-                        menus_file = optarg;
-                        break;
+               case 'm':
+                       menus_file = optarg;
+                       break;
 
                case 'n':
                        no_splash = false;
                        break;
+
+               case 'p':
+                       //undocumented OS X finder -psn_XXXXX argument
+                       finder_invoked_ardour = true;
+                       break;
                
                case 'S':
                //      ; just pass this through to gtk it will figure it out
@@ -144,11 +157,6 @@ ARDOUR_COMMAND_LINE::parse_opts (int argc, char *argv[])
                case 'O':
                        try_hw_optimization = false;
                        break;
-
-
-               case 'p':
-                       //undocumented OS X finder -psn_XXXXX argument
-                       break;
                
                case 'V':
 #ifdef VST_SUPPORT