X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fbin%2FCommands.java;h=63247a7856dbc1215051e9961d397fbbf0a107aa;hb=163eca0e8ab247f095a9d4dcbb9af20ea195e74d;hp=0cae97de3e38492934cd2d08403b1226064ce67f;hpb=eafbd1f2802db36625b54f9f2037e0df82afe2a5;p=jalview.git diff --git a/src/jalview/bin/Commands.java b/src/jalview/bin/Commands.java index 0cae97d..63247a7 100644 --- a/src/jalview/bin/Commands.java +++ b/src/jalview/bin/Commands.java @@ -854,6 +854,7 @@ public class Commands String val = av.getValue(); SubVals subVals = av.getSubVals(); String fileName = subVals.getContent(); + boolean stdout = ArgParser.STDOUTFILENAME.equals(fileName); File file = new File(fileName); boolean overwrite = ArgParser.getFromSubValArgOrPref(avm, Arg.OVERWRITE, subVals, null, "OVERWRITE_OUTPUT", false); @@ -866,7 +867,7 @@ public class Commands !Platform.isHeadless()); // if backups is not true then --overwrite must be specified - if (file.exists() && !(overwrite || backups)) + if (file.exists() && !(overwrite || backups || stdout)) { Console.error("Won't overwrite file '" + fileName + "' without " + Arg.OVERWRITE.argString() + " or " @@ -904,23 +905,30 @@ public class Commands } if (ff == null) { - StringBuilder validSB = new StringBuilder(); - for (String f : validFormats) - { - if (validSB.length() > 0) - validSB.append(", "); - validSB.append(f); - FileFormatI tff = ffs.forName(f); - validSB.append(" ("); - validSB.append(tff.getExtensions()); - validSB.append(")"); + if (stdout) + { + ff = FileFormat.Fasta; } + else + { + StringBuilder validSB = new StringBuilder(); + for (String f : validFormats) + { + if (validSB.length() > 0) + validSB.append(", "); + validSB.append(f); + FileFormatI tff = ffs.forName(f); + validSB.append(" ("); + validSB.append(tff.getExtensions()); + validSB.append(")"); + } - Jalview.exit("No valid format specified for " - + Arg.OUTPUT.argString() + ". Valid formats are " - + validSB.toString() + ".", 1); - // this return really shouldn't happen - return false; + Jalview.exit("No valid format specified for " + + Arg.OUTPUT.argString() + ". Valid formats are " + + validSB.toString() + ".", 1); + // this return really shouldn't happen + return false; + } } String savedBackupsPreference = Cache @@ -931,7 +939,7 @@ public class Commands Console.info("Writing " + fileName); - af.saveAlignment(fileName, ff); + af.saveAlignment(fileName, ff, stdout); Console.debug("Returning backups to " + savedBackupsPreference); if (savedBackupsPreference != null) Cache.applicationProperties.put(BackupFiles.ENABLED,