@@ -194,41 +194,25 @@ static void print_time(const uint64_t s, const char *what) {
194194
195195static void usage (void ) {
196196 printf (
197- "yamtk v%s Copyright (C) %s Benjamin Jean-Marie Tremblay \n"
198- "Usage: yamtk shuf [options] -i sequences.fa \n"
199- " \n"
200- " -i <str> Filename of fast(a|q)-formatted file containing DNA/RNA sequences \n"
201- " to scan. Can be gzipped. Use '-' for stdin. Non-standard \n"
202- " characters (i.e. other than ACGTU) will be read but are treated as\n"
203- " the letter N during shuffling (exceptions: when -l is used or when\n"
204- " -k is set to 1). Fastq files will be output as fasta. \n"
205- " -k <int> Size of shuffled k-mers. Default: %d. When k = 1 a Fisher-Yates \n"
206- " shuffle is performed. Max k for Euler/Markov methods: %d. \n"
207- " -o <str> Filename to output results. By default output goes to stdout. \n"
208- " -s <int> Seed to initialize random number generator. Default: %d. \n"
209- " -m Use Markov shuffling instead of performing a random Eulerian walk.\n"
210- " Essentially generates random sequences with similar k-mer \n"
211- " compositions. Generally requires large sequences to be effective. \n"
212- " -l Split up the sequences linearly into k-mers and do a Fisher-Yates \n"
213- " shuffle instead of performing a random Eulerian walk. Very fast. \n"
214- " -r <int> Repeat shuffling for each sequence any number of times. The repeat\n"
215- " number will be appended to the sequence name. Default: 0. \n"
216- /* " -W <int> Instead of shuffling the entire sequence, progressively move \n" */
217- /* " through the sequence and shuffle in windows of any size. \n" */
218- /* " -S <int> Window step size when -w is set. Default: window size. \n" */
219- " -R Reset the random number generator every time a new sequence is \n"
220- " shuffled using the set seed instead of only setting it once. \n"
221- /* " -g Gap characters [%s] will be left in-place, and not shuffled. \n" */
222- " -n Output sequence as RNA. By default the sequence is output as DNA, \n"
223- " even if the input is RNA. This flag only applies when k > 1 and -l\n"
224- " is not used, since in such cases the existing sequence letters are\n"
225- " simply being rearranged. \n"
226- " -p Activate an alternate mode which prints k-mer counts instead of \n"
227- " shuffling. All options excepting -i, -k and -o are ignored. \n"
228- " -v Verbose mode. \n"
229- " -w Very verbose mode. \n"
230- " -h Print this help message. \n"
231- , YAMTK_VERSION , YAMTK_YEAR , DEFAULT_K , MAX_K , DEFAULT_SEED //, GAP_CHARS
197+ "yamtk v%s Copyright (C) %s Benjamin Jean-Marie Tremblay\n"
198+ "Usage: yamtk shuf [options] -i sequences.fa\n"
199+ "\n"
200+ " -i <str> Input FASTA/FASTQ. Can be gzipped. Use '-' for stdin.\n"
201+ " Non-ACGTU characters are treated as N (except with -l or -k 1).\n"
202+ " -k <int> k-mer size for shuffling. Default: %d. k=1 uses Fisher-Yates;\n"
203+ " max k for Euler/Markov: %d.\n"
204+ " -o <str> Output file. Default: stdout.\n"
205+ " -s <int> RNG seed. Default: %d.\n"
206+ " -m Markov shuffling: generates sequences with similar k-mer\n"
207+ " frequencies. Best for large sequences.\n"
208+ " -l Linear k-mer shuffle (fast Fisher-Yates over k-mer blocks).\n"
209+ " -r <int> Repeat shuffle N times per sequence; index appended to name.\n"
210+ " -R Reset RNG to seed before each sequence instead of just once.\n"
211+ " -n Output RNA instead of DNA. Only applies when k > 1 and -l\n"
212+ " is not used.\n"
213+ " -p Print k-mer counts instead of shuffling (-i, -k, -o only).\n"
214+ " -v / -w / -h Verbose / very-verbose / help.\n"
215+ , YAMTK_VERSION , YAMTK_YEAR , DEFAULT_K , MAX_K , DEFAULT_SEED
232216 );
233217}
234218
0 commit comments