about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorJames Booth <boothj5@gmail.com>2015-07-24 00:33:38 +0100
committerJames Booth <boothj5@gmail.com>2015-07-24 00:33:38 +0100
commit44d7a152a4495cf0238745d91d590d163018cb9b (patch)
tree1047b5198714f182488db87855d2a2cbf98db547
parent22111bf75b34181cdab4f8369e781cb1d857fcfb (diff)
downloadprofani-tty-44d7a152a4495cf0238745d91d590d163018cb9b.tar.gz
Added connect to new help format
-rw-r--r--src/command/command.c113
-rw-r--r--src/ui/console.c8
2 files changed, 64 insertions, 57 deletions
diff --git a/src/command/command.c b/src/command/command.c
index b4b80169..e8874f8b 100644
--- a/src/command/command.c
+++ b/src/command/command.c
@@ -104,68 +104,75 @@ static char * _receipts_autocomplete(ProfWin *window, const char * const input);
 
 GHashTable *commands = NULL;
 
+#define END_ARGS { NULL, NULL }
+
+
+
 /*
  * Command list
  */
 static struct cmd_t command_defs[] =
 {
     // NEW STYLE
-    { "/help", cmd_help, parse_args, 0, 1, NULL,
-    { NULL, NULL, { NULL },
-    {
-        "/help [<area>|<command>]",
-        NULL },
-
-    "Help on using Profanity. Passing no arguments list help areas.",
-
-    {
-        { "area", "Summary help for commands in a certain area of functionality." },
-        { "command", "Full help for a specific command, for example '/help connect'." },
-        { NULL, NULL } },
-
-    {
-        "/help commands",
-        "/help presence",
-        "/help who",
-        NULL } } },
-
-    { "/about", cmd_about, parse_args, 0, 0, NULL,
-    { NULL, NULL, { NULL },
-    {
-        "/about",
-        NULL },
-
-    "Show version and license information.",
-
-    {
-        { NULL, NULL } },
-
-    {
-        NULL } } },
-
-    // OLD STYLE
+    { "/help",
+        cmd_help, parse_args, 0, 1, NULL,
+        { NULL, NULL, { NULL },
+        {
+            "/help [<area>|<command>]",
+            NULL
+        },
+            "Help on using Profanity. Passing no arguments list help areas.",
+        {
+            { "area",    "Summary help for commands in a certain area of functionality." },
+            { "command", "Full help for a specific command, for example '/help connect'." },
+            END_ARGS },
+        {
+            "/help commands",
+            "/help presence",
+            "/help who",
+            NULL } }
+        },
+
+    { "/about",
+        cmd_about, parse_args, 0, 0, NULL,
+        { NULL, NULL, { NULL },
+        {
+            "/about",
+            NULL
+        },
+            "Show version and license information.",
+        {
+            END_ARGS },
+        {
+            NULL } }
+        },
 
     { "/connect",
         cmd_connect, parse_args, 0, 5, NULL,
-        { "/connect [account] [server value] [port value]", "Account login.",
-        { "/connect [account] [server value] [port value]",
-          "----------------------------------------------",
-          "Login to a chat service.",
-          "",
-          "account      : The local account you wish to connect with, or a JID if connecting for the first time.",
-          "server value : Supply a server if it is different to the domain part of your JID.",
-          "port value   : The port to use if different to the default (5222, or 5223 for SSL).",
-          "",
-          "If no account is specified, the default is used if one is configured.",
-          "A local account is created with the JID as it's name if it doesn't already exist.",
-          "",
-          "Example: /connect",
-          "Example: /connect myuser@gmail.com",
-          "Example: /connect myuser@mycompany.com server talk.google.com",
-          "Example: /connect bob@someplace port 5678",
-          "Example: /connect me@chatty server chatty.com port 5443",
-          NULL,
-          NULL, NULL, NULL, NULL } } },
+        { NULL, NULL, { NULL },
+        {
+            "/connect [<account>]",
+            "/connect <account> [server <server>] [port <port>]",
+            NULL
+        },
+            "Login to a chat service. "
+            "If no account is specified, the default is used if one is configured. "
+            "A local account is created with the JID as it's name if it doesn't already exist.",
+        {
+            { "account",         "The local account you wish to connect with, or a JID if connecting for the first time." },
+            { "server <server>", "Supply a server if it is different to the domain part of your JID." },
+            { "port <port>",     "The port to use if different to the default (5222, or 5223 for SSL)." },
+            END_ARGS },
+        {
+            "/connect",
+            "/connect myuser@gmail.com",
+            "/connect myuser@mycompany.com server talk.google.com",
+            "/connect bob@someplace port 5678",
+            "/connect me@chatty server chatty.com port 5443",
+            NULL } }
+        },
+
+    // OLD STYLE
 
     { "/disconnect",
         cmd_disconnect, parse_args, 0, 0, NULL,
diff --git a/src/ui/console.c b/src/ui/console.c
index 9b18a599..20f6803e 100644
--- a/src/ui/console.c
+++ b/src/ui/console.c
@@ -112,11 +112,11 @@ cons_show_help(Command *command)
 
     cons_show("");
 
-    cons_show("Synopsis:");
+    win_print(console, '-', NULL, 0, THEME_WHITE_BOLD, "", "Synopsis");
     ui_show_lines(console, command->help.synopsis);
     cons_show("");
 
-    cons_show("Description:");
+    win_print(console, '-', NULL, 0, THEME_WHITE_BOLD, "", "Description");
     win_println(console, command->help.desc);
 
     int i;
@@ -128,7 +128,7 @@ cons_show_help(Command *command)
 
     if (i > 0) {
         cons_show("");
-        cons_show("Arguments:");
+        win_print(console, '-', NULL, 0, THEME_WHITE_BOLD, "", "Arguments");
         for (i = 0; command->help.args[i][0] != NULL; i++) {
             win_vprint(console, '-', NULL, 0, 0, "", "%-*s: %s", maxlen + 1, command->help.args[i][0], command->help.args[i][1]);
         }
@@ -136,7 +136,7 @@ cons_show_help(Command *command)
 
     if (g_strv_length((gchar**)command->help.examples) > 0) {
         cons_show("");
-        cons_show("Examples:");
+        win_print(console, '-', NULL, 0, THEME_WHITE_BOLD, "", "Examples");
         ui_show_lines(console, command->help.examples);
     }
 }