c866d0e97f8b9a2a76593f56ebe5825c9714d7e3
max
  Wed Nov 22 07:15:31 2023 -0800
documenting twoBitToFa a little better, no redmine, ML ticket with Jacques van Helden

diff --git src/utils/twoBitToFa/twoBitToFa.c src/utils/twoBitToFa/twoBitToFa.c
index d66e74f..ec150b4 100644
--- src/utils/twoBitToFa/twoBitToFa.c
+++ src/utils/twoBitToFa/twoBitToFa.c
@@ -22,35 +22,41 @@
   "usage:\n"
   "   twoBitToFa input.2bit output.fa\n"
   "options:\n"
   "   -seq=name       Restrict this to just one sequence.\n"
   "   -start=X        Start at given position in sequence (zero-based).\n"
   "   -end=X          End at given position in sequence (non-inclusive).\n"
   "   -seqList=file   File containing list of the desired sequence names \n"
   "                   in the format seqSpec[:start-end], e.g. chr1 or chr1:0-189\n"
   "                   where coordinates are half-open zero-based, i.e. [start,end).\n"
   "   -noMask         Convert sequence to all upper case.\n"
   "   -bpt=index.bpt  Use bpt index instead of built-in one.\n"
   "   -bed=input.bed  Grab sequences specified by input.bed. Will exclude introns.\n"
   "   -bedPos         With -bed, use chrom:start-end as the fasta ID in output.fa.\n"
   "   -udcDir=/dir/to/cache  Place to put cache for remote bigBed/bigWigs.\n"
   "\n"
+  "Input file can be a URL\n"
   "Sequence and range may also be specified as part of the input\n"
   "file name using the syntax:\n"
   "      /path/input.2bit:name\n"
   "   or\n"
   "      /path/input.2bit:name:start-end\n"
+  "examples:\n"
+  "  wget https://hgdownload.soe.ucsc.edu/goldenPath/hg38/bigZips/latest/hg38.2bit\n"
+  "  twoBitToFa hg38.2bit -seq=chr1 -start=1000000 -end=20000000 out.fa\n"
+  "  echo 'chr1 1 1000 testRegion' > test.bed\n"
+  "  twoBitToFa https://hgdownload.soe.ucsc.edu/goldenPath/hg38/bigZips/latest/hg38.2bit -bed=test.bed out.fa\n"
   );
 }
 
 char *clSeq = NULL;	/* Command line sequence. */
 int clStart = 0;	/* Start from command line. */
 int clEnd = 0;		/* End from command line. */
 char *clSeqList = NULL; /* file containing list of seq names */
 bool noMask = FALSE;  /* convert seq to upper case */
 char *clBpt = NULL;	/* External index file. */
 char *clBed = NULL;	/* Bed file that specifies bounds of sequences. */
 bool clBedPos = FALSE;
 
 static struct optionSpec options[] = {
    {"seq", OPTION_STRING},
    {"seqList", OPTION_STRING},