{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/r-b-build.6NwyNKxo/b1/htp_1.19-8_amd64.changes", "source2": "/srv/reproducible-results/rbuild-debian/r-b-build.6NwyNKxo/b2/htp_1.19-8_amd64.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,3 +1,3 @@\n \n ec31e51d40934fb54a26055772c74aee 70860 debug optional htp-dbgsym_1.19-8_amd64.deb\n- f97eda02989f353d47983ac78206ad95 115480 web optional htp_1.19-8_amd64.deb\n+ fe3528a4d0ea8520782bd66a9d6be8a7 116184 web optional htp_1.19-8_amd64.deb\n"}, {"source1": "htp_1.19-8_amd64.deb", "source2": "htp_1.19-8_amd64.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2020-06-14 23:21:19.000000 debian-binary\n--rw-r--r-- 0 0 0 3608 2020-06-14 23:21:19.000000 control.tar.xz\n--rw-r--r-- 0 0 0 111680 2020-06-14 23:21:19.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 3612 2020-06-14 23:21:19.000000 control.tar.xz\n+-rw-r--r-- 0 0 0 112380 2020-06-14 23:21:19.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./control", "source2": "./control", "unified_diff": "@@ -1,12 +1,12 @@\n Package: htp\n Version: 1.19-8\n Architecture: amd64\n Maintainer: Marcelo Soares Mota \n-Installed-Size: 608\n+Installed-Size: 622\n Depends: libc6 (>= 2.38)\n Section: web\n Priority: optional\n Homepage: http://htp.sourceforge.net\n Description: nice HTML pre-processor\n htp is an HTML pre-processor. It is designed to be a flexible authoring tool\n that can easily be integrated into the HTML design process.\n"}, {"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,15 +1,15 @@\n drwxr-xr-x 0 root (0) root (0) 0 2020-06-14 23:21:19.000000 ./\n drwxr-xr-x 0 root (0) root (0) 0 2020-06-14 23:21:19.000000 ./usr/\n drwxr-xr-x 0 root (0) root (0) 0 2020-06-14 23:21:19.000000 ./usr/bin/\n -rwxr-xr-x 0 root (0) root (0) 72104 2020-06-14 23:21:19.000000 ./usr/bin/htp\n drwxr-xr-x 0 root (0) root (0) 0 2020-06-14 23:21:19.000000 ./usr/share/\n drwxr-xr-x 0 root (0) root (0) 0 2020-06-14 23:21:19.000000 ./usr/share/doc/\n drwxr-xr-x 0 root (0) root (0) 0 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/\n--rw-r--r-- 0 root (0) root (0) 8180 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/alttext.html\n+-rw-r--r-- 0 root (0) root (0) 8565 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/alttext.html\n -rw-r--r-- 0 root (0) root (0) 1418 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/alttext.htp\n -rw-r--r-- 0 root (0) root (0) 7882 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/block.html\n -rw-r--r-- 0 root (0) root (0) 781 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/block.htp\n -rw-r--r-- 0 root (0) root (0) 7941 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/blockdef.html\n -rw-r--r-- 0 root (0) root (0) 1075 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/blockdef.htp\n -rw-r--r-- 0 root (0) root (0) 4763 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/bugs.html\n -rw-r--r-- 0 root (0) root (0) 737 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/bugs.htp\n@@ -41,17 +41,17 @@\n -rw-r--r-- 0 root (0) root (0) 12223 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/file.html\n -rw-r--r-- 0 root (0) root (0) 2490 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/file.htp.gz\n -rw-r--r-- 0 root (0) root (0) 14293 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/history.html\n -rw-r--r-- 0 root (0) root (0) 3946 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/history.htp.gz\n -rw-r--r-- 0 root (0) root (0) 3911 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/hlhtp.pl\n -rw-r--r-- 0 root (0) root (0) 165 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/htp.def\n -rw-r--r-- 0 root (0) root (0) 4049 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/htp.htt\n--rw-r--r-- 0 root (0) root (0) 7951 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/if.html\n+-rw-r--r-- 0 root (0) root (0) 8352 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/if.html\n -rw-r--r-- 0 root (0) root (0) 932 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/if.htp\n--rw-r--r-- 0 root (0) root (0) 8626 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/imageurl.html\n+-rw-r--r-- 0 root (0) root (0) 10274 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/imageurl.html\n -rw-r--r-- 0 root (0) root (0) 2507 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/imageurl.htp\n -rw-r--r-- 0 root (0) root (0) 8277 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/img.html\n -rw-r--r-- 0 root (0) root (0) 1168 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/img.htp\n -rw-r--r-- 0 root (0) root (0) 8142 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/inc.html\n -rw-r--r-- 0 root (0) root (0) 1092 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/inc.htp\n -rw-r--r-- 0 root (0) root (0) 9881 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/include.html\n -rw-r--r-- 0 root (0) root (0) 1894 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/include.htp\n@@ -60,15 +60,15 @@\n -rw-r--r-- 0 root (0) root (0) 7733 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/intro.html\n -rw-r--r-- 0 root (0) root (0) 3489 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/intro.htp\n -rw-r--r-- 0 root (0) root (0) 10774 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/license.html\n -rw-r--r-- 0 root (0) root (0) 454 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/license.htp\n -rw-r--r-- 0 root (0) root (0) 3782 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/macros.def\n -rw-r--r-- 0 root (0) root (0) 5088 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/macros.html\n -rw-r--r-- 0 root (0) root (0) 388 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/macros.htp\n--rw-r--r-- 0 root (0) root (0) 10519 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/metatag.html\n+-rw-r--r-- 0 root (0) root (0) 11337 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/metatag.html\n -rw-r--r-- 0 root (0) root (0) 2439 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/metatag.htp.gz\n -rw-r--r-- 0 root (0) root (0) 7558 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/opt.html\n -rw-r--r-- 0 root (0) root (0) 608 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/opt.htp\n -rw-r--r-- 0 root (0) root (0) 7809 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/options.html\n -rw-r--r-- 0 root (0) root (0) 3100 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/options.htp\n -rw-r--r-- 0 root (0) root (0) 7777 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/output.html\n -rw-r--r-- 0 root (0) root (0) 695 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/output.htp\n@@ -79,17 +79,17 @@\n -rw-r--r-- 0 root (0) root (0) 25563 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/pic/logo.png\n -rw-r--r-- 0 root (0) root (0) 455 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/pic/manbig.png\n -rw-r--r-- 0 root (0) root (0) 491 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/pic/manual.png\n -rw-r--r-- 0 root (0) root (0) 1313 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/pic/poweredbyhtp.png\n -rw-r--r-- 0 root (0) root (0) 679 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/pic/sficon.png\n -rw-r--r-- 0 root (0) root (0) 492 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/pic/source.png\n -rw-r--r-- 0 root (0) root (0) 523 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/pphtp.pl\n--rw-r--r-- 0 root (0) root (0) 7503 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/quote.html\n+-rw-r--r-- 0 root (0) root (0) 7959 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/quote.html\n -rw-r--r-- 0 root (0) root (0) 390 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/quote.htp\n--rw-r--r-- 0 root (0) root (0) 8234 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/set.html\n+-rw-r--r-- 0 root (0) root (0) 10244 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/set.html\n -rw-r--r-- 0 root (0) root (0) 1200 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/set.htp\n -rw-r--r-- 0 root (0) root (0) 500 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/styles.css\n -rw-r--r-- 0 root (0) root (0) 27219 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/template.html\n -rw-r--r-- 0 root (0) root (0) 2235 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/template.htp.gz\n -rw-r--r-- 0 root (0) root (0) 1914 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/toc.def\n drwxr-xr-x 0 root (0) root (0) 0 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/tut/\n -rw-r--r-- 0 root (0) root (0) 146 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/tut/footer.hti\n@@ -104,21 +104,21 @@\n -rw-r--r-- 0 root (0) root (0) 191 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/tut/tut3.htp\n -rw-r--r-- 0 root (0) root (0) 356 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/tut/tut3.htt\n -rw-r--r-- 0 root (0) root (0) 297 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/tut/tut4.htt\n -rw-r--r-- 0 root (0) root (0) 10517 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/tutorial.html\n -rw-r--r-- 0 root (0) root (0) 3393 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/tutorial.htp\n -rw-r--r-- 0 root (0) root (0) 7559 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/undef.html\n -rw-r--r-- 0 root (0) root (0) 460 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/undef.htp\n--rw-r--r-- 0 root (0) root (0) 7689 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/unset.html\n+-rw-r--r-- 0 root (0) root (0) 9724 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/unset.html\n -rw-r--r-- 0 root (0) root (0) 658 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/unset.htp\n -rw-r--r-- 0 root (0) root (0) 7681 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/usage.html\n -rw-r--r-- 0 root (0) root (0) 2959 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/usage.htp\n--rw-r--r-- 0 root (0) root (0) 10223 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/use.html\n+-rw-r--r-- 0 root (0) root (0) 12551 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/use.html\n -rw-r--r-- 0 root (0) root (0) 3300 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/use.htp\n--rw-r--r-- 0 root (0) root (0) 8001 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/while.html\n+-rw-r--r-- 0 root (0) root (0) 9768 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/while.html\n -rw-r--r-- 0 root (0) root (0) 938 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/while.htp\n -rw-r--r-- 0 root (0) root (0) 5288 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/wishlist.html\n -rw-r--r-- 0 root (0) root (0) 1311 2020-06-14 23:21:19.000000 ./usr/share/doc/htp/wishlist.htp\n drwxr-xr-x 0 root (0) root (0) 0 2020-06-14 23:21:19.000000 ./usr/share/doc-base/\n -rw-r--r-- 0 root (0) root (0) 235 2020-06-14 17:36:12.000000 ./usr/share/doc-base/htp.htp\n drwxr-xr-x 0 root (0) root (0) 0 2020-06-14 23:21:19.000000 ./usr/share/lintian/\n drwxr-xr-x 0 root (0) root (0) 0 2020-06-14 23:21:19.000000 ./usr/share/lintian/overrides/\n"}, {"source1": "./usr/share/doc/htp/alttext.html", "source2": "./usr/share/doc/htp/alttext.html", "unified_diff": "@@ -114,14 +114,16 @@\n Bugs\n \n \n \n \n

syntax

\n

\n+<\"[ref]\"imageurl url=\"imageurl\" [ path=\"path/in/local/filesystem\" ]>
\n+
\n

\n

synopsis

\n ALTTEXT declares an ALT attribute for any IMG tag with a SRC matching the ALTTEXT NAME.\n Since relative paths can be used to point to the same image, only the\n filename is considered in all comparisons.\n

\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1,43 +1,46 @@\n [HTP]\n *\b**\b**\b**\b**\b**\b* h\bht\btp\bp o\bon\bn-\b-l\bli\bin\bne\be r\bre\bef\bfe\ber\bre\ben\bnc\bce\be :\b: A\bAL\bLT\bTT\bTE\bEX\bXT\bT *\b**\b**\b**\b**\b**\b*\n _\bT_\ba_\bb_\bl_\be_\b _\bo_\bf_\b _\bC_\bo_\bn_\bt_\be_\bn_\bt_\bs *\b**\b**\b**\b**\b* s\bsy\byn\bnt\bta\bax\bx *\b**\b**\b**\b**\b*\n-\u00a0 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn *\b**\b**\b**\b**\b* s\bsy\byn\bno\bop\bps\bsi\bis\bs *\b**\b**\b**\b**\b*\n-\u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be A\bAL\bLT\bTT\bTE\bEX\bXT\bT declares an ALT attribute for any _\bI_\bM_\bG tag\n-\u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl with a SRC matching the ALTTEXT NAME. Since\n-\u00a0 _\bU_\bs_\ba_\bg_\be relative paths can be used to point to the same\n-\u00a0 HTP Tags image, only the filename is considered in all\n-\u00a0 [>] _\bA_\bL_\bT_\bT_\bE_\bX_\bT comparisons.\n-\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK When an IMG tag with a matching source is\n-\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF encountered, htp will add an ALT attribute only if\n-\u00a0 \u00a0 _\bD_\bE_\bF one is not already present. This allows for ALT\n-\u00a0 \u00a0 _\bF_\bI_\bL_\bE text to be overridden on specific images and\n-\u00a0 \u00a0 _\bI_\bF default text on all others.\n-\u00a0 \u00a0 _\bI_\bN_\bC For example:\n-\u00a0 \u00a0 _\bI_\bM_\bG An ALTTEXT tag with a name but no text attribute\n-\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL removes any ALT mapping for this image. Successing\n-\u00a0 \u00a0 _\bO_\bP_\bT IMG tags with a matching SRC name are not changed.\n-\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT Since this is useful for an image used throughout a\n-\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE set of documents, ALTTEXT is most appropriate in an\n-\u00a0 \u00a0 _\bS_\bE_\bT _\bi_\bn_\bc_\bl_\bu_\bd_\be_\b _\bf_\bi_\bl_\be or a _\bd_\be_\bf_\ba_\bu_\bl_\bt_\b _\bf_\bi_\bl_\be.\n-\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF In addition to ALTTEXT, htp can also automatically\n-\u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT add WIDTH and HEIGHT attributes to _\bI_\bM_\bG tags.\n-\u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$\n-\u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE\n-\u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b-\n+\u00a0 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bi_\bm_\ba_\bg_\be_\bu_\br_\bl url=\"imageurl\" [ path=\"path/in/\n+\u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be local/filesystem\" ]>\n+\u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl\n+\u00a0 _\bU_\bs_\ba_\bg_\be *\b**\b**\b**\b**\b* s\bsy\byn\bno\bop\bps\bsi\bis\bs *\b**\b**\b**\b**\b*\n+\u00a0 HTP Tags A\bAL\bLT\bTT\bTE\bEX\bXT\bT declares an ALT attribute for any _\bI_\bM_\bG tag\n+\u00a0 [>] _\bA_\bL_\bT_\bT_\bE_\bX_\bT with a SRC matching the ALTTEXT NAME. Since\n+\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK relative paths can be used to point to the same\n+\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF image, only the filename is considered in all\n+\u00a0 \u00a0 _\bD_\bE_\bF comparisons.\n+\u00a0 \u00a0 _\bF_\bI_\bL_\bE When an IMG tag with a matching source is\n+\u00a0 \u00a0 _\bI_\bF encountered, htp will add an ALT attribute only if\n+\u00a0 \u00a0 _\bI_\bN_\bC one is not already present. This allows for ALT\n+\u00a0 \u00a0 _\bI_\bM_\bG text to be overridden on specific images and\n+\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL default text on all others.\n+\u00a0 \u00a0 _\bO_\bP_\bT For example:\n+\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT An ALTTEXT tag with a name but no text attribute\n+\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE removes any ALT mapping for this image. Successing\n+\u00a0 \u00a0 _\bS_\bE_\bT IMG tags with a matching SRC name are not changed.\n+\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF Since this is useful for an image used throughout a\n+\u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT set of documents, ALTTEXT is most appropriate in an\n+\u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$ _\bi_\bn_\bc_\bl_\bu_\bd_\be_\b _\bf_\bi_\bl_\be or a _\bd_\be_\bf_\ba_\bu_\bl_\bt_\b _\bf_\bi_\bl_\be.\n+\u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE In addition to ALTTEXT, htp can also automatically\n+\u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b- add WIDTH and HEIGHT attributes to _\bI_\bM_\bG tags.\n \u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by\n \u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt\n \u00a0 _\bB_\bu_\bg_\bs\n \n \n \n \n \n \n \n+\n+\n+\n \n \n \n \n \n \n \n"}]}, {"source1": "./usr/share/doc/htp/if.html", "source2": "./usr/share/doc/htp/if.html", "unified_diff": "@@ -127,14 +127,16 @@\n string:\n

\n

\n

\n and a defined operator is a test of a macro's existance:\n

\n

\n+<\"[ref]\"SET macroname1=\"macrovalue1\" [macroname2=\"macrovalue2\" ...] [GLOBAL]>
\n+
\n

\n

\n If the NOT tag is present in the IF markup, the evaluation of the\n conditional is reversed. The first IF or ELSEIF condition that\n evaluates to true is chosen. If none of the conditions is true the\n ELSE block is taken if it is present. A conditional block\n must be closed with the /IF tag. IF tags can be nested.\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -6,38 +6,41 @@\n \u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl blocks for conditional processing. The basic form\n \u00a0 _\bU_\bs_\ba_\bg_\be is shown above.\n \u00a0 HTP Tags \"Conditional\" is either a \"compare\" or \"is defined\"\n \u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT operation. A compare operator is a test of the\n \u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK value of a macro against a literal string:\n \u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF and a defined operator is a test of a macro's\n \u00a0 \u00a0 _\bD_\bE_\bF existance:\n-\u00a0 \u00a0 _\bF_\bI_\bL_\bE If the NOT tag is present in the IF markup, the\n-\u00a0 [>] _\bI_\bF evaluation of the conditional is reversed. The\n-\u00a0 \u00a0 _\bI_\bN_\bC first IF or ELSEIF condition that evaluates to true\n-\u00a0 \u00a0 _\bI_\bM_\bG is chosen. If none of the conditions is true the\n-\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL ELSE block is taken if it is present. A conditional\n-\u00a0 \u00a0 _\bO_\bP_\bT block m\bmu\bus\bst\bt be closed with the /IF tag. IF tags can\n-\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT be nested.\n-\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE\n-\u00a0 \u00a0 _\bS_\bE_\bT\n-\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF\n+\u00a0 \u00a0 _\bF_\bI_\bL_\bE <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bS_\bE_\bT macroname1=\"macrovalue1\"\n+\u00a0 [>] _\bI_\bF [macroname2=\"macrovalue2\" ...] [GLOBAL]>\n+\u00a0 \u00a0 _\bI_\bN_\bC\n+\u00a0 \u00a0 _\bI_\bM_\bG If the NOT tag is present in the IF markup, the\n+\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL evaluation of the conditional is reversed. The\n+\u00a0 \u00a0 _\bO_\bP_\bT first IF or ELSEIF condition that evaluates to true\n+\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT is chosen. If none of the conditions is true the\n+\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE ELSE block is taken if it is present. A conditional\n+\u00a0 \u00a0 _\bS_\bE_\bT block m\bmu\bus\bst\bt be closed with the /IF tag. IF tags can\n+\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF be nested.\n \u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT\n \u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$\n \u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE\n \u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b-\n \u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by\n \u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt\n \u00a0 _\bB_\bu_\bg_\bs\n \n \n \n \n \n \n \n+\n+\n+\n \n \n \n \u00a0 _\bp_\ba_\bg_\be_\b _\bs_\bo_\bu_\br_\bc_\be\n \u00a0 _\bh_\bt_\bp_\b _\bp_\br_\bo_\bj_\be_\bc_\bt\n \u00a0 _\bh_\bt_\bp_\b _\bh_\bo_\bm_\be_\bp_\ba_\bg_\be\n hosted by\n"}]}, {"source1": "./usr/share/doc/htp/imageurl.html", "source2": "./usr/share/doc/htp/imageurl.html", "unified_diff": "@@ -114,14 +114,25 @@\n Bugs\n \n \n \n \n

syntax

\n

\n+    <\"[ref]\"IF name=\"Jim\">...<\"[ref]\"/IF>
\n+ext=\"Company logo\">
\n+
\n+  this line: <\"[ref]\"img src=\"logo.gif\">
\n+  becomes this after processing: <\"[ref]\"img src=\"logo.gif\" alt=\"Company logo\">
\n+
\n+  this line: <\"[ref]\"img src=\"../image/logo.gif\">
\n+  will also have an ALT attribute appended to it
\n+
\n+  this line: <\"[ref]\"img src=\"logo.gif\" alt=\"Click here for more information!\">
\n+  remains unchanged.
\n

\n

synopsis

\n

\n IMAGEURL tells htp, where to find images on the local\n file system. declares an URL replacement that is used for\n size lookups in any IMG tag. This definitions\n takes effect only if the IMGXY option is\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1,36 +1,49 @@\n [HTP]\n *\b**\b**\b**\b**\b**\b* h\bht\btp\bp o\bon\bn-\b-l\bli\bin\bne\be r\bre\bef\bfe\ber\bre\ben\bnc\bce\be :\b: I\bIM\bMA\bAG\bGE\bEU\bUR\bRL\bL *\b**\b**\b**\b**\b**\b*\n _\bT_\ba_\bb_\bl_\be_\b _\bo_\bf_\b _\bC_\bo_\bn_\bt_\be_\bn_\bt_\bs *\b**\b**\b**\b**\b* s\bsy\byn\bnt\bta\bax\bx *\b**\b**\b**\b**\b*\n-\u00a0 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn *\b**\b**\b**\b**\b* s\bsy\byn\bno\bop\bps\bsi\bis\bs *\b**\b**\b**\b**\b*\n-\u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be I\bIM\bMA\bAG\bGE\bEU\bUR\bRL\bL tells htp, where to find images on the\n-\u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl local file system. declares an URL replacement that\n-\u00a0 _\bU_\bs_\ba_\bg_\be is used for size lookups in any _\bI_\bM_\bG tag. This\n-\u00a0 HTP Tags definitions takes effect only if the _\bI_\bM_\bG_\bX_\bY option\n-\u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT is enabled. Beacause htp can't lookup files in the\n-\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK world wide web you have to map absolute image URLs\n-\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF to a directory in the local file system.\n-\u00a0 \u00a0 _\bD_\bE_\bF When an IMG tag is encountered where htp has to\n-\u00a0 \u00a0 _\bF_\bI_\bL_\bE insert width and height the defined URL\n-\u00a0 \u00a0 _\bI_\bF replacements will be taken into account (later\n-\u00a0 \u00a0 _\bI_\bN_\bC definitions take precedence to earlier): For each\n-\u00a0 \u00a0 _\bI_\bM_\bG defined imageurl it checks (case-insensitive) if it\n-\u00a0 [>] _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL is a prefix of the image's SRC attribute. If it\n-\u00a0 \u00a0 _\bO_\bP_\bT matches this prefix is replaced by the given PATH.\n-\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT If no IMAGEURL matches the SRC is considered as\n-\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE relative link and looked up in the current\n-\u00a0 \u00a0 _\bS_\bE_\bT directory.\n-\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF For example:\n-\u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT If IMAGEURL is specified with a URL but no PATH\n-\u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$ attribute, it is treated as an undefine, and is\n-\u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE removed.\n-\u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b- Since you usually need the url mapping for a number\n-\u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by of images used throughout a set of documents,\n-\u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt IMAGEURL is most appropriately put into an _\bi_\bn_\bc_\bl_\bu_\bd_\be\n-\u00a0 _\bB_\bu_\bg_\bs _\bf_\bi_\bl_\be or the _\bh_\bt_\bp_\b._\bd_\be_\bf file.\n+\u00a0 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bI_\bF name=\"Jim\">...<_\b[_\b[_\br_\be_\bf_\b]_\b]_\b/_\bI_\bF>\n+\u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be ext=\"Company logo\">\n+\u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl\n+\u00a0 _\bU_\bs_\ba_\bg_\be \u00a0 this line: <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bi_\bm_\bg src=\"logo.gif\">\n+\u00a0 HTP Tags \u00a0 becomes this after processing: <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bi_\bm_\bg\n+\u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT src=\"logo.gif\" alt=\"Company logo\">\n+\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK\n+\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF \u00a0 this line: <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bi_\bm_\bg src=\"../image/logo.gif\">\n+\u00a0 \u00a0 _\bD_\bE_\bF \u00a0 will also have an ALT attribute appended to it\n+\u00a0 \u00a0 _\bF_\bI_\bL_\bE\n+\u00a0 \u00a0 _\bI_\bF \u00a0 this line: <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bi_\bm_\bg src=\"logo.gif\" alt=\"Click\n+\u00a0 \u00a0 _\bI_\bN_\bC here for more information!\">\n+\u00a0 \u00a0 _\bI_\bM_\bG \u00a0 remains unchanged.\n+\u00a0 [>] _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL *\b**\b**\b**\b**\b* s\bsy\byn\bno\bop\bps\bsi\bis\bs *\b**\b**\b**\b**\b*\n+\u00a0 \u00a0 _\bO_\bP_\bT I\bIM\bMA\bAG\bGE\bEU\bUR\bRL\bL tells htp, where to find images on the\n+\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT local file system. declares an URL replacement that\n+\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE is used for size lookups in any _\bI_\bM_\bG tag. This\n+\u00a0 \u00a0 _\bS_\bE_\bT definitions takes effect only if the _\bI_\bM_\bG_\bX_\bY option\n+\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF is enabled. Beacause htp can't lookup files in the\n+\u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT world wide web you have to map absolute image URLs\n+\u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$ to a directory in the local file system.\n+\u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE When an IMG tag is encountered where htp has to\n+\u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b- insert width and height the defined URL\n+\u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by replacements will be taken into account (later\n+\u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt definitions take precedence to earlier): For each\n+\u00a0 _\bB_\bu_\bg_\bs defined imageurl it checks (case-insensitive) if it\n+ is a prefix of the image's SRC attribute. If it\n+ matches this prefix is replaced by the given PATH.\n+ If no IMAGEURL matches the SRC is considered as\n+ relative link and looked up in the current\n+ directory.\n+ For example:\n+ If IMAGEURL is specified with a URL but no PATH\n+ attribute, it is treated as an undefine, and is\n+ removed.\n+ Since you usually need the url mapping for a number\n+ of images used throughout a set of documents,\n+ IMAGEURL is most appropriately put into an _\bi_\bn_\bc_\bl_\bu_\bd_\be\n+ _\bf_\bi_\bl_\be or the _\bh_\bt_\bp_\b._\bd_\be_\bf file.\n In addition to WIDTH and HEIGHT, htp can also\n (semi-)automatically add an _\bA_\bL_\bT_\b _\bt_\be_\bx_\bt attribute to\n _\bI_\bM_\bG tags.\n \n \n \n \n"}]}, {"source1": "./usr/share/doc/htp/metatag.html", "source2": "./usr/share/doc/htp/metatag.html", "unified_diff": "@@ -121,14 +121,16 @@\n

When you are using templates, the html should only be written by\n the template file. The normal htp files should just define macros\n that are used later in the template. So you may want to write block\n tags that just save the block in a macro for later use. Although this\n is possible with htp it is quite tricky, so here we present the way to\n do this:

\n

\n+ 1. <a href=\"mailto:$email\">mailto hyperlink</a>
\n+ 2. <a href=\"http://$domain/~${username}/\">another hyperlink</a>
\n

\n

This defines a block macro named section. This macro uses a\n counter sect-ctr that enumerates the sections. It is\n increased for every section (line 3) and then the block macro name is\n build from this counter. So the first section is stored in block\n sect-1, the second in sect-2 and so on. The \"[ref]\"global flag\n in line 4 tells htp that these macros should be defined globally\n@@ -147,14 +149,15 @@\n contents of block to be expanded twice. If you omit it, it would be\n expanded when defining the sect-1 macro and when using it later in the\n template. Generally it is a good idea to use noexpand whenever you\n use expand in a block around it.

\n

To close this example we show how to expand the\n sect-${sect-ctr} blocks in the template:

\n

\n+ 1.     <${tagName} ${attrName}=${value$ctr}>
\n

\n

\n The \"[ref]\"while tag in line 3 checks whether\n the macro sect-${sect-ctr} is defined. If it is defined the body is\n evaluated, which expands the macro and increases sect-ctr. Afterwards\n the while condition is checked again to check for sect-2 macro. This\n repeats until sect-${sect-ctr} is not defined.\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -40,14 +40,17 @@\n When you are using templates, the html should only\n be written by the template file. The normal htp\n files should just define macros that are used later\n in the template. So you may want to write block\n tags that just save the block in a macro for later\n use. Although this is possible with htp it is quite\n tricky, so here we present the way to do this:\n+ \u00a01. mailto hyperlink\n+ \u00a02. another\n+ hyperlink\n This defines a block macro named section. This\n macro uses a counter sect-ctr that enumerates the\n sections. It is increased for every section (line\n 3) and then the block macro name is build from this\n counter. So the first section is stored in block\n sect-1, the second in sect-2 and so on. The _\b[\n _\b[_\br_\be_\bf_\b]_\b]_\bg_\bl_\bo_\bb_\ba_\bl flag in line 4 tells htp that these\n@@ -70,14 +73,15 @@\n block to be expanded twice. If you omit it, it\n would be expanded when defining the sect-1 macro\n and when using it later in the template. Generally\n it is a good idea to use noexpand whenever you use\n expand in a block around it.\n To close this example we show how to expand the\n sect-${sect-ctr} blocks in the template:\n+ \u00a01. \u00a0 \u00a0 <${tagName} ${attrName}=${value$ctr}>\n The _\b[_\b[_\br_\be_\bf_\b]_\b]_\bw_\bh_\bi_\bl_\be tag in line 3 checks whether the\n macro sect-${sect-ctr} is defined. If it is defined\n the body is evaluated, which expands the macro and\n increases sect-ctr. Afterwards the while condition\n is checked again to check for sect-2 macro. This\n repeats until sect-${sect-ctr} is not defined.\n *\b**\b**\b**\b**\b* C\bCo\bon\bnc\bcl\blu\bus\bsi\bio\bon\bns\bs *\b**\b**\b**\b**\b*\n"}]}, {"source1": "./usr/share/doc/htp/quote.html", "source2": "./usr/share/doc/htp/quote.html", "unified_diff": "@@ -114,14 +114,17 @@\n Bugs\n \n \n \n \n

syntax

\n

\n+<\"[ref]\"unset macroname>
\n+<\"[ref]\"unset macroname1 macroname2 ... >
\n+
\n

\n

synopsis

\n QUOTE is used to quote a macro that would otherwise\n be interpreted by HTP. It may be useful in conjunction with a\n surrounding EXPANDed block to prevent early\n expansion of some contained blocks. Note that '$' evaluation is still\n done inside a quote block.\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1,20 +1,20 @@\n [HTP]\n *\b**\b**\b**\b**\b**\b* h\bht\btp\bp o\bon\bn-\b-l\bli\bin\bne\be r\bre\bef\bfe\ber\bre\ben\bnc\bce\be :\b: Q\bQU\bUO\bOT\bTE\bE *\b**\b**\b**\b**\b**\b*\n _\bT_\ba_\bb_\bl_\be_\b _\bo_\bf_\b _\bC_\bo_\bn_\bt_\be_\bn_\bt_\bs *\b**\b**\b**\b**\b* s\bsy\byn\bnt\bta\bax\bx *\b**\b**\b**\b**\b*\n-\u00a0 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn *\b**\b**\b**\b**\b* s\bsy\byn\bno\bop\bps\bsi\bis\bs *\b**\b**\b**\b**\b*\n-\u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be Q\bQU\bUO\bOT\bTE\bE is used to quote a macro that would otherwise\n-\u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl be interpreted by HTP. It may be useful in\n-\u00a0 _\bU_\bs_\ba_\bg_\be conjunction with a surrounding _\bE_\bX_\bP_\bA_\bN_\bDed block to\n-\u00a0 HTP Tags prevent early expansion of some contained blocks.\n-\u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT Note that '$' evaluation is still done inside a\n-\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK quote block.\n-\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF\n-\u00a0 \u00a0 _\bD_\bE_\bF\n-\u00a0 \u00a0 _\bF_\bI_\bL_\bE\n+\u00a0 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bu_\bn_\bs_\be_\bt macroname>\n+\u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bu_\bn_\bs_\be_\bt macroname1 macroname2 ... >\n+\u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl\n+\u00a0 _\bU_\bs_\ba_\bg_\be *\b**\b**\b**\b**\b* s\bsy\byn\bno\bop\bps\bsi\bis\bs *\b**\b**\b**\b**\b*\n+\u00a0 HTP Tags Q\bQU\bUO\bOT\bTE\bE is used to quote a macro that would otherwise\n+\u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT be interpreted by HTP. It may be useful in\n+\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK conjunction with a surrounding _\bE_\bX_\bP_\bA_\bN_\bDed block to\n+\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF prevent early expansion of some contained blocks.\n+\u00a0 \u00a0 _\bD_\bE_\bF Note that '$' evaluation is still done inside a\n+\u00a0 \u00a0 _\bF_\bI_\bL_\bE quote block.\n \u00a0 \u00a0 _\bI_\bF\n \u00a0 \u00a0 _\bI_\bN_\bC\n \u00a0 \u00a0 _\bI_\bM_\bG\n \u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL\n \u00a0 \u00a0 _\bO_\bP_\bT\n \u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT\n \u00a0 [>] _\bQ_\bU_\bO_\bT_\bE\n@@ -24,14 +24,17 @@\n \u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$\n \u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE\n \u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b-\n \u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by\n \u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt\n \u00a0 _\bB_\bu_\bg_\bs\n \n+\n+\n+\n \u00a0 _\bp_\ba_\bg_\be_\b _\bs_\bo_\bu_\br_\bc_\be\n \u00a0 _\bh_\bt_\bp_\b _\bp_\br_\bo_\bj_\be_\bc_\bt\n \u00a0 _\bh_\bt_\bp_\b _\bh_\bo_\bm_\be_\bp_\ba_\bg_\be\n hosted by\n _\bS_\bo_\bu_\br_\bc_\be_\bf_\bo_\br_\bg_\be\n HTML coding_\b[_\bP_\bo_\bw_\be_\br_\be_\bd_\b _\bb_\by\n _\bh_\bt_\bp_\b]\n"}]}, {"source1": "./usr/share/doc/htp/set.html", "source2": "./usr/share/doc/htp/set.html", "unified_diff": "@@ -114,19 +114,29 @@\n Bugs\n \n \n \n \n

syntax

\n

\n+<\"[ref]\"UNDEF tagname>
\n+<\"[ref]\"UNDEF tagname1 tagname2 ... >
\n+
\n

\n

synopsis

\n SET creates a macro definition that can later be expanded\n anywhere in the HTML document. To create a macro:\n

\n+  <\"[ref]\"set sect-ctr=\"0\">
\n+  <\"[ref]\"blockdef name=\"section\">
\n+    <\"[ref]\"inc sect-ctr>
\n+    <\"[ref]\"block name=\"sect-${sect-ctr}\" expand global>
\n+      <\"[ref]\"use block noexpand>
\n+    <\"[ref]\"/block>
\n+  <\"[ref]\"/blockdef>
\n

\n

\n The macro \"emailaddr\" can then be expanded later. The \n USE tag is used to expand the macro outside a tag (i.e., into the regular\n text). If the macro needs to be expanded inside a markup tag, use the\n '$' operator.\n

\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1,36 +1,47 @@\n [HTP]\n *\b**\b**\b**\b**\b**\b* h\bht\btp\bp o\bon\bn-\b-l\bli\bin\bne\be r\bre\bef\bfe\ber\bre\ben\bnc\bce\be :\b: S\bSE\bET\bT *\b**\b**\b**\b**\b**\b*\n _\bT_\ba_\bb_\bl_\be_\b _\bo_\bf_\b _\bC_\bo_\bn_\bt_\be_\bn_\bt_\bs *\b**\b**\b**\b**\b* s\bsy\byn\bnt\bta\bax\bx *\b**\b**\b**\b**\b*\n-\u00a0 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn *\b**\b**\b**\b**\b* s\bsy\byn\bno\bop\bps\bsi\bis\bs *\b**\b**\b**\b**\b*\n-\u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be S\bSE\bET\bT creates a macro definition that can later be\n-\u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl expanded anywhere in the HTML document. To create a\n-\u00a0 _\bU_\bs_\ba_\bg_\be macro:\n-\u00a0 HTP Tags The macro \"emailaddr\" can then be expanded later.\n-\u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT The _\bU_\bS_\bE tag is used to expand the macro outside a\n-\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK tag (i.e., into the regular text). If the macro\n-\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF needs to be expanded inside a markup tag, use the\n-\u00a0 \u00a0 _\bD_\bE_\bF _\b'_\b$_\b' operator.\n-\u00a0 \u00a0 _\bF_\bI_\bL_\bE Multiple macros can be declared in a single markup\n-\u00a0 \u00a0 _\bI_\bF tag, as the second syntax line shows.\n-\u00a0 \u00a0 _\bI_\bN_\bC SET should only be used for a single line's worth\n-\u00a0 \u00a0 _\bI_\bM_\bG of text. Multi-line macros can be defined with the\n-\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL _\bB_\bL_\bO_\bC_\bK tag. The _\bB_\bL_\bO_\bC_\bK tag is also useful if the\n-\u00a0 \u00a0 _\bO_\bP_\bT macro contains a quotation character and you don't\n-\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT want to fool around with special escape characters.\n-\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE Macros can be redefined by using another SET\n-\u00a0 [>] _\bS_\bE_\bT command with the same macro name. The prior\n-\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF definition will be destroyed, however. Also, the\n-\u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT macro can be removed (destroyed) with the _\bU_\bN_\bS_\bE_\bT\n-\u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$ tag.\n-\u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE\n-\u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b-\n-\u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by\n-\u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt\n-\u00a0 _\bB_\bu_\bg_\bs\n+\u00a0 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bU_\bN_\bD_\bE_\bF tagname>\n+\u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bU_\bN_\bD_\bE_\bF tagname1 tagname2 ... >\n+\u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl\n+\u00a0 _\bU_\bs_\ba_\bg_\be *\b**\b**\b**\b**\b* s\bsy\byn\bno\bop\bps\bsi\bis\bs *\b**\b**\b**\b**\b*\n+\u00a0 HTP Tags S\bSE\bET\bT creates a macro definition that can later be\n+\u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT expanded anywhere in the HTML document. To create a\n+\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK macro:\n+\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bs_\be_\bt sect-ctr=\"0\">\n+\u00a0 \u00a0 _\bD_\bE_\bF \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bb_\bl_\bo_\bc_\bk_\bd_\be_\bf name=\"section\">\n+\u00a0 \u00a0 _\bF_\bI_\bL_\bE \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bi_\bn_\bc sect-ctr>\n+\u00a0 \u00a0 _\bI_\bF \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bb_\bl_\bo_\bc_\bk name=\"sect-${sect-ctr}\" expand\n+\u00a0 \u00a0 _\bI_\bN_\bC global>\n+\u00a0 \u00a0 _\bI_\bM_\bG \u00a0 \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bu_\bs_\be block noexpand>\n+\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\b/_\bb_\bl_\bo_\bc_\bk>\n+\u00a0 \u00a0 _\bO_\bP_\bT \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\b/_\bb_\bl_\bo_\bc_\bk_\bd_\be_\bf>\n+\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT The macro \"emailaddr\" can then be expanded later.\n+\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE The _\bU_\bS_\bE tag is used to expand the macro outside a\n+\u00a0 [>] _\bS_\bE_\bT tag (i.e., into the regular text). If the macro\n+\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF needs to be expanded inside a markup tag, use the\n+\u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT _\b'_\b$_\b' operator.\n+\u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$ Multiple macros can be declared in a single markup\n+\u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE tag, as the second syntax line shows.\n+\u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b- SET should only be used for a single line's worth\n+\u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by of text. Multi-line macros can be defined with the\n+\u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt _\bB_\bL_\bO_\bC_\bK tag. The _\bB_\bL_\bO_\bC_\bK tag is also useful if the\n+\u00a0 _\bB_\bu_\bg_\bs macro contains a quotation character and you don't\n+ want to fool around with special escape characters.\n+ Macros can be redefined by using another SET\n+ command with the same macro name. The prior\n+ definition will be destroyed, however. Also, the\n+ macro can be removed (destroyed) with the _\bU_\bN_\bS_\bE_\bT\n+ tag.\n+\n+\n+\n+\n+\n \n \n \n \n \n \n \n"}]}, {"source1": "./usr/share/doc/htp/tut/jh.html", "source2": "./usr/share/doc/htp/tut/jh.html", "unified_diff": "@@ -16,10 +16,10 @@\n Phone:+49 761 203-8243\n Fax:+49 761 203-8242\n \n \n \n


\n Copyright by Joe Doe.
\n- last updated Tue Jul 08, 2025\n+ last updated Wed Jun 05, 2024\n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1,8 +1,8 @@\n *\b**\b**\b**\b**\b**\b* J\bJo\boc\bch\bhe\ben\bn H\bHo\boe\ben\bni\bic\bck\bke\be *\b**\b**\b**\b**\b**\b*\n Navigation bar [Photo]\n _\bM_\ba_\bi_\bn R\bRo\boo\bom\bm:\b: Bld.52 00-020\n _\bE_\bx_\ba_\bm_\bp_\bl_\be P\bPh\bho\bon\bne\be:\b: +49 761 203-8243\n F\bFa\bax\bx:\b: +49 761 203-8242\n ===============================================================================\n Copyright by _\bJ_\bo_\be_\b _\bD_\bo_\be.\n-last updated Tue Jul 08, 2025\n+last updated Wed Jun 05, 2024\n"}]}, {"source1": "./usr/share/doc/htp/tut/tut1.html", "source2": "./usr/share/doc/htp/tut/tut1.html", "unified_diff": "@@ -5,9 +5,9 @@\n \n \n \n This page was produced by htp.\n
\n Copyright by Joe Doe,\n webmaster@domain.com,\n-last updated Tue Jul 08, 2025\n+last updated Wed Jun 05, 2024\n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1,3 +1,3 @@\n This page was produced by htp.\n ===============================================================================\n-Copyright by Joe Doe, _\bw_\be_\bb_\bm_\ba_\bs_\bt_\be_\br_\b@_\bd_\bo_\bm_\ba_\bi_\bn_\b._\bc_\bo_\bm, last updated Tue Jul 08, 2025\n+Copyright by Joe Doe, _\bw_\be_\bb_\bm_\ba_\bs_\bt_\be_\br_\b@_\bd_\bo_\bm_\ba_\bi_\bn_\b._\bc_\bo_\bm, last updated Wed Jun 05, 2024\n"}]}, {"source1": "./usr/share/doc/htp/tut/tut2.html", "source2": "./usr/share/doc/htp/tut/tut2.html", "unified_diff": "@@ -13,10 +13,10 @@\n

\n As you can see the file contains almost only the contents.\n

\n \n \n
\n Copyright by Joe Doe.
\n- last updated Tue Jul 08, 2025\n+ last updated Wed Jun 05, 2024\n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1,6 +1,6 @@\n Navigation bar *\b**\b**\b**\b**\b* H\bHe\ber\bre\be i\bis\bs t\bth\bhe\be c\bco\bon\bnt\bte\ben\bnt\bt *\b**\b**\b**\b**\b*\n _\bM_\ba_\bi_\bn As you can see the file contains almost only the contents.\n _\bE_\bx_\ba_\bm_\bp_\bl_\be\n ===============================================================================\n Copyright by _\bJ_\bo_\be_\b _\bD_\bo_\be.\n-last updated Tue Jul 08, 2025\n+last updated Wed Jun 05, 2024\n"}]}, {"source1": "./usr/share/doc/htp/tut/tut3.html", "source2": "./usr/share/doc/htp/tut/tut3.html", "unified_diff": "@@ -13,10 +13,10 @@\n

\n As you can see the file contains almost only the contents.\n

\n \n \n
\n Copyright by Joe Doe.
\n- last updated Tue Jul 08, 2025\n+ last updated Wed Jun 05, 2024\n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1,6 +1,6 @@\n Navigation bar *\b**\b**\b**\b**\b* H\bHe\ber\bre\be a\bar\bre\be t\bth\bhe\be c\bco\bon\bnt\bte\ben\bnt\bts\bs *\b**\b**\b**\b**\b*\n _\bM_\ba_\bi_\bn As you can see the file contains almost only the contents.\n _\bE_\bx_\ba_\bm_\bp_\bl_\be\n ===============================================================================\n Copyright by _\bJ_\bo_\be_\b _\bD_\bo_\be.\n-last updated Tue Jul 08, 2025\n+last updated Wed Jun 05, 2024\n"}]}, {"source1": "./usr/share/doc/htp/unset.html", "source2": "./usr/share/doc/htp/unset.html", "unified_diff": "@@ -124,18 +124,27 @@\n The macro is subsequently not available for use in the pre-processed files.\n (Note that simply redefining the macro with another SET or\n BLOCK definition with the same name is acceptable. The\n old macro definition will be removed automatically.)\n

\n For example:\n

\n+  <\"[ref]\"set sect-ctr=\"0\">
\n+  <\"[ref]\"blockdef name=\"section\">
\n+    <\"[ref]\"inc sect-ctr>
\n+    <\"[ref]\"block name=\"sect-${sect-ctr}\" expand global>
\n+      <\"[ref]\"use block noexpand>
\n+    <\"[ref]\"/block>
\n+  <\"[ref]\"/blockdef>
\n

\n

\n More than one macro may be removed in the same tag:\n

\n+<a href=\"mailto:$email\">mailto hyperlink</a>
\n+<a href=\"http://$domain/~${username}/\">another hyperlink</a>
\n

\n

\n \n \n \n \n \n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -6,35 +6,46 @@\n \u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl definition. The macro is subsequently not available\n \u00a0 _\bU_\bs_\ba_\bg_\be for use in the pre-processed files. (Note that\n \u00a0 HTP Tags simply redefining the macro with another _\bS_\bE_\bT or\n \u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT _\bB_\bL_\bO_\bC_\bK definition with the same name is acceptable.\n \u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK The old macro definition will be removed\n \u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF automatically.)\n \u00a0 \u00a0 _\bD_\bE_\bF For example:\n-\u00a0 \u00a0 _\bF_\bI_\bL_\bE More than one macro may be removed in the same tag:\n-\u00a0 \u00a0 _\bI_\bF\n-\u00a0 \u00a0 _\bI_\bN_\bC\n-\u00a0 \u00a0 _\bI_\bM_\bG\n-\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL\n-\u00a0 \u00a0 _\bO_\bP_\bT\n-\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT\n-\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE\n-\u00a0 \u00a0 _\bS_\bE_\bT\n-\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF\n-\u00a0 [>] _\bU_\bN_\bS_\bE_\bT\n-\u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$\n+\u00a0 \u00a0 _\bF_\bI_\bL_\bE \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bs_\be_\bt sect-ctr=\"0\">\n+\u00a0 \u00a0 _\bI_\bF \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bb_\bl_\bo_\bc_\bk_\bd_\be_\bf name=\"section\">\n+\u00a0 \u00a0 _\bI_\bN_\bC \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bi_\bn_\bc sect-ctr>\n+\u00a0 \u00a0 _\bI_\bM_\bG \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bb_\bl_\bo_\bc_\bk name=\"sect-${sect-ctr}\" expand\n+\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL global>\n+\u00a0 \u00a0 _\bO_\bP_\bT \u00a0 \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bu_\bs_\be block noexpand>\n+\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\b/_\bb_\bl_\bo_\bc_\bk>\n+\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\b/_\bb_\bl_\bo_\bc_\bk_\bd_\be_\bf>\n+\u00a0 \u00a0 _\bS_\bE_\bT More than one macro may be removed in the same tag:\n+\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF mailto hyperlink\n+\u00a0 [>] _\bU_\bN_\bS_\bE_\bT another\n+\u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$ hyperlink\n \u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE\n \u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b-\n \u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by\n \u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt\n \u00a0 _\bB_\bu_\bg_\bs\n \n \n \n \n+\n+\n+\n+\n+\n+\n+\n+\n+\n+\n+\n \u00a0 _\bp_\ba_\bg_\be_\b _\bs_\bo_\bu_\br_\bc_\be\n \u00a0 _\bh_\bt_\bp_\b _\bp_\br_\bo_\bj_\be_\bc_\bt\n \u00a0 _\bh_\bt_\bp_\b _\bh_\bo_\bm_\be_\bp_\ba_\bg_\be\n hosted by\n _\bS_\bo_\bu_\br_\bc_\be_\bf_\bo_\br_\bg_\be\n HTML coding_\b[_\bP_\bo_\bw_\be_\br_\be_\bd_\b _\bb_\by\n _\bh_\bt_\bp_\b]\n"}]}, {"source1": "./usr/share/doc/htp/use.html", "source2": "./usr/share/doc/htp/use.html", "unified_diff": "@@ -114,14 +114,16 @@\n Bugs\n
\n \n \n \n

syntax

\n

\n+    <\"[ref]\"FILE INCLUDE=\"include.hti\" name=\"Jim Nelson\" email=\"jnelson@crl.com\">
\n+    This tag will fail: <\"[ref]\"USE name>
\n

\n

synopsis

\n USE will expand macros that have been previously\n declared with either SET or BLOCK. USE can only be used outside of other\n markup tags.\n

If you USE a block macro the value of expanded block macros will\n@@ -149,14 +151,21 @@\n Inside a markup tag, like IMG, A (anchor), or\n any other standard HTML or htp tag, the '$' operator must be used.\n The '$' should be immediately followed by the macro name, which may or\n may not be surrounded by curly braces. When htp encounters this it\n replaces the macro name by the contents of the macro without further\n processing the contents.\n

\n+ 1. <\"[ref]\"file include=\"header.hti\">
\n+ 2.   <\"[ref]\"set sect-ctr=\"1\">
\n+ 3.   <\"[ref]\"while sect-${sect-ctr}>
\n+ 4.     <\"[ref]\"use sect-${sect-ctr}>
\n+ 5.     <\"[ref]\"inc sect-ctr>
\n+ 6.   <\"[ref]\"/while>
\n+ 7. <\"[ref]\"file include=\"footer.hti\">
\n

\n

\n The use of curly braces is encouraged, since it is more robust and\n should never cause confusion with surrounding text. If no curly\n braces are used the macro name consists either of a single punctuation\n character or the maximum sequence of letters, digits, "-"\n and "_" that follows it.\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -1,41 +1,51 @@\n [HTP]\n *\b**\b**\b**\b**\b**\b* h\bht\btp\bp o\bon\bn-\b-l\bli\bin\bne\be r\bre\bef\bfe\ber\bre\ben\bnc\bce\be :\b: U\bUS\bSE\bE,\b, $\b$ *\b**\b**\b**\b**\b**\b*\n _\bT_\ba_\bb_\bl_\be_\b _\bo_\bf_\b _\bC_\bo_\bn_\bt_\be_\bn_\bt_\bs *\b**\b**\b**\b**\b* s\bsy\byn\bnt\bta\bax\bx *\b**\b**\b**\b**\b*\n-\u00a0 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn *\b**\b**\b**\b**\b* s\bsy\byn\bno\bop\bps\bsi\bis\bs *\b**\b**\b**\b**\b*\n-\u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be U\bUS\bSE\bE will expand macros that have been previously\n-\u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl declared with either _\bS_\bE_\bT or _\bB_\bL_\bO_\bC_\bK. USE can only be\n-\u00a0 _\bU_\bs_\ba_\bg_\be used outside of other markup tags.\n-\u00a0 HTP Tags If you USE a block macro the value of expanded\n-\u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT block macros will be further parsed by htp. This is\n-\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK maybe not what you want, for example, if the use is\n-\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF inside a block which _\be_\bx_\bp_\ba_\bn_\bd_\bs itself. You can use\n-\u00a0 \u00a0 _\bD_\bE_\bF the noexpand attribute to prevent further\n-\u00a0 \u00a0 _\bF_\bI_\bL_\bE expansion.\n-\u00a0 \u00a0 _\bI_\bF USE will accept additional parameters, which are\n-\u00a0 \u00a0 _\bI_\bN_\bC \"local\" macros for the expanded macro. This is only\n-\u00a0 \u00a0 _\bI_\bM_\bG valid for _\bB_\bL_\bO_\bC_\bK macros. Macros created using _\bS_\bE_\bT\n-\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL cannot have parameters passed. For example:\n-\u00a0 \u00a0 _\bO_\bP_\bT (See below for a description of the '$' operator.)\n-\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT The example on line 7 works because \"stuff\" has\n-\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE been declared as a block macro, and the tag is\n-\u00a0 \u00a0 _\bS_\bE_\bT passing the \"email\" macro to the \"stuff\" macro.\n-\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF Line 8 fails because the \"email\" macro is\n-\u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT unavailable once the block macro is completely\n-\u00a0 [>] _\bU_\bS_\bE_\b,_\b _\b$ expanded, and cannot be passed to a SET macro.\n-\u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE Note that the \"email\" macro is available to other\n-\u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b- macros or included files called within the \"stuff\"\n-\u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by block.\n-\u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt Inside a markup tag, like _\bI_\bM_\bG, A (anchor), or any\n-\u00a0 _\bB_\bu_\bg_\bs other standard HTML or htp tag, the '$' operator\n+\u00a0 _\bI_\bn_\bt_\br_\bo_\bd_\bu_\bc_\bt_\bi_\bo_\bn \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bF_\bI_\bL_\bE INCLUDE=\"include.hti\" name=\"Jim\n+\u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be Nelson\" email=\"jnelson@crl.com\">\n+\u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl \u00a0 \u00a0 This tag will fail: <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bU_\bS_\bE name>\n+\u00a0 _\bU_\bs_\ba_\bg_\be *\b**\b**\b**\b**\b* s\bsy\byn\bno\bop\bps\bsi\bis\bs *\b**\b**\b**\b**\b*\n+\u00a0 HTP Tags U\bUS\bSE\bE will expand macros that have been previously\n+\u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT declared with either _\bS_\bE_\bT or _\bB_\bL_\bO_\bC_\bK. USE can only be\n+\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK used outside of other markup tags.\n+\u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF If you USE a block macro the value of expanded\n+\u00a0 \u00a0 _\bD_\bE_\bF block macros will be further parsed by htp. This is\n+\u00a0 \u00a0 _\bF_\bI_\bL_\bE maybe not what you want, for example, if the use is\n+\u00a0 \u00a0 _\bI_\bF inside a block which _\be_\bx_\bp_\ba_\bn_\bd_\bs itself. You can use\n+\u00a0 \u00a0 _\bI_\bN_\bC the noexpand attribute to prevent further\n+\u00a0 \u00a0 _\bI_\bM_\bG expansion.\n+\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL USE will accept additional parameters, which are\n+\u00a0 \u00a0 _\bO_\bP_\bT \"local\" macros for the expanded macro. This is only\n+\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT valid for _\bB_\bL_\bO_\bC_\bK macros. Macros created using _\bS_\bE_\bT\n+\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE cannot have parameters passed. For example:\n+\u00a0 \u00a0 _\bS_\bE_\bT (See below for a description of the '$' operator.)\n+\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF The example on line 7 works because \"stuff\" has\n+\u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT been declared as a block macro, and the tag is\n+\u00a0 [>] _\bU_\bS_\bE_\b,_\b _\b$ passing the \"email\" macro to the \"stuff\" macro.\n+\u00a0 \u00a0 _\bW_\bH_\bI_\bL_\bE Line 8 fails because the \"email\" macro is\n+\u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b- unavailable once the block macro is completely\n+\u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by expanded, and cannot be passed to a SET macro.\n+\u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt Note that the \"email\" macro is available to other\n+\u00a0 _\bB_\bu_\bg_\bs macros or included files called within the \"stuff\"\n+ block.\n+ Inside a markup tag, like _\bI_\bM_\bG, A (anchor), or any\n+ other standard HTML or htp tag, the '$' operator\n must be used. The '$' should be immediately\n followed by the macro name, which may or may not be\n surrounded by curly braces. When htp encounters\n this it replaces the macro name by the contents of\n the macro without further processing the contents.\n+ \u00a01. <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bf_\bi_\bl_\be include=\"header.hti\">\n+ \u00a02. \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bs_\be_\bt sect-ctr=\"1\">\n+ \u00a03. \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bw_\bh_\bi_\bl_\be sect-${sect-ctr}>\n+ \u00a04. \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bu_\bs_\be sect-${sect-ctr}>\n+ \u00a05. \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bi_\bn_\bc sect-ctr>\n+ \u00a06. \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\b/_\bw_\bh_\bi_\bl_\be>\n+ \u00a07. <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bf_\bi_\bl_\be include=\"footer.hti\">\n The use of curly braces is encouraged, since it is\n more robust and should never cause confusion with\n surrounding text. If no curly braces are used the\n macro name consists either of a single punctuation\n character or the maximum sequence of letters,\n digits, \"-\" and \"_\" that follows it.\n If a '$' character needs to be kept in the final\n"}]}, {"source1": "./usr/share/doc/htp/while.html", "source2": "./usr/share/doc/htp/while.html", "unified_diff": "@@ -124,19 +124,27 @@\n The basic form is shown above.\n

\n \"Conditional\" is either a \"compare\" or \"is defined\" operation.\n A compare operator is a test of the value of a macro against a literal string.\n If the NOT tag is present in the WHILE markup, the evaluation of the\n conditional is reversed:\n

\n+    <\"[ref]\"unset email_addr home_url login_name>
\n

\n

\n Just as with \"[ref]\"IF you can also check for a\n macro's existance:\n

\n+<\"[ref]\"file include=\"header.hti\">
\n+  <\"[ref]\"set sect-ctr=\"1\">
\n+  <\"[ref]\"while sect-${sect-ctr}>
\n+    <\"[ref]\"use sect-${sect-ctr}>
\n+    <\"[ref]\"inc sect-ctr>
\n+  <\"[ref]\"/while>
\n+<\"[ref]\"file include=\"footer.hti\">
\n

\n

\n If the condition is true, the block is evaluated and afterwards the\n WHILE tag is evaluated again. If the '$'-operator is used in the\n WHILE tag it is also reevaluated on each iteration.\n

\n A loop block must be closed with the /WHILE tag.\n", "details": [{"source1": "html2text {}", "source2": "html2text {}", "unified_diff": "@@ -5,39 +5,47 @@\n \u00a0 _\bL_\bi_\bc_\be_\bn_\bs_\be W\bWH\bHI\bIL\bLE\bE is the building block for repeated\n \u00a0 _\bT_\bu_\bt_\bo_\br_\bi_\ba_\bl processing. The basic form is shown above.\n \u00a0 _\bU_\bs_\ba_\bg_\be \"Conditional\" is either a \"compare\" or \"is defined\"\n \u00a0 HTP Tags operation. A compare operator is a test of the\n \u00a0 \u00a0 _\bA_\bL_\bT_\bT_\bE_\bX_\bT value of a macro against a literal string. If the\n \u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK NOT tag is present in the WHILE markup, the\n \u00a0 \u00a0 _\bB_\bL_\bO_\bC_\bK_\bD_\bE_\bF evaluation of the conditional is reversed:\n-\u00a0 \u00a0 _\bD_\bE_\bF Just as with _\b[_\b[_\br_\be_\bf_\b]_\b]_\bI_\bF you can also check for a\n-\u00a0 \u00a0 _\bF_\bI_\bL_\bE macro's existance:\n-\u00a0 \u00a0 _\bI_\bF If the condition is true, the block is evaluated\n-\u00a0 \u00a0 _\bI_\bN_\bC and afterwards the WHILE tag is evaluated again. If\n-\u00a0 \u00a0 _\bI_\bM_\bG the '$'-operator is used in the WHILE tag it is\n-\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL also reevaluated on each iteration.\n-\u00a0 \u00a0 _\bO_\bP_\bT A loop block m\bmu\bus\bst\bt be closed with the /WHILE tag.\n-\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT\n-\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE\n-\u00a0 \u00a0 _\bS_\bE_\bT\n-\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF\n-\u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT\n-\u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$\n-\u00a0 [>] _\bW_\bH_\bI_\bL_\bE\n-\u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b-\n+\u00a0 \u00a0 _\bD_\bE_\bF \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bu_\bn_\bs_\be_\bt email_addr home_url login_name>\n+\u00a0 \u00a0 _\bF_\bI_\bL_\bE Just as with _\b[_\b[_\br_\be_\bf_\b]_\b]_\bI_\bF you can also check for a\n+\u00a0 \u00a0 _\bI_\bF macro's existance:\n+\u00a0 \u00a0 _\bI_\bN_\bC <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bf_\bi_\bl_\be include=\"header.hti\">\n+\u00a0 \u00a0 _\bI_\bM_\bG \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bs_\be_\bt sect-ctr=\"1\">\n+\u00a0 \u00a0 _\bI_\bM_\bA_\bG_\bE_\bU_\bR_\bL \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bw_\bh_\bi_\bl_\be sect-${sect-ctr}>\n+\u00a0 \u00a0 _\bO_\bP_\bT \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bu_\bs_\be sect-${sect-ctr}>\n+\u00a0 \u00a0 _\bO_\bU_\bT_\bP_\bU_\bT \u00a0 \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bi_\bn_\bc sect-ctr>\n+\u00a0 \u00a0 _\bQ_\bU_\bO_\bT_\bE \u00a0 <_\b[_\b[_\br_\be_\bf_\b]_\b]_\b/_\bw_\bh_\bi_\bl_\be>\n+\u00a0 \u00a0 _\bS_\bE_\bT <_\b[_\b[_\br_\be_\bf_\b]_\b]_\bf_\bi_\bl_\be include=\"footer.hti\">\n+\u00a0 \u00a0 _\bU_\bN_\bD_\bE_\bF If the condition is true, the block is evaluated\n+\u00a0 \u00a0 _\bU_\bN_\bS_\bE_\bT and afterwards the WHILE tag is evaluated again. If\n+\u00a0 \u00a0 _\bU_\bS_\bE_\b,_\b _\b$ the '$'-operator is used in the WHILE tag it is\n+\u00a0 [>] _\bW_\bH_\bI_\bL_\bE also reevaluated on each iteration.\n+\u00a0 \u00a0 _\b<_\b!_\b-_\b-_\b- A loop block m\bmu\bus\bst\bt be closed with the /WHILE tag.\n \u00a0 _\bH_\bi_\bs_\bt_\bo_\br_\by\n \u00a0 _\bW_\bi_\bs_\bh_\b _\bl_\bi_\bs_\bt\n \u00a0 _\bB_\bu_\bg_\bs\n \n \n \n \n \n \n \n+\n+\n+\n+\n+\n+\n+\n+\n \n \n \u00a0 _\bp_\ba_\bg_\be_\b _\bs_\bo_\bu_\br_\bc_\be\n \u00a0 _\bh_\bt_\bp_\b _\bp_\br_\bo_\bj_\be_\bc_\bt\n \u00a0 _\bh_\bt_\bp_\b _\bh_\bo_\bm_\be_\bp_\ba_\bg_\be\n hosted by\n _\bS_\bo_\bu_\br_\bc_\be_\bf_\bo_\br_\bg_\be\n"}]}]}]}]}]}