cli/help: give a hint about notmuch-emacs-mua
authorDaniel Kahn Gillmor <dkg@fifthhorseman.net>
Mon, 4 Dec 2017 18:43:10 +0000 (13:43 -0500)
committerDavid Bremner <david@tethera.net>
Thu, 7 Dec 2017 12:20:00 +0000 (08:20 -0400)
"notmuch help" doesn't mention "notmuch-emacs-mua" even though we
support it through the try_external_command() mechanism.

In addition, "notmuch help emacs-mua" doesn't work, even though we
ship the appropriate manpage.

This changeset fixes both of these problems.

configure
notmuch.c

index b7d27ea0cdc017bde2ccb03f8bfc6b7df20e4be5..fc70031b31f746ac9fa452b846c2a2340ff1be9f 100755 (executable)
--- a/configure
+++ b/configure
@@ -1184,6 +1184,7 @@ COMMON_CONFIGURE_CFLAGS = \\
        \$(GMIME_CFLAGS) \$(TALLOC_CFLAGS) \$(ZLIB_CFLAGS)      \\
        -DHAVE_VALGRIND=\$(HAVE_VALGRIND) \$(VALGRIND_CFLAGS)   \\
        -DHAVE_GETLINE=\$(HAVE_GETLINE)                         \\
+       -DWITH_EMACS=\$(WITH_EMACS)                             \\
        -DHAVE_CANONICALIZE_FILE_NAME=\$(HAVE_CANONICALIZE_FILE_NAME) \\
        -DHAVE_STRCASESTR=\$(HAVE_STRCASESTR)                   \\
        -DHAVE_STRSEP=\$(HAVE_STRSEP)                           \\
index 539ac58c445a6e4dd222e987f3e255dde5aa4519..fa866d8645ee72ee00f7bc410a2a239e653f53f4 100644 (file)
--- a/notmuch.c
+++ b/notmuch.c
@@ -167,6 +167,10 @@ static command_t commands[] = {
       "Re-index all messages matching the search terms." },
     { "config", notmuch_config_command, NOTMUCH_CONFIG_OPEN,
       "Get or set settings in the notmuch configuration file." },
+#if WITH_EMACS
+    { "emacs-mua", NULL, 0,
+      "send mail with notmuch and emacs." },
+#endif
     { "help", notmuch_help_command, NOTMUCH_CONFIG_CREATE, /* create but don't save config */
       "This message, or more detailed help for the named command." }
 };
@@ -480,7 +484,8 @@ main (int argc, char *argv[])
     notmuch_process_shared_options (command_name);
 
     command = find_command (command_name);
-    if (!command) {
+    /* if command->function is NULL, try external command */
+    if (!command || !command->function) {
        /* This won't return if the external command is found. */
        if (try_external_command(argv + opt_index))
            fprintf (stderr, "Error: Unknown command '%s' (see \"notmuch help\")\n",