consolidate --help text, allow to generate man page.
authorRobin Gareus <robin@gareus.org>
Sat, 14 Jan 2017 22:07:44 +0000 (23:07 +0100)
committerRobin Gareus <robin@gareus.org>
Sat, 14 Jan 2017 22:07:44 +0000 (23:07 +0100)
gtk2_ardour/opts.cc
wscript

index 98e72de7884235c3062e3e72868ff132d82c7c0d..7d5753f123528fa9fc7b9a02f1c39fc2408cd1eb 100644 (file)
@@ -58,28 +58,43 @@ using namespace ARDOUR_COMMAND_LINE;
 int
 print_help (const char *execname)
 {
-       cout << _("Usage: ") << execname << " [OPTION]... [SESSION_NAME]\n\n"
-            << _("  [SESSION_NAME]              Name of session to load\n")
-            << _("  -v, --version               Show version information\n")
-            << _("  -h, --help                  Print this message\n")
-            << _("  -a, --no-announcements      Do not contact website for announcements\n")
-            << _("  -b, --bindings              Print all possible keyboard binding names\n")
-            << _("  -B, --bypass-plugins        Bypass all plugins in an existing session\n")
-            << _("  -c, --name <name>           Use a specific backend client name, default is ardour\n")
-            << _("  -d, --disable-plugins       Disable all plugins in an existing session\n")
-            << _("  -D, --debug <options>       Set debug flags. Use \"-D list\" to see available options\n")
-            << _("  -n, --no-splash             Do not show splash screen\n")
-            << _("  -m, --menus file            Use \"file\" to define 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")
-            << _("  -P, --no-connect-ports      Do not connect any ports at startup\n")
-            << _("  -S, --sync                  Draw the gui synchronously \n")
+       // help2man format, http://docopt.org/
+       // https://www.gnu.org/prep/standards/standards.html#g_t_002d_002dhelp
+       cout
+               << _("Usage: ") << PROGRAM_NAME << _(" [ OPTIONS ] [ SESSION-NAME ]")
+               << "\n\n"
+               << _("Ardour is a multichannel hard disk recorder (HDR) and digital audio workstation (DAW).")
+               << "\n\n"
+               << _("Options:\n")
+               << _("  -a, --no-announcements      Do not contact website for announcements\n")
+               << _("  -b, --bindings              Print all possible keyboard binding names\n")
+               << _("  -B, --bypass-plugins        Bypass all plugins in an existing session\n")
+               << _("  -c, --name <name>           Use a specific backend client name, default is ardour\n")
+#ifndef NDEBUG
+               << _("  -C, --curvetest filename    Curve algorithm debugger\n")
+#endif
+               << _("  -d, --disable-plugins       Disable all plugins (safe mode)\n")
+#ifndef NDEBUG
+               << _("  -D, --debug <options>       Set debug flags. Use \"-D list\" to see available options\n")
+#endif
+               << _("  -E, --save <file>           Load the specified session, save it to <file> and then quit\n")
+               << _("  -h, --help                  Print this message\n")
+               << _("  -k, --keybindings <file>    Name of key bindings to load\n")
+               << _("  -m, --menus file            Use \"file\" to define menus\n")
+               << _("  -n, --no-splash             Do not show splash screen\n")
+               << _("  -N, --new session-name      Create a new session from the command line\n")
+               << _("  -O, --no-hw-optimizations   Disable h/w specific optimizations\n")
+               << _("  -P, --no-connect-ports      Do not connect any ports at startup\n")
+               << _("  -S, --sync                  Draw the GUI synchronously\n")
+               << _("  -T, --template <name>       Draw the GUI synchronously\n")
+               << _("  -U, --uuid <uuid>           Set (jack) backend UUID\n")
+               << _("  -v, --version               Use session template\n")
 #ifdef WINDOWS_VST_SUPPORT
-            << _("  -V, --novst                 Do not use VST support\n")
+               << _("  -V, --novst                 Disable WindowsVST support\n")
 #endif
-            << _("  -E, --save <file>           Load the specified session, save it to <file> and then quit\n")
-            << _("  -C, --curvetest filename    Curve algorithm debugger\n")
-            << _("  -k, --keybindings filename  Name of key bindings to load\n")
+               << "\n\n"
+               << _("Report bugs to http://tracker.ardour.org\n")
+               << _("Website http://ardour.org\n")
                ;
        return 1;
 
@@ -226,7 +241,7 @@ ARDOUR_COMMAND_LINE::parse_opts (int argc, char *argv[])
 
                case 'U':
                        backend_session_uuid = optarg;
-                        break;
+                       break;
 
                default:
                        return print_help(execname);
diff --git a/wscript b/wscript
index 8cedbf23cc31fe6b5ced74d8f53fe745b0e5faf8..c2dcfd80f37091d99e10b60aa7cc9f43094847d0 100644 (file)
--- a/wscript
+++ b/wscript
@@ -1347,3 +1347,7 @@ def tarball(bld):
 
 def test(bld):
     subprocess.call("gtk2_ardour/artest")
+
+def help2man(bld):
+    cmd = "help2man -s 1 -N -o ardour.1 -n Ardour --version-string='Ardour %s' gtk2_ardour/ardev" % PROGRAM_VERSION
+    subprocess.call(cmd, shell=True)