<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="generator" content="AsciiDoc 8.6.10">
<title>Enscript</title>
<link rel="stylesheet" href="./asciidoc.css" type="text/css">
<link rel="stylesheet" href="./pygments.css" type="text/css">


<script type="text/javascript" src="./asciidoc.js"></script>
<script type="text/javascript">
/*<![CDATA[*/
asciidoc.install();
/*]]>*/
</script>
<link rel="stylesheet" href="./mlton.css" type="text/css">
</head>
<body class="article">
<div id="banner">
<div id="banner-home">
<a href="./Home">MLton 20201002</a>
</div>
</div>
<div id="header">
<h1>Enscript</h1>
</div>
<div id="content">
<div id="preamble">
<div class="sectionbody">
<div class="paragraph"><p><a href="http://www.gnu.org/s/enscript/">GNU Enscript</a> converts ASCII files to
PostScript, HTML, and other output languages, applying language
sensitive highlighting (similar to <a href="Emacs">Emacs</a>'s font lock mode).  Here
are a few <em>states</em> files for highlighting <a href="StandardML"> Standard ML</a>.</p></div>
<div class="ulist"><ul>
<li>
<p>
<a href="https://github.com/MLton/mlton/blob/master/ide/enscript/sml_simple.st"><span class="monospaced">sml_simple.st</span></a>&#8201;&#8212;&#8201;Provides highlighting of keywords, string and character constants, and (nested) comments.
</p>
</li>
</ul></div>
<div class="ulist"><ul>
<li>
<p>
<a href="https://github.com/MLton/mlton/blob/master/ide/enscript/sml_verbose.st"><span class="monospaced">sml_verbose.st</span></a>&#8201;&#8212;&#8201;Supersedes
the above, adding highlighting of numeric constants.  Due to the
limited parsing available, numeric record labels are highlighted as
numeric constants, in all contexts.  Likewise, a binding precedence
separated from <span class="monospaced">infix</span> or <span class="monospaced">infixr</span> by a newline is highlighted as a
numeric constant and a numeric record label selector separated from
<span class="monospaced">#</span> by a newline is highlighted as a numeric constant.
</p>
</li>
</ul></div>
<div class="ulist"><ul>
<li>
<p>
<a href="https://github.com/MLton/mlton/blob/master/ide/enscript/sml_fancy.st"><span class="monospaced">sml_fancy.st</span></a>&#8201;&#8212;&#8201;Supersedes the
above, adding highlighting of type and constructor bindings,
highlighting of explicit binding of type variables at <span class="monospaced">val</span> and <span class="monospaced">fun</span>
declarations, and separate highlighting of core and modules level
keywords.  Due to the limited parsing available, it is assumed that
the input is a syntactically correct, top-level declaration.
</p>
</li>
</ul></div>
<div class="ulist"><ul>
<li>
<p>
<a href="https://github.com/MLton/mlton/blob/master/ide/enscript/sml_gaudy.st"><span class="monospaced">sml_gaudy.st</span></a>&#8201;&#8212;&#8201;Supersedes the
above, adding highlighting of type annotations, in both expressions
and signatures.  Due to the limited parsing available, it is assumed
that the input is a syntactically correct, top-level declaration.
</p>
</li>
</ul></div>
</div>
</div>
<div class="sect1">
<h2 id="_install_and_use">Install and use</h2>
<div class="sectionbody">
<div class="ulist"><ul>
<li>
<p>
Version 1.6.3 of <a href="http://people.ssh.com/mtr/genscript">GNU Enscript</a>
</p>
<div class="ulist"><ul>
<li>
<p>
Copy all files to <span class="monospaced">/usr/share/enscript/hl/</span> or <span class="monospaced">.enscript/</span> in your home directory.
</p>
</li>
<li>
<p>
Invoke <span class="monospaced">enscript</span> with <span class="monospaced">--highlight=sml_simple</span> (or <span class="monospaced">--highlight=sml_verbose</span> or <span class="monospaced">--highlight=sml_fancy</span> or <span class="monospaced">--highlight=sml_gaudy</span>).
</p>
</li>
</ul></div>
</li>
<li>
<p>
Version 1.6.1 of <a href="http://people.ssh.com/mtr/genscript">GNU Enscript</a>
</p>
<div class="ulist"><ul>
<li>
<p>
Append <a href="https://github.com/MLton/mlton/blob/master/ide/enscript/sml_all.st"><span class="monospaced">sml_all.st</span></a> to <span class="monospaced">/usr/share/enscript/enscript.st</span>
</p>
</li>
<li>
<p>
Invoke <span class="monospaced">enscript</span> with <span class="monospaced">--pretty-print=sml_simple</span> (or <span class="monospaced">--pretty-print=sml_verbose</span> or <span class="monospaced">--pretty-print=sml_fancy</span> or <span class="monospaced">--pretty-print=sml_gaudy</span>).
</p>
</li>
</ul></div>
</li>
</ul></div>
</div>
</div>
<div class="sect1">
<h2 id="_feedback">Feedback</h2>
<div class="sectionbody">
<div class="paragraph"><p>Comments and suggestions should be directed to <a href="MatthewFluet">MatthewFluet</a>.</p></div>
</div>
</div>
</div>
<div id="footnotes"><hr></div>
<div id="footer">
<div id="footer-text">
</div>
<div id="footer-badges">
</div>
</div>
</body>
</html>
