For QC purposes, it is often important to see what part of a read got trimmed off and which reads were excluded due to quality filters. There should be an option to write separate fasta/fastq files with these items.
I have forked skewer and implemented this for paired-end, non-barcoded input only. I could submit a patch, but I imagine you'll want to implement it in a more general way. For trimmed reads, I write fastq output that has the trimmed bases in lower-case. For excluded reads, I write a separate fastq that has the entire read, but the ID line also contains the TAG describing why it was excluded.
For QC purposes, it is often important to see what part of a read got trimmed off and which reads were excluded due to quality filters. There should be an option to write separate fasta/fastq files with these items.
I have forked skewer and implemented this for paired-end, non-barcoded input only. I could submit a patch, but I imagine you'll want to implement it in a more general way. For trimmed reads, I write fastq output that has the trimmed bases in lower-case. For excluded reads, I write a separate fastq that has the entire read, but the ID line also contains the TAG describing why it was excluded.