summaryrefslogtreecommitdiff
path: root/support/tab4tex/docs
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /support/tab4tex/docs
Initial commit
Diffstat (limited to 'support/tab4tex/docs')
-rw-r--r--support/tab4tex/docs/tab4tex.pdfbin0 -> 349276 bytes
-rw-r--r--support/tab4tex/docs/tab4tex.tex379
2 files changed, 379 insertions, 0 deletions
diff --git a/support/tab4tex/docs/tab4tex.pdf b/support/tab4tex/docs/tab4tex.pdf
new file mode 100644
index 0000000000..e0e92a6174
--- /dev/null
+++ b/support/tab4tex/docs/tab4tex.pdf
Binary files differ
diff --git a/support/tab4tex/docs/tab4tex.tex b/support/tab4tex/docs/tab4tex.tex
new file mode 100644
index 0000000000..82bb983545
--- /dev/null
+++ b/support/tab4tex/docs/tab4tex.tex
@@ -0,0 +1,379 @@
+% Tab4tex documentation
+% Version 0.1
+% March 2007
+% Guido Milanese - guido.milanese@unicatt.it
+
+\documentclass[a4paper,english]{article}
+\usepackage[T1]{fontenc}
+\usepackage[utf8x]{inputenc}
+\IfFileExists{url.sty}{\usepackage{url}}
+ {\newcommand{\url}{\texttt}}
+\usepackage{babel}
+
+\begin{document}
+
+\title{tab4tex\\
+Version 0.1}
+
+
+\author{Guido Milanese\\
+\url{guido.milanese@unicatt.it}}
+
+
+\thispagestyle{empty}
+\date{March 2007}
+\maketitle
+\begin{abstract}
+\noindent{}This utility helps to prepare tables to be used in
+\LaTeX{}.
+The programs are written in Snobol4; the only requirement is to install the
+interpreter. For Windows, a standalone file compiled with Spitbol is also
+provided, and the programs can be run without the need of an external
+interpreter.
+\end{abstract}
+
+\tableofcontents
+
+\section{The program}
+
+The program \textsf{tab4tex} reads from the standard input a text file and
+outputs a table formatted according to the requirements of the environment
+\textsf{tabular}.
+It is possible to output a table that can be pasted or included in a complete
+\LaTeX{} file or to output a complete standalone \LaTeX{} file.
+
+Some basic formatting aids are provided. Refined features can be added later in
+the \LaTeX{} code.
+
+The program must be run as follows:
+
+\begin{center}
+ \texttt{snobol4 -b tab4tex.sno [options] <inputfile >outputfile}
+\end{center}
+
+\noindent{}If compiled or from a script:
+
+\begin{center}
+ \texttt{tab4tex [options] <inputfile >outputfile}
+\end{center}
+
+Options are:
+
+\begin{description}
+ \item[a] align (center,left,right)
+ \item[r] number of rows
+ \item[b] vertical bar (y/n)
+ \item[c] complete \LaTeX{} document (y/n)
+ \item[h] hline (y/n)
+\end{description}
+
+First and second argument are compulsory, 3rd, 4th and 5th optional (simple y/n
+choice). For example use \texttt{c=y} if you want a complete \LaTeX{} document,
+\textsf{c=n} if you want just a table to include in your document.
+
+
+See the next section for some examples.
+
+\section{Examples and formatting aids}
+\subsection{A simple example}
+This is file \textsf{test1} provided in the package:
+
+\begin{center}
+ \begin{verbatim}
+ <M5>*Animals and friends*
+ <E> <M2>!Cats! <M2>!Dogs!
+ <E> ^John^ ^Martha^ ^John^ ^Martha^
+ *Black* 2 5 5 0
+ *White* 4 1 0 5
+ *Red* 2 1 <M2>Not known
+ \end{verbatim}
+\end{center}
+
+
+These lines are very simple:
+
+\begin{verbatim}
+*Black* 2 5 5 0
+*White* 4 1 0 5
+\end{verbatim}
+
+Each line is a row and cells are separated by tabs. Please notice:
+\emph{tabs}, not empty spaces.
+
+The asterisks are used to produce bold text in the \LaTeX{} output. The program
+provides this simple encoding:
+
+\begin{quote}
+ \begin{tabular}{ll}
+ *cell* & produces \textbf{cell}\\
+ !cell! & produces \emph{cell}\\
+ \^{}cell\^{} & produces \textsc{cell}\\
+ \end{tabular}
+\end{quote}
+
+The third line uses \texttt{<E>}, meaning \emph{empty cell}:
+\begin{center}
+ \begin{verbatim}
+ <E> ^John^ ^Martha^ ^John^ ^Martha^
+ \end{verbatim}
+\end{center}
+
+Empty cells must be separated from the following ones as normal cells are, i.e.
+using a tab. Please notice: \emph{tabs}, not empty spaces. In this line, observe
+the use of \texttt{\^{}} to obtain small caps in the \LaTeX{} output.
+
+The second and the last row are using multicolumns, i.e. the text is expanded in
+two ore more cells:
+
+\begin{center}
+ \begin{verbatim}
+ <E> <M2>!Cats! <M2>!Dogs!
+ *Red* 2 1 <M2>Not known
+ \end{verbatim}
+\end{center}
+
+The program uses a simple encoding to obtain a multicols output: precede the
+string with \texttt{<M[number]>}, as in the above example. Multicols cells must
+be separated from the following ones as normal cells are, i.e. using a tab.
+Please notice: \emph{tabs}, not empty spaces. Observe the use of \texttt{!} to
+obtain italics in the \LaTeX{} output.
+
+This is the final output:
+
+\footnotesize%
+\begin{verbatim}
+\begin{tabular}{|c|c|c|c|c|}
+ \hline
+ \multicolumn{5}{|c|}{\textbf{Animals and friends}} \\
+ \hline
+ & \multicolumn{2}{|c|}{\emph{Cats}} & \multicolumn{2}{|c|}{\emph{Dogs}} \\
+ \hline
+ & \textsc{John} & \textsc{Martha} & \textsc{John} & \textsc{Martha} \\
+ \hline
+ \textbf{Black} & 2 & 5 & 5 & 0 \\
+ \hline
+ \textbf{White} & 4 & 1 & 0 & 5 \\
+ \hline
+ \textbf{Red} & 2 & 1 & \multicolumn{2}{|c|}{Not known} \\
+ \hline
+\end{tabular}
+\end{verbatim}
+\normalsize%
+
+This output was obtained with the following command line:
+
+\begin{center}
+ \begin{verbatim}
+ snobol4 -b tab4tex.sno r=5 a=c b=y h=y c=n <test1.txt >test1.tex
+ \end{verbatim}
+\end{center}
+
+The options used are:
+
+\begin{itemize}
+ \item \texttt{r=5} The number of rows.
+ \item \texttt{a=c} Cells are centered
+ \item \texttt{b=y} Vertical bar
+ \item \texttt{h=y} Horizontal bar
+ \item \texttt{c=n} Do not output a standalone \LaTeX{} file
+\end{itemize}
+
+Please notice that only the first two options must be entered. If you answer
+``no'' to any other option, you can simply omit it.
+
+\subsection{A more complex example}
+
+This example is a bit more complex%
+\footnote{The table is quoted from
+\url{http://www.maths.tcd.ie/~dwilkins/latexprimer/tables.html}. To see the real
+file provided in the package set tabs at 12 or similar values and use a fixed
+font.}. This is the input file:
+
+
+\begin{verbatim}
+<E> <M2>Singular <M2>Plural
+<E> English *Gaeilge* *English* *Gaeilge*
+1st Person at me *agam* at us *againn*
+2nd Person at you *agat* at you *agaibh*
+3rd Person at him *aige* at them *acu*
+<E> at her *aici* <E> <E>
+\end{verbatim}
+
+The file combines empty cells and formatting instructions. This is the output:
+
+\footnotesize%
+\begin{verbatim}
+\begin{tabular}{|l|l|l|l|l|}
+ \hline
+ & \multicolumn{2}{|l|}{Singular} & \multicolumn{2}{|l|}{Plural} \\
+ \hline
+ & English & \textbf{Gaeilge} & \textbf{English} & \textbf{Gaeilge} \\
+ \hline
+ 1st Person & at me & \textbf{agam} & at us & \textbf{againn} \\
+ \hline
+ 2nd Person & at you & \textbf{agat} & at you & \textbf{agaibh} \\
+ \hline
+ 3rd Person & at him & \textbf{aige} & at them & \textbf{acu} \\
+ \hline
+ & at her & \textbf{aici} & & \\
+ \hline
+\end{tabular}
+\end{verbatim}
+\normalsize%
+
+The output was obtained with the following command line:
+\begin{center}
+ \begin{verbatim}
+ snobol4 -b tab4tex.sno r=5 a=l b=y h=y c=n <test2.txt >test2.tex
+ \end{verbatim}
+\end{center}
+
+Notice that this time we have used \texttt{a=l} and not \texttt{a=c}, so cells
+will not be centered but left aligned.
+
+
+\section{Installation}
+
+\subsection{GNU/Linux and other {*}nix systems}
+
+\begin{enumerate}
+ \item Install \textsf{snobol4} from \url{http://www.snobol4.org}. This is Philip Budne's
+ CSNOBOL implementation. You need a \texttt{c} compiler to compile the
+ interpreter; it's normally a very quick and easy process.
+\item Make sure \textsf{snobol4} is in your PATH or make a symbolic link.
+\end{enumerate}
+
+You can now run the program as follows:
+\begin{center}
+ \begin{verbatim}
+ snobol4 -b tab4tex.sno [OPTIONS] <input >output
+ \end{verbatim}
+\end{center}
+
+If you prefer to avoid some typing, write the following line as first line of
+the program:
+
+\begin{center}
+ \begin{verbatim}
+ #!/usr/local/bin/snobol4 -b
+ \end{verbatim}
+\end{center}
+
+Adapt accordingly to your installation, e.g.
+
+\begin{center}
+ \begin{verbatim}
+ #!/usr/bin/snobol4 -b
+ \end{verbatim}
+\end{center}
+
+Make the file \textsf{tab4tex.sno} executable, e.g. \texttt{chmod +x tab4tex.sno}
+
+Run the program as follows:
+ \texttt{./tab4tex.sno [options] <input >output}\\
+If the current directory is in your PATH, you do not need \texttt{./}
+before the program name.
+
+\subsection{Windows}
+
+The package offers an executable file compiled with Spitbol (see
+\url{http://www.snobol4.com}), a powerful commercial Windows version of Snobol.
+Make a directory and copy all the file provided in the \textsf{bin/windows}
+directory. There must be one \texttt{exe} file and two \texttt{test{*}} files.
+
+Run the programs as follows:
+
+\begin{center}
+ \texttt{tab4tex [options] <input >output}\\
+\end{center}
+
+
+\subsection{Windows from source}
+
+Basically, follow the same directions given about GNU/Linux, but make sure to
+use the \texttt{bat} files and to install the Windows version of the interpreter.
+Before using the sources, that are in Unix format, use a script to translate
+from Unix to Dos-Windows format. If you do not have such a script, open the
+files with a text editor and save the sources in Windows-Dos format. This can be
+done reading and saving each file with the DOS \textsf{edit} program, with
+\textsf{vim} or any other editor able to deal with different file formats.
+\subsection{Cygwin}
+
+I suggest to follow the same directions given for GNU/Linux, but the
+EXE files provided for native Windows can be used anyway if preferred.
+
+\subsection{Macintosh}
+Not yet tested (I do not have a Mac right now). It's in the TODO list.
+
+\section{Test files}
+Please test the program on \textsf{test1.txt} and \textsf{test2.txt}.
+
+\section{Reference}
+
+\begin{tabular}{ll}
+\multicolumn{2}{l}{OPTIONS} \\
+a & align (center,left,right) \\
+b & vertical bar (y/n) \\
+c & complete LaTeX document (y/n) \\
+h & hline (y/n) \\
+r & rows \\
+\end{tabular}
+
+\noindent{}\begin{tabular}{lll}
+\multicolumn{3}{l}{FORMATTING CODES} \\
+*cell* & produces \textbf{cell} & bold \\
+!cell! & produces \emph{cell} & italics \\
+\^{}cell\^{} & produces \textsc{cell} & small caps \\
+\end{tabular}
+
+\section{Bugs and TODO}
+
+List of features that I would like to add:
+
+\begin{enumerate}
+ \item Escape sequences for \textsf{<E>} and formatting codes
+ (\textsf{!*\^{}}).
+\item Better support for multicol
+\item Use of tabularx and longtab
+\item Some more formatting aids.
+\end{enumerate}
+
+\section{Acknowledgements}
+My warmest thanks to \textsc{Phil Budne} (\url{phil@ultimate.com}) for making
+his excellent CSNOBOL available. Many thanks to the community of Snobol users,
+particularly to the members of the Yahoo Snobol group
+\url{http://tech.groups.yahoo.com/group/snobol}, and,
+among them, to \textsc{Gordon Peterson} (\url{http://personal.terabites.com/}),
+\textsc{Michael Radow} (\url{mikeradow@yahoo.com}), \textsc{Gregory L. White}
+(\url{glwhite@netconnect.com.au}) and to \textsc{Rafal M. Sulejman}
+(\url{rafal@engelsinfo.de}) whose \textsf{vim} syntax files are a daily
+blessing.
+
+
+\section{Author, copyright, license, disclaimer}
+
+This program is Copyright \copyright{} 2007\\
+Guido Milanese <\url{guido.milanese@unicatt.it}>\\
+under the terms of the GNU General Public License.\\
+
+\footnotesize{}
+ \begin{verbatim}
+This program is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free Software
+Foundation; either version 2 of the License, or (at your option) any later
+version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+If you do not have a copy of the GNU General Public License write to the Free
+Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+If the author of this software was too lazy to include the full GPL text along
+with the code, you can find it at: http://www.gnu.org/copyleft/gpl.html.
+\end{verbatim}
+\normalsize{}
+
+\end{document}
+