@@ -277,6 +277,8 @@ struct LambdaIndexerOptions : public SharedOptions
277277 std::string segFile = " " ;
278278 std::string algo = " " ;
279279
280+ bool truncateIDs;
281+
280282 LambdaIndexerOptions ()
281283 : SharedOptions()
282284 {}
@@ -986,13 +988,21 @@ parseCommandLine(LambdaIndexerOptions & options, int argc, char const ** argv)
986988// setValidValues(parser, "output", "sa fm");
987989
988990 addOption (parser, ArgParseOption (" di" , " db-index-type" ,
989- " suffix array or full-text minute space." ,
991+ " Suffix array or full-text minute space." ,
990992 ArgParseArgument::STRING ,
991993 " type" ));
992994 setValidValues (parser, " db-index-type" , " sa fm" );
993995 setDefaultValue (parser, " db-index-type" , " fm" );
994996 setAdvanced (parser, " db-index-type" );
995997
998+ addOption (parser, ArgParseOption (" " , " truncate-ids" ,
999+ " Truncate IDs at first whitespace. This saves a lot of space and is irrelevant for all LAMBDA output formats "
1000+ " other than BLAST Pairwise (.m0)." ,
1001+ ArgParseArgument::STRING ,
1002+ " STR" ));
1003+ setValidValues (parser, " truncate-ids" , " on off" );
1004+ setDefaultValue (parser, " truncate-ids" , " off" );
1005+
9961006 addSection (parser, " Alphabets and Translation" );
9971007 addOption (parser, ArgParseOption (" p" , " program" ,
9981008 " Blast Operation Mode." ,
@@ -1111,6 +1121,10 @@ parseCommandLine(LambdaIndexerOptions & options, int argc, char const ** argv)
11111121 getOptionValue (tmpdir, parser, " tmp-dir" );
11121122 setEnv (" TMPDIR" , tmpdir);
11131123
1124+ std::string buffer;
1125+ getOptionValue (buffer, parser, " truncate-ids" );
1126+ options.truncateIDs = (buffer == " on" );
1127+
11141128 return ArgumentParser::PARSE_OK ;
11151129}
11161130
0 commit comments