Skip to content

Commit

Permalink
bump version for release, update installation instructions
Browse files Browse the repository at this point in the history
  • Loading branch information
maroneze committed May 15, 2024
1 parent 2304240 commit ca7c1e0
Show file tree
Hide file tree
Showing 8 changed files with 50 additions and 60 deletions.
23 changes: 11 additions & 12 deletions README
Original file line number Diff line number Diff line change
Expand Up @@ -34,28 +34,27 @@ information.
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=


Building `headache` requires Objective Caml (version 3.06 or up,
available at http://caml.inria.fr/) and GNU Make. In addition, from
version 1.03-utf8, the build requires the Unicode library Camomile and,
from version 1.04, Dune.
Building `headache` requires Objective Caml (available at
http://caml.inria.fr/) and GNU Make. In addition, from version
1.03-utf8, the build requires the Unicode library Camomile and, from
version 1.04, Dune.

Instructions

<<
make && sudo make INSTALLDIR=/usr/local/bin install
>>
Build the executable and install it into the specified directory.
`headache` is available through OPAM (available at
http://opam.ocaml.org/), the OCaml Package Manager. This is the
preferred installation method. Be sure to install opam v1.2 or higher.
Then the following sequence of commands should install the package:
preferred installation method. Then the following sequence of commands
should install the package:
<<
opam init
opam install depext
opam depext headache
opam install headache
>>

Alternatively, you can use these commands (Dune must be installed):
<<
make && sudo make INSTALLDIR=/usr/local/bin install
>>
Build the executable and install it into the specified directory.


3 Usage
Expand Down
19 changes: 9 additions & 10 deletions doc-src/manual.tex
Original file line number Diff line number Diff line change
Expand Up @@ -73,29 +73,28 @@ \section{Overview}
% *************************************************************************
\section{Compilation and installation}

Building \headache{} requires \emph{Objective Caml} (version 3.06 or up,
available at \url{http://caml.inria.fr/}) and \emph{GNU Make}.
Building \headache{} requires \emph{Objective Caml} (available at
\url{http://caml.inria.fr/}) and \emph{GNU Make}.
In addition, from version \texttt{1.03-utf8}, the build requires the Unicode library \emph{Camomile} and, from version \texttt{1.04}, \emph{Dune}.

\paragraph{Instructions}

\begin{alltt}
make && sudo make INSTALLDIR=/usr/local/bin install
\end{alltt}
Build the executable and install it into the specified directory.

\headache{} is available through \emph{OPAM} (available at
\url{http://opam.ocaml.org/}), the \emph{OCaml Package Manager}.
This is the preferred installation method.
Be sure to install opam v1.2 or higher.
Then the following sequence of commands should install the package:
\begin{alltt}
opam init
opam install depext
opam depext headache
opam install headache
\end{alltt}

Alternatively, you can use these commands (\emph{Dune} must be installed):

\begin{alltt}
make && sudo make INSTALLDIR=/usr/local/bin install
\end{alltt}
Build the executable and install it into the specified directory.

% *************************************************************************
\section{Usage}

Expand Down
41 changes: 17 additions & 24 deletions doc/manual.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<meta name="generator" content="hevea 2.35">
<meta name="generator" content="hevea 2.36">
<style type="text/css">
.equationcontainer{position:relative;}
.equationnumber{float:right;left:auto;position:absolute;right:0}
Expand Down Expand Up @@ -81,8 +81,7 @@ <h2 id="sec1" class="section">1&#X2003;Overview</h2><!--SEC END --><p>It is a co
short header giving, for instance, some copyright informations.
&#X2018;<span style="font-family:monospace">headache</span>&#X2018; is a simple and lightweight tool for managing easily these
headers. Among its functionalities, one may mention:
</p><ul class="itemize"><li class="li-itemize">
Headers must generally be generated as <em>comments</em> in source
</p><ul class="itemize"><li class="li-itemize">Headers must generally be generated as <em>comments</em> in source
code files. &#X2018;<span style="font-family:monospace">headache</span>&#X2018; deals with different file types and generates
for each of them headers in an appropriate format.
</li><li class="li-itemize">&#X2018;<span style="font-family:monospace">headache</span>&#X2018; automatically detects existing headers and removes them.
Expand All @@ -91,32 +90,29 @@ <h2 id="sec1" class="section">1&#X2003;Overview</h2><!--SEC END --><p>It is a co
Public License</em>. See file &#X2018;<span style="font-family:monospace">LICENSE</span>&#X2018; of the distribution for
more information.</p>
<!--TOC section id="sec2" Compilation and installation-->
<h2 id="sec2" class="section">2&#X2003;Compilation and installation</h2><!--SEC END --><p>Building &#X2018;<span style="font-family:monospace">headache</span>&#X2018; requires <em>Objective Caml</em> (version 3.06 or up,
available at <span style="font-family:monospace">http://caml.inria.fr/</span>) and <em>GNU Make</em>.
<h2 id="sec2" class="section">2&#X2003;Compilation and installation</h2><!--SEC END --><p>Building &#X2018;<span style="font-family:monospace">headache</span>&#X2018; requires <em>Objective Caml</em> (available at
<span style="font-family:monospace">http://caml.inria.fr/</span>) and <em>GNU Make</em>.
In addition, from version <span style="font-family:monospace">1.03-utf8</span>, the build requires the Unicode library <em>Camomile</em> and, from version <span style="font-family:monospace">1.04</span>, <em>Dune</em>.</p>
<!--TOC paragraph id="sec3" Instructions-->
<h4 id="sec3" class="paragraph">Instructions</h4><!--SEC END --><pre>
make &amp;&amp; sudo make INSTALLDIR=/usr/local/bin install
</pre><p>
Build the executable and install it into the specified directory.</p><p>&#X2018;<span style="font-family:monospace">headache</span>&#X2018; is available through <em>OPAM</em> (available at
<h4 id="sec3" class="paragraph">Instructions</h4><!--SEC END --><p>&#X2018;<span style="font-family:monospace">headache</span>&#X2018; is available through <em>OPAM</em> (available at
<span style="font-family:monospace">http://opam.ocaml.org/</span>), the <em>OCaml Package Manager</em>.
This is the preferred installation method.
Be sure to install opam v1.2 or higher.
Then the following sequence of commands should install the package:
</p><pre>
opam init
opam install depext
opam depext headache
opam install headache
</pre>
</pre><p>Alternatively, you can use these commands (<em>Dune</em> must be installed):</p><pre>
make &amp;&amp; sudo make INSTALLDIR=/usr/local/bin install
</pre><p>
Build the executable and install it into the specified directory.</p>
<!--TOC section id="sec4" Usage-->
<h2 id="sec4" class="section">3&#X2003;Usage</h2><!--SEC END --><p>Let us illustrate the use of this tool with a small example. Assume
you have a small project mixing C and Caml code consisting in three
files &#X2018;<span style="font-family:monospace">foo.c</span>&#X2018;, &#X2018;<span style="font-family:monospace">bar.ml</span>&#X2018; and &#X2018;<span style="font-family:monospace">bar.mli</span>&#X2018;, and you want to
equip them with some header. First of all, write a <em>header
file</em>, i.e. a plain text file including the information headers
must mention. An example of such a file is given in
figure&#X2004;&#X200D;<a href="#figure%3Aheader">1</a>. In the following, we assume this file is
figure&#XA0;<a href="#figure%3Aheader">1</a>. In the following, we assume this file is
named &#X2018;<span style="font-family:monospace">myheader</span>&#X2018; and is in the same directory as source files.</p><p>Then, in order to generate headers, just run the command:
</p><pre>
headache -h myheader foo.c bar.ml bar.mli
Expand Down Expand Up @@ -159,17 +155,16 @@ <h2 id="sec4" class="section">3&#X2003;Usage</h2><!--SEC END --><p>Let us illust
<!--TOC section id="sec5" Configuration file-->
<h2 id="sec5" class="section">4&#X2003;Configuration file</h2><!--SEC END --><p>File types and format of header may be specified by a
<em>configuration file</em>. By default, the default builtin
configuration file given in figure&#X2004;&#X200D;<a href="#figure%3Aconfig">2</a> is used. You
configuration file given in figure&#XA0;<a href="#figure%3Aconfig">2</a> is used. You
can also use your own configuration file thanks to the &#X2018;<span style="font-family:monospace">-c</span>&#X2018;
option:
</p><pre>
headache -c myconfig -h myheader foo.c bar.ml bar.mli
</pre><p>In order to write your own configuration, you can follow the example
given in figure&#X2004;&#X200D;<a href="#figure%3Aconfig">2</a>. A configuration file consists in
given in figure&#XA0;<a href="#figure%3Aconfig">2</a>. A configuration file consists in
a list of <em>entries</em> separated by the character &#X2018;<span style="font-family:monospace">|</span>&#X2018;. Each
of them is made of two parts separated by an &#X2018;<span style="font-family:monospace">-&gt;</span>&#X2018;:
</p><ul class="itemize"><li class="li-itemize">
The first one is a <em>regular expression</em>. Regular
</p><ul class="itemize"><li class="li-itemize">The first one is a <em>regular expression</em>. Regular
expression are enclosed within double quotes and have the same
syntax as in Gnu Emacs. &#X2018;<span style="font-family:monospace">headache</span>&#X2018; determines file types according to
file basenames; thus, each file is dealt with using the first line
Expand All @@ -181,8 +176,7 @@ <h2 id="sec5" class="section">4&#X2003;Configuration file</h2><!--SEC END --><p>
&#X2018;<span style="font-family:monospace">open</span>&#X2018; is &#X2018;<span style="font-family:monospace">(*</span>&#X2018;.
</li></ul><p>
&#X2018;<span style="font-family:monospace">headache</span>&#X2018; currently supports three <em>models</em>:
</p><ul class="itemize"><li class="li-itemize">
&#X2018;<span style="font-family:monospace">frame</span>&#X2018;. With this model, headers are generated in a
</p><ul class="itemize"><li class="li-itemize">&#X2018;<span style="font-family:monospace">frame</span>&#X2018;. With this model, headers are generated in a
frame. This model requires three arguments: &#X2018;<span style="font-family:monospace">open</span>&#X2018; and
&#X2018;<span style="font-family:monospace">close</span>&#X2018; (the opening and closing sequences for comments) and
&#X2018;<span style="font-family:monospace">line</span>&#X2018; (the character used to make the horizontal lines of the
Expand Down Expand Up @@ -224,8 +218,7 @@ <h2 id="sec5" class="section">4&#X2003;Configuration file</h2><!--SEC END --><p>
specify when the initial lines of the processed file have to be skipped.
As previously, these <em>entries</em> are separated by the character &#X2018;<span style="font-family:monospace">|</span>&#X2018;
and each of them is made of two parts separated by an &#X2018;<span style="font-family:monospace">-&gt;</span>&#X2018;:
</p><ul class="itemize"><li class="li-itemize">
Again, the first part is a <em>regular expression</em> used by &#X2018;<span style="font-family:monospace">headache</span>&#X2018;
</p><ul class="itemize"><li class="li-itemize">Again, the first part is a <em>regular expression</em> used by &#X2018;<span style="font-family:monospace">headache</span>&#X2018;
to determine the file type. But here, it is according to
its full filename (including the pathname).
</li><li class="li-itemize">The second part specifies when the initial lines must be skipped.
Expand All @@ -244,7 +237,7 @@ <h2 id="sec5" class="section">4&#X2003;Configuration file</h2><!--SEC END --><p>
<div class="caption"><table style="border-spacing:6px;border-collapse:separate;" class="cellpading0"><tr><td style="vertical-align:top;text-align:left;" >Figure 3: Example of a configuration file for skipping the shebang line of shell scripts</td></tr>
</table></div>
<a id="figure:example"></a>
<div class="center"><hr class="floatrule"></div></blockquote><p>Figure&#X2004;&#X200D;<a href="#figure%3Aexample">3</a> shows an example of configuration file
<div class="center"><hr class="floatrule"></div></blockquote><p>Figure&#XA0;<a href="#figure%3Aexample">3</a> shows an example of configuration file
that can used to skip the shebang line of shell scripts:
when the first line of &#X2018;<span style="font-family:monospace">.sh</span>&#X2018; files starts with &#X2018;<span style="font-family:monospace">#!</span>&#X2018;,
&#X2018;<span style="font-family:monospace">headache</span>&#X2018; does not modify that line and considers that the header must
Expand All @@ -258,7 +251,7 @@ <h2 id="sec5" class="section">4&#X2003;Configuration file</h2><!--SEC END --><p>
as well as lines containing Prolog directives, such as Unicode usage.</td></tr>
</table></div>
<a id="figure:python-example"></a>
<div class="center"><hr class="floatrule"></div></blockquote><p>Figure&#X2004;&#X200D;<a href="#figure%3Apython-example">4</a> shows an example of configuration file
<div class="center"><hr class="floatrule"></div></blockquote><p>Figure&#XA0;<a href="#figure%3Apython-example">4</a> shows an example of configuration file
that can used for &#X2018;<span style="font-family:monospace">SWI prolog</span>&#X2018; files:
for a &#X2018;<span style="font-family:monospace">.pl</span>&#X2018; file starting with the following three first lines,
&#X2018;<span style="font-family:monospace">headache</span>&#X2018; considers that the header must start just after the first two lines:
Expand Down
Binary file modified doc/manual.pdf
Binary file not shown.
Binary file modified doc/manual.ps.gz
Binary file not shown.
23 changes: 11 additions & 12 deletions doc/manual.txt
Original file line number Diff line number Diff line change
Expand Up @@ -34,28 +34,27 @@ information.
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=


Building `headache` requires Objective Caml (version 3.06 or up,
available at http://caml.inria.fr/) and GNU Make. In addition, from
version 1.03-utf8, the build requires the Unicode library Camomile and,
from version 1.04, Dune.
Building `headache` requires Objective Caml (available at
http://caml.inria.fr/) and GNU Make. In addition, from version
1.03-utf8, the build requires the Unicode library Camomile and, from
version 1.04, Dune.

Instructions

<<
make && sudo make INSTALLDIR=/usr/local/bin install
>>
Build the executable and install it into the specified directory.
`headache` is available through OPAM (available at
http://opam.ocaml.org/), the OCaml Package Manager. This is the
preferred installation method. Be sure to install opam v1.2 or higher.
Then the following sequence of commands should install the package:
preferred installation method. Then the following sequence of commands
should install the package:
<<
opam init
opam install depext
opam depext headache
opam install headache
>>

Alternatively, you can use these commands (Dune must be installed):
<<
make && sudo make INSTALLDIR=/usr/local/bin install
>>
Build the executable and install it into the specified directory.


3 Usage
Expand Down
2 changes: 1 addition & 1 deletion headache.opam
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
opam-version: "2.0"
name: "headache"
version: "1.07+dev"
version: "1.08"

license: "LGPL-2.0-only"

Expand Down
2 changes: 1 addition & 1 deletion info.ml
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@
(**************************************************************************)

let name = "headache"
let version = "1.07+dev"
let version = "1.08"

0 comments on commit ca7c1e0

Please sign in to comment.