b5db9c06677afc3bd3a237ff3e3c171149d08725
donnak
  Wed Oct 23 12:58:50 2013 -0700
Incorporated code review feedback. #11972
diff --git src/utils/nibFrag/nibFrag.c src/utils/nibFrag/nibFrag.c
index 9d2c034..e5c912f 100644
--- src/utils/nibFrag/nibFrag.c
+++ src/utils/nibFrag/nibFrag.c
@@ -1,107 +1,107 @@
 /* nibFrag - Extract part of a nib file as .fa. */
 #include "common.h"
 #include "dnaseq.h"
 #include "nib.h"
 #include "options.h"
 #include "fa.h"
 
 
 static struct optionSpec optionSpecs[] = {
     {"masked", OPTION_BOOLEAN},
     {"hardMasked", OPTION_BOOLEAN},
     {"upper", OPTION_BOOLEAN},
     {"name", OPTION_STRING},
     {"dbHeader", OPTION_STRING},
     {"tbaHeader", OPTION_STRING},
     {NULL, 0}
 };
 void usage()
 /* Explain usage and exit. */
 {
 errAbort(
   "nibFrag - Extract part of a nib file as .fa (all bases/gaps lower case by default)\n"
   "usage:\n"
   "   nibFrag [options] file.nib start end strand out.fa\n"
   "where strand is + (plus) or m (minus)\n"
   "options:\n"
-  "   -masked       Use lower-case characters for bases meant to be masked out\n"
-  "   -hardMasked   Use upper-case for not masked-out, and 'N' characters for masked-out bases\n"
-  "   -upper        Use upper-case characters for all bases\n"
-  "   -name=name    Use given name after '>' in output sequence\n"
-  "   -dbHeader=db  Add full database info to the header, with or without -name option\n"
-  "   -tbaHeader=db Format header for compatibility with tba, takes database name as argument\n"
+  "   -masked       Use lower-case characters for bases meant to be masked out.\n"
+  "   -hardMasked   Use upper-case for not masked-out, and 'N' characters for masked-out bases.\n"
+  "   -upper        Use upper-case characters for all bases.\n"
+  "   -name=name    Use given name after '>' in output sequence.\n"
+  "   -dbHeader=db  Add full database info to the header, with or without -name option.\n"
+  "   -tbaHeader=db Format header for compatibility with tba, takes database name as argument.\n"
   );
 }
 
 void nibFrag(int options, char *nibFile, int start, int end, char strand, 
 	     char *faFile, int optUpper, boolean hardMask)
 /* nibFrag - Extract part of a nib file as .fa. */
 {
 struct dnaSeq *seq;
 char header[255];
 char name[128];
 int chromLength;
 
 if (strand != '+' && strand != '-' && strand != 'm')
    usage();
 if (strand == 'm')
     strand = '-';
 if (start >= end)
    usage();
 seq = nibLoadPartMasked(options, nibFile, start, end-start);
 if (strand == '-')
     reverseComplement(seq->dna, seq->size);
 if (optUpper == 1)
     touppers(seq->dna);
 if (hardMask)
     lowerToN(seq->dna, seq->size);
 if (optionExists("dbHeader"))
     {
     chromLength = nibGetSize(nibFile);
     splitPath(nibFile, NULL, name, NULL);
     safef(header,sizeof(header),"%s:%s.%s:%d-%d:%c:%d", 
 	  optionVal("name", seq->name), optionVal("dbHeader", "db"),
 	  name, start, end, strand, chromLength);
     }
 else if (optionExists("tbaHeader"))
     {
     chromLength = nibGetSize(nibFile);
     splitPath(nibFile, NULL, name, NULL);
     safef(header,sizeof(header),"%s.%s:%d-%d of %d", 
 	  optionVal("tbaHeader", "tba"),
 	  name, start, end, chromLength);
     }
 else
     safef(header,sizeof(header),"%s",optionVal("name", seq->name));
 faWrite(faFile, header, seq->dna, seq->size);
 }
 
 int main(int argc, char *argv[])
 /* Process command line. */
 {
 int options = 0;
 int optUpper = 0;
 boolean hardMask = FALSE;
 
 optionInit(&argc, argv, optionSpecs);
 if(optionExists("masked") && optionExists("hardMasked"))
     {
     warn("\nError: Must choose 'masked' or 'hardMasked' but not both.\n");
     usage();
     }
 if (optionExists("masked"))
     options = NIB_MASK_MIXED;
 if(optionExists("hardMasked"))
     {
     /* setup to read out of nib in mixed case and then
        convert all lower case to 'N' */
     options = NIB_MASK_MIXED;
     hardMask = TRUE;
     }
 if (optionExists("upper"))
     optUpper = 1;
 if (argc != 6 || !isdigit(argv[2][0]) || !isdigit(argv[3][0]))
     usage();
 nibFrag(options, argv[1], atoi(argv[2]), atoi(argv[3]), argv[4][0], argv[5], optUpper, hardMask);
 return 0;
 }