+ mout->errorOut(e, "InteractEngine", "getInput");
+ exit(1);
+ }
+}
+/***********************************************************************/
+string Engine::getCommand() {
+ try {
+
+ #if defined (__APPLE__) || (__MACH__) || (linux) || (__linux)
+ #ifdef USE_READLINE
+ char* nextCommand = NULL;
+ nextCommand = readline("mothur > ");
+
+ if(nextCommand != NULL) { add_history(nextCommand); }
+ else{ //^D causes null string and we want it to quit mothur
+ nextCommand = "quit";
+ mout->mothurOut(nextCommand);
+ }
+
+ mout->mothurOutJustToLog("mothur > " + toString(nextCommand));
+ return nextCommand;
+ #else
+ string nextCommand = "";
+ mout->mothurOut("mothur > ");
+ getline(cin, nextCommand);
+ mout->mothurOutJustToLog("mothur > " + toString(nextCommand));
+
+ return nextCommand;
+ #endif
+ #else
+ string nextCommand = "";
+
+ mout->mothurOut("mothur > ");
+ m->getline(cin, nextCommand);
+ mout->mothurOutJustToLog(toString(nextCommand));
+
+ return nextCommand;
+ #endif
+
+
+ }
+ catch(exception& e) {
+ mout->errorOut(e, "Engine", "getCommand");