59577453a851bdc6ed543d4c63335d5dcceefa06 max Thu Feb 4 04:55:06 2021 -0800 adding help directly to hgBlat output, refs #26918 diff --git src/hg/hgBlat/hgBlat.c src/hg/hgBlat/hgBlat.c index 2251b88..3a7544d 100644 --- src/hg/hgBlat/hgBlat.c +++ src/hg/hgBlat/hgBlat.c @@ -635,37 +635,44 @@ browserUrl, psl->tName, psl->tStart + 1, psl->tEnd, database, pslName, faName, uiState, unhideTrack); printf("browser</A> "); printf("<A HREF=\"%s?o=%d&g=htcUserAli&i=%s+%s+%s&c=%s&l=%d&r=%d&db=%s&%s\">", hgcUrl, psl->tStart, pslName, cgiEncode(faName), psl->qName, psl->tName, psl->tStart, psl->tEnd, database, uiState); printf("details</A> "); printf("%s",psl->qName); spaceOut(stdout, maxQChromNameSize - strlen(psl->qName)); printf(" %5d %5d %5d %5d %5.1f%% ", pslScore(psl), psl->qStart+1, psl->qEnd, psl->qSize, 100.0 - pslCalcMilliBad(psl, TRUE) * 0.1); printf("%s",psl->tName); spaceOut(stdout, maxTChromNameSize - strlen(psl->tName)); - printf(" %-2s %9d %9d %6d\n", + printf(" %-2s %9d %9d %6d", psl->strand, psl->tStart+1, psl->tEnd, psl->tEnd - psl->tStart); + + if (endsWith(psl->tName, "_fix")) + printf(" <A target=_blank HREF=\"../FAQ/FAQblat.html#blat1c\">What is chrom_fix?</A>"); + if (endsWith(psl->tName, "_alt")) + printf(" <SMALL><A target=_blank HREF=\"../FAQ/FAQblat.html#blat1c\">What is chrom_alt?</A></SMALL>"); + puts("\n"); } printf("</PRE>\n"); webNewSection("Help"); - puts("<P style=\"text-align:left\"><SMALL><A HREF=\"../FAQ/FAQblat.html#blat1b\">Missing a match?</A><br><A HREF=\"../FAQ/FAQblat.html#blat1c\">What is chr_alt & chr_fix?</A></SMALL></P>\n"); + puts("<P style=\"text-align:left\"><A target=_blank HREF=\"../FAQ/FAQblat.html#blat1b\">Missing a match?</A><br>"); + puts("<A target=_blank HREF=\"../FAQ/FAQblat.html#blat1c\">What is chr_alt & chr_fix?</A></P>\n"); puts("</DIV>\n"); } pslFreeList(&pslList); } void trimUniq(bioSeq *seqList) /* Check that all seq's in list have a unique name. Try and * abbreviate longer sequence names. */ { struct hash *hash = newHash(0); bioSeq *seq; for (seq = seqList; seq != NULL; seq = seq->next) { @@ -1731,33 +1738,33 @@ printf("</TD>\n"); printf("</TR>\n"); printf("<TR>\n"); printf("<TD COLSPAN=1 ALIGN=CENTER style='overflow:hidden;white-space:nowrap;font-size:0.9em'>\n"); cgiMakeCheckBoxWithId("allResults", allResults, "allResults"); printf("<span id=allResultsText>All Results (no minimum matches)"); // clicking on the All Results text clicks the checkbox. jsOnEventById("click", "allResultsText", "document.mainForm.allResults.click();" "return false;" // cancel the default ); printf("</TD>\n"); printf("<TD COLSPAN=4 style='text-align:right'>\n"); -printf("<INPUT style='height:1.5em; width:100px; font-size:1.2em' TYPE=SUBMIT NAME=Submit VALUE=Submit>\n"); -printf("<INPUT style='font-size:1.2em' TYPE=SUBMIT NAME=Lucky VALUE=\"I'm feeling lucky\">\n"); -printf("<INPUT style='font-size:1.2em' TYPE=SUBMIT NAME=Clear VALUE=Clear>\n"); +printf("<INPUT style='height:1.5em; width:100px; font-size:1.0em' TYPE=SUBMIT NAME=Submit VALUE=Submit>\n"); +printf("<INPUT style='font-size:1.0em' TYPE=SUBMIT NAME=Lucky VALUE=\"I'm feeling lucky\">\n"); +printf("<INPUT style='font-size:1.0em' TYPE=SUBMIT NAME=Clear VALUE=Clear>\n"); printf("</TD>\n"); printf("</TR>\n"); printf("<TR>\n"); puts("<TD COLSPAN=5 WIDTH=\"100%\">\n" "Paste in a query sequence to find its location in the\n" "the genome. Multiple sequences may be searched \n" "if separated by lines starting with '>' followed by the sequence name.\n" "</TD>\n" "</TR>\n" ); puts("<TR><TD COLSPAN=5 WIDTH=\"100%\">\n"); puts("<BR><B>File Upload:</B> "); puts("Rather than pasting a sequence, you can choose to upload a text file containing "