- // Dispatch command.
- if (args[0] == "<EOF>") status = -1;
- else if (closeEnough ("exit", args[0], 3)) status = -1;
- else if (closeEnough ("quit", args[0], 3)) status = -1;
- else if (closeEnough ("help", args[0], 3)) status = cmdHelp ();
- else if (closeEnough ("diagnostics", args[0], 3)) status = cmdDiagnostics ();
- else if (closeEnough ("review", args[0], 3)) status = cmdReview (args, autoClear);
- else if (closeEnough ("exec", args[0], 3) ||
- args[0][0] == '!') status = cmdShell (args);
- else if (command != "")
- {
- command = "task " + command;
- std::cout << "[" << command << "]\n";
- system (command.c_str ());
-
- // Deliberately ignoreѕ taskwarrior exit status, otherwise empty filters
- // cause the shell to terminate.
- }
- }
-
- return status;
-}
-
-////////////////////////////////////////////////////////////////////////////////
-int main (int argc, const char** argv)
-{
- int status = 0;
-
- // Lightweight version checking that doesn't require initialization or any I/O.
- if (argc == 2 && !strcmp (argv[1], "--version"))
- {
- std::cout << VERSION << "\n";