diff trunk/src/main.d @ 338:63c6afb915f7

- Made some corrections to the message catalogs. - Added functions for printing help messages.
author aziz
date Wed, 22 Aug 2007 15:53:04 +0000
parents ca8ad7c34d6a
children 95f1b6e43214
line wrap: on
line diff
--- a/trunk/src/main.d	Wed Aug 22 13:08:04 2007 +0000
+++ b/trunk/src/main.d	Wed Aug 22 15:53:04 2007 +0000
@@ -17,7 +17,7 @@
   GlobalSettings.load();
 
   if (args.length <= 1)
-    return writefln(format(MID.HelpMain, VERSION, usageGenerate, COMPILED_WITH, COMPILED_VERSION, COMPILED_DATE));
+    return writefln(helpMain());
 
   string command = args[1];
   switch (command)
@@ -50,10 +50,39 @@
     if (args.length == 3)
       parse(args[2]);
     break;
+  case "?", "help":
+    if (args.length == 3)
+      printHelp(args[2]);
+    else
+      writefln(helpMain());
+    break;
   default:
   }
 }
 
+const char[] COMMANDS =
+  "  generate (gen)\n"
+  "  help (?)\n";
+
+char[] helpMain()
+{
+  return format(MID.HelpMain, VERSION, COMMANDS, COMPILED_WITH, COMPILED_VERSION, COMPILED_DATE);
+}
+
+void printHelp(char[] command)
+{
+  char[] msg;
+  switch (command)
+  {
+  case "gen", "generate":
+    msg = GetMsg(MID.HelpGenerate);
+    break;
+  default:
+    msg = helpMain();
+  }
+  writefln(msg);
+}
+
 enum DocOption
 {
   Tokens,