<div style="font-family: arial; font-size: 14px;"><div fr-original-style="" style="box-sizing: border-box;">Hi Seth,</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">  My problem is getting Sphinx to generate color code syntax highlighting AND add links using .rst.  This discussion encourages me to dig deeper!</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">With Sphinx:</div><div fr-original-style="" style="box-sizing: border-box;"> .. code-block:: mapfile -> syntax highlighting, but no links</div><div fr-original-style="" style="box-sizing: border-box;">.. parsed-literal:: -> links, but no syntax highlighting </div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">There have been a few attempts in the past to make some kind of GUI-based map file generator.  Not sure why they are not more popular.</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">I think there is great promise in your Python approach.  When a new user approaches MapServer or a consultant gets shipped a shoebox full of shapefiles, one of the more tedious tasks is building a mapfile to render a map.  A Python app to generate a mapfile would go along way to being successful in both of those cases.</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">In my effort a few years ago, I used Python with GDAL/OGR to read a shapefile and do substitutions in a handcrafted mapfile template to create a finished mapfile (and other XML files related to GeoMoose 2).  Perhaps mappyfile might be a better (more maintainable) method than templates.</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">Brent</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><hr id="previousmessagehr" fr-original-style="" style="box-sizing: border-box; clear: both; user-select: none;"><div fr-original-style="" style="box-sizing: border-box;"><span fr-original-style="" style="box-sizing: border-box;"><strong fr-original-style="" style="box-sizing: border-box; font-weight: 700;">From</strong>: "Seth G" <sethg@geographika.co.uk><br fr-original-style="" style="box-sizing: border-box;"><strong fr-original-style="" style="box-sizing: border-box; font-weight: 700;">Sent</strong>: 3/19/21 12:06 PM<br fr-original-style="" style="box-sizing: border-box;"><strong fr-original-style="" style="box-sizing: border-box; font-weight: 700;">To</strong>: "Brent Fraser" <bfraser@geoanalytic.com>, "Basques, Bob (CI-StPaul)" <bob.basques@ci.stpaul.mn.us>, "mapserver-dev@lists.osgeo.org" <mapserver-dev@lists.osgeo.org><br fr-original-style="" style="box-sizing: border-box;"><strong fr-original-style="" style="box-sizing: border-box; font-weight: 700;">Subject</strong>: Re: [mapserver-dev] Versioned MapServer Docs?</span></div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">Hi Brent,</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">All Mapfile keywords are linkable using the following format: <a fr-original-style="" href="https://mapserver.org/mapfile/layer.html#mapfile-layer-data" rel="noopener noreferrer" style="box-sizing: border-box; color: rgb(0, 102, 147); text-decoration: underline; user-select: auto;" target="_blank" rel="noopener noreferrer">https://mapserver.org/mapfile/layer.html#mapfile-layer-data</a></div><div fr-original-style="" style="box-sizing: border-box;">I might "borrow" that idea of linking keywords directly to the docs in the online mappyfile editor.</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">Longer term I'm hoping to make the JSON schema "official" and bring it into the MapServer project (possible along with mappyfile project itself). See draft RFC at <a fr-original-style="" href="https://mapserver.org/mapfile/layer.html#mapfile-layer-data" rel="noopener noreferrer" style="box-sizing: border-box; color: rgb(0, 102, 147); text-decoration: underline; user-select: auto;" target="_blank" rel="noopener noreferrer">https://mapserver.org/mapfile/layer.html#mapfile-layer-data</a></div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">mappyfile is also designed to allow plugins (the idea is to allow custom validation plugins for example to check a Mapfile is correctly configured for WMS/WFS for example). Your idea for a mapfile generator could maybe build on mappyfile? At the very least you'd get pretty-printing in Python.</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">An enjoyable discussion in any case!</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">Seth</div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" id="sig62266145" style="box-sizing: border-box;"><div fr-original-class="signature" fr-original-style="" style="box-sizing: border-box;">--</div><div fr-original-class="signature" fr-original-style="" style="box-sizing: border-box;">web:http://geographika.co.uk</div><div fr-original-class="signature" fr-original-style="" style="box-sizing: border-box;">twitter: @geographika</div></div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;">On Fri, Mar 19, 2021, at 6:39 PM, Brent Fraser wrote:</div><blockquote fr-original-style="" id="qt" style="box-sizing: border-box; border-left: 2px solid rgb(94, 53, 177); margin-left: 0px; padding-left: 5px; color: rgb(94, 53, 177);" type="cite"><div fr-original-style="font-family:arial;font-size:14px;" style="font-family: arial; font-size: 14px; box-sizing: border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;">Good idea, but too much coding for me since it's a lot of work to cover all (most?) of the possibilities.    Seth's mappyfile json files are interesting though; might make it easier.</div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="" style="box-sizing: border-box;"><hr id="qt-previousmessagehr" style="box-sizing: border-box; clear: both; user-select: none; break-after: page;" fr-original-style="box-sizing:border-box;clear:both;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;">From</b>: "Basques, Bob (CI-StPaul)" <bob.basques@ci.stpaul.mn.us><br style="box-sizing:border-box;" fr-original-style="box-sizing:border-box;"><b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;">Sent</b>: 3/19/21 11:27 AM<br style="box-sizing:border-box;" fr-original-style="box-sizing:border-box;"><b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;">To</b>: "bfraser@geoanalytic.com" <bfraser@geoanalytic.com>, "mapserver-dev@lists.osgeo.org" <mapserver-dev@lists.osgeo.org>, "Jeff McKenna" <jmckenna@gatewaygeomatics.com><br style="box-sizing:border-box;" fr-original-style="box-sizing:border-box;"><b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;">Subject</b>: Re: [mapserver-dev] Versioned MapServer Docs?</span></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;">Another thought to consider,  With the HTML option I got to thinking about setting it up as a visual form, where certain elements could be changed in the HTML by the user as FORM elements, and used to create a new Map output tile when submitted.  A way of showing how different parameters/ settings change the output, etc.  sort of a dynamic doc linking thing.</p><p fr-original-style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"> </p><p fr-original-style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;">Thanks on the DATA statement, goes to that thought on being able to pass things onto the next curator of the system, probably overkill, but easily readable, etc . . .  I have a real good one for formatting of TEXT inside of the SQL that I should have used.</p><p fr-original-style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"> </p><p fr-original-style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;">Bobb</p><p fr-original-style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"> </p><p fr-original-style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"> </p><p fr-original-style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"> </p><div fr-original-style="border-top-color:rgb(181, 196, 223);border-right-color:currentcolor;border-bottom-color:currentcolor;border-left-color:currentcolor;border-top-style:solid;border-right-style:none;border-bottom-style:none;border-left-style:none;border-top-width:1pt;border-right-width:medium;border-bottom-width:medium;border-left-width:medium;border-image-outset:0;border-image-repeat:stretch;border-image-slice:100%;border-image-source:none;border-image-width:1;padding-top:3pt;padding-right:0in;padding-bottom:0in;padding-left:0in;box-sizing:border-box;" style="border-top-color:rgb(181, 196, 223);border-right-color:currentcolor;border-bottom-color:currentcolor;border-left-color:currentcolor;border-top-style:solid;border-right-style:none;border-bottom-style:none;border-left-style:none;border-top-width:1pt;border-right-width:medium;border-bottom-width:medium;border-left-width:medium;border-image-outset:0;border-image-repeat:stretch;border-image-slice:100%;border-image-source:none;border-image-width:1;padding-top:3pt;padding-right:0in;padding-bottom:0in;padding-left:0in;box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;"><span fr-original-style="color:black;box-sizing:border-box;" style="color:black;box-sizing:border-box;"><span fr-original-class="size" fr-original-style="font-size:12pt;" style="font-size: 12pt; box-sizing: border-box;">From: </span></span></b><span fr-original-style="color:black;box-sizing:border-box;" style="color:black;box-sizing:border-box;"><span fr-original-class="size" fr-original-style="font-size:12pt;" style="font-size: 12pt; box-sizing: border-box;">Brent Fraser <bfraser@geoanalytic.com><br style="box-sizing:border-box;" fr-original-style="box-sizing:border-box;"> <b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;">Reply-To: </b>Brent Fraser <bfraser@geoanalytic.com><br style="box-sizing:border-box;" fr-original-style="box-sizing:border-box;"> <b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;">Date: </b>Friday, March 19, 2021 at 12:09 PM<br style="box-sizing:border-box;" fr-original-style="box-sizing:border-box;"> <b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;">To: </b>Bob Basques <bob.basques@ci.stpaul.mn.us>, "mapserver-dev@lists.osgeo.org" <mapserver-dev@lists.osgeo.org>, Jeff McKenna <jmckenna@gatewaygeomatics.com><br style="box-sizing:border-box;" fr-original-style="box-sizing:border-box;"> <b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;">Subject: </b>Re: [mapserver-dev] Versioned MapServer Docs?</span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"> </p></div><table fr-original-style="margin-left:0.5in;background-color:rgb(226, 247, 0);background-position-x:0%;background-position-y:0%;background-repeat:repeat;background-attachment:scroll;background-image:none;background-size:auto;background-origin:padding-box;background-clip:border-box;border-top-color:black;border-top-style:solid;border-top-width:1pt;border-right-color:black;border-right-style:solid;border-right-width:1pt;border-bottom-color:black;border-bottom-style:solid;border-bottom-width:1pt;border-left-color:black;border-left-style:solid;border-left-width:1pt;border-image-outset:0;border-image-repeat:stretch;border-image-slice:100%;border-image-source:none;border-image-width:1;box-sizing:border-box;border-collapse:collapse;empty-cells:show;max-width:100%;" style="margin-left: 0.5in; background: rgb(226, 247, 0) none repeat scroll 0% 0%; border: 1pt solid black; box-sizing: border-box; border-collapse: collapse; empty-cells: show; max-width: 100%;" cellpadding="0" border="1"><tbody fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><tr fr-original-style="box-sizing:border-box;" style="box-sizing: border-box; user-select: none;"><td fr-original-style="border-top-color:currentcolor;border-top-style:none;border-top-width:medium;border-right-color:currentcolor;border-right-style:none;border-right-width:medium;border-bottom-color:currentcolor;border-bottom-style:none;border-bottom-width:medium;border-left-color:currentcolor;border-left-style:none;border-left-width:medium;border-image-outset:0;border-image-repeat:stretch;border-image-slice:100%;border-image-source:none;border-image-width:1;padding-top:0.75pt;padding-right:0.75pt;padding-bottom:0.75pt;padding-left:0.75pt;box-sizing:border-box;min-width:5px;" style="border: medium none; padding: 0.75pt; box-sizing: border-box; min-width: 5px; user-select: text;"><p fr-original-style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;"><span fr-original-style="color:rgb(255, 51, 51);box-sizing:border-box;" style="color:rgb(255, 51, 51);box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Calibri", sans-serif;" style="font-family: "Calibri", sans-serif; box-sizing: border-box;">Think Before You Click: </span></span></b><span fr-original-style="color:black;box-sizing:border-box;" style="color:black;box-sizing:border-box;">This email originated <b fr-original-style="box-sizing:border-box;font-weight:700;" style="box-sizing:border-box;font-weight:700;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Calibri", sans-serif;" style="font-family: "Calibri", sans-serif; box-sizing: border-box;">outside </span></span></b>our organization.</span></p></td></tr></tbody></table><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"> </p><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">I too use a editor with [imperfect] syntax highlighting (Notepad++).  But i wanted to go beyond that (your Vim -> html is a nice option).  </span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;"> </span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">My goals for the "mapfile cheatsheet" are:</span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;"> </span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">1.  Make it easy to create a workable mapfile </span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">    - can simply cut-and paste</span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">    - content should be almost complete</span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">    - have comments showing options, acceptable values, etc for tweaking</span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">2.  Make it available for others to use (e.g. a web page)</span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">3.  Provide links on the keywords pointing to the official doc for details (.rst? .md?) </span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">    - show syntax highlighting for ease of reading</span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">4.  Make it easy to maintain/update as the mapfile syntax changes</span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;"> </span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;"> </span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">Loved your DATA statement by the way!</span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;"> </span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;">Brent</span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;" style="margin-left:0.5in;box-sizing:border-box;color:rgb(68, 68, 68);margin-top:1px;"><span fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;"> </span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-top:1px;margin-right:0in;margin-bottom:5pt;margin-left:1in;box-sizing:border-box;color:rgb(68, 68, 68);" style="margin-top:1px;margin-right:0in;margin-bottom:5pt;margin-left:1in;box-sizing:border-box;color:rgb(68, 68, 68);"><span fr-original-style="color:rgb(68, 68, 68);box-sizing:border-box;" style="color:rgb(68, 68, 68);box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;"> </span></span></span></p></div><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><div fr-original-style="box-sizing:border-box;" style="box-sizing:border-box;"><p fr-original-style="margin-top:1px;margin-right:0in;margin-bottom:5pt;margin-left:1in;box-sizing:border-box;color:rgb(68, 68, 68);" style="margin-top:1px;margin-right:0in;margin-bottom:5pt;margin-left:1in;box-sizing:border-box;color:rgb(68, 68, 68);"><span fr-original-style="color:rgb(68, 68, 68);box-sizing:border-box;" style="color:rgb(68, 68, 68);box-sizing:border-box;"><span fr-original-class="font" fr-original-style="font-family:"Arial", sans-serif;" style="font-family: "Arial", sans-serif; box-sizing: border-box;"><span fr-original-class="size" fr-original-style="font-size:10.5pt;" style="font-size: 10.5pt; box-sizing: border-box;"> </span></span></span></p></div></div></div></div></div></div></div></div></div></div></div></div></div><div fr-original-style="" style="box-sizing: border-box;">_______________________________________________</div><div fr-original-style="" style="box-sizing: border-box;">mapserver-dev mailing list</div><div fr-original-style="" style="box-sizing: border-box;"><a fr-original-style="" href="mailto:mapserver-dev%40lists.osgeo.org" rel="noopener noreferrer" style="box-sizing: border-box; color: rgb(0, 102, 147); text-decoration: underline; user-select: auto;" target="_blank" rel="noopener noreferrer">mapserver-dev@lists.osgeo.org</a></div><div fr-original-style="" style="box-sizing: border-box;"><a fr-original-style="" href="https://lists.osgeo.org/mailman/listinfo/mapserver-dev" rel="noopener noreferrer" style="box-sizing: border-box; color: rgb(0, 102, 147); text-decoration: underline; user-select: auto;" target="_blank" rel="noopener noreferrer">https://lists.osgeo.org/mailman/listinfo/mapserver-dev</a></div><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div></blockquote><div fr-original-style="" style="box-sizing: border-box;"><br fr-original-style="" style="box-sizing: border-box;"></div></div>