]> git.armaanb.net Git - gen-shell.git/blobdiff - src/main.cpp
finally removed all hints of tasksh
[gen-shell.git] / src / main.cpp
index bdac9343c39510adee35ca325bf41ee5b77acd87..fa4bad3cc07418bc11af7ac30c746acdab166af3 100644 (file)
 #include <cstdio>
 #include <stdlib.h>
 #include <unistd.h>
-#include <shared.h>
 
 #ifdef HAVE_READLINE
 #include <readline/readline.h>
 #include <readline/history.h>
 #endif
 
-// tasksh commands.
-int cmdHelp ();
-int cmdDiagnostics ();
-// int cmdReview (const std::vector <std::string>&, bool);
-int cmdShell (const std::vector <std::string>&);
 std::string promptCompose ();
-std::string findTaskwarrior ();
 
-////////////////////////////////////////////////////////////////////////////////
-static void welcome ()
-{
-  std::cout << PACKAGE_STRING << "\n";
-  cmdHelp ();
-}
-
-////////////////////////////////////////////////////////////////////////////////
 const std::string getResponse (const std::string& prompt)
 {
   std::string response {""};
@@ -98,7 +83,6 @@ static int commandLoop (bool autoClear)
   // Display prompt, get input.
   auto command = getResponse (prompt);
 
-  // Obey Taskwarrior's rc.tasksh.autoclear.
   if (autoClear)
     std::cout << "\033[2J\033[0;0H";
 
@@ -109,25 +93,13 @@ static int commandLoop (bool autoClear)
   }
   else if (command != "")
   {
-    auto args = split (command, ' ');
-
     // 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);
+    if (command == "<EOF>")                      status = -1;
     else if (command != "")
     {
-      command = "task " + command;
+      command = command;
       std::cout << "[" << command << "]\n";
       system (command.c_str ());
-
-      // Deliberately ignoreŃ• taskwarrior exit status, otherwise empty filters
-      // cause the shell to terminate.
     }
   }
 
@@ -148,21 +120,15 @@ int main (int argc, const char** argv)
   {
     try
     {
-      // Get the Taskwarrior rc.tasksh.autoclear Boolean setting.
       bool autoClear = false;
       std::string input;
       std::string output;
-      execute ("task", {"_get", "rc.tasksh.autoclear"}, input, output);
-      output = lowerCase (output);
       autoClear = (output == "true\n" ||
                    output == "1\n"    ||
                    output == "y\n"    ||
                    output == "yes\n"  ||
                    output == "on\n");
 
-      if (isatty (fileno (stdin)))
-        welcome ();
-
       while ((status = commandLoop (autoClear)) == 0)
         ;
     }