+}
+/***********************************************************************/
+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";
+ cout << nextCommand << endl;
+ }
+
+ mothurOutJustToLog("mothur > " + toString(nextCommand));
+ return nextCommand;
+ #else
+ string nextCommand = "";
+ mothurOut("mothur > ");
+ getline(cin, nextCommand);
+ mothurOutJustToLog("mothur > " + toString(nextCommand));
+ return nextCommand;
+ #endif
+ #else
+ string nextCommand = "";
+ mothurOut("mothur > ");
+ getline(cin, nextCommand);
+ mothurOutJustToLog("mothur > " + toString(nextCommand));
+ return nextCommand;
+ #endif
+
+ mothurOutEndLine();
+
+ }
+ catch(exception& e) {
+ errorOut(e, "Engine", "getCommand");