Altre indicizzazioni, e inizio di readdir
[gapil.git] / macro.tex
index 7375bebe6d59ec58b5eff3a7a2342b46a1de9c4c..da3c35a5926442fae15326abeefce368ff716212 100644 (file)
--- a/macro.tex
+++ b/macro.tex
@@ -1,34 +1,28 @@
+%% macro.tex
+%%
+%% Copyright (C) 2000-2002 Simone Piccardi.  Permission is granted to
+%% copy, distribute and/or modify this document under the terms of the GNU Free
+%% Documentation License, Version 1.1 or any later version published by the
+%% Free Software Foundation; with the Invariant Sections being "Prefazione",
+%% with no Front-Cover Texts, and with no Back-Cover Texts.  A copy of the
+%% license is included in the section entitled "GNU Free Documentation
+%% License".
+%%
 %
 % Defining some commands to manipulate counter to avoid ude of 
 % \label and \ref commands (and related problem to remeber the 
-% used labels 
+% used labels) to refer nearest objects
 %
 %
 \newcounter{usercount}       % define a new counter for internal use
 %
 % Figure commands
 %
-\newcommand{\curfig}{fig.~\thefigure}
-\newcommand{\nfig}{%
-\setcounter{usercount}{\value{figure}}%
-\addtocounter{usercount}{1}%
-fig.~\thechapter.\theusercount}
-\newcommand{\pfig}{%
-\setcounter{usercount}{\value{figure}}%
-\addtocounter{usercount}{-1}%
-fig.~\thechapter.\theusercount}
+\newcommand{\figref}[1]{fig.~\ref{#1}}
 %
 % Tables commands
 %
-\newcommand{\curtab}{tab.~\thetable}
-\newcommand{\ntab}{%
-\setcounter{usercount}{\value{table}}%
-\addtocounter{usercount}{1}%
-tab.~\thechapter.\theusercount}
-\newcommand{\ptab}{%
-\setcounter{usercount}{\value{table}}%
-\addtocounter{usercount}{-1}%
-tab.~\thechapter.\theusercount}
+\newcommand{\tabref}[1]{tab.~\ref{#1}}
 %
 % equations commands
 %
@@ -41,7 +35,6 @@ tab.~\thechapter.\theusercount}
 \setcounter{usercount}{\value{equation}}%
 \addtocounter{usercount}{-1}%
 (\thechapter.\theusercount)}
-
 %
 % Macro to put picture (in format PICT) inside a figure
 %
@@ -52,4 +45,110 @@ tab.~\thechapter.\theusercount}
     \end{minipage}
 }
 %
+% Command for section and chapters
+%
+\newcommand{\capref}[1]{cap.~\ref{#1}}
+\newcommand{\secref}[1]{sez.~\ref{#1}}
+%
+% Macro to create a special environment for function prototypes
+% boxed description
+%
+\newenvironment{prototype}[2]
+{% defining what is done by \begin
+  \nobreak
+  \center
+  \begin{boxedminipage}[c]{14cm}
+  \footnotesize
+    \begin{description*}{}{} 
+    \item \texttt{\#include <#1>}
+    \item \texttt{#2} \par
+%   \begin{lstlisting}{}
+% #1
+% #2
+%   \end{lstlisting}
+}
+{% defining what is done by \end
+%  \end{list} 
+%  \par 
+\end{description*}
+\end{boxedminipage}
+\vspace{6pt}
+\par
+\normalsize 
+}
+\newenvironment{errlist}{\begin{basedescript}{\desclabelwidth{1.5cm}}}
+{\end{basedescript}}
+%
+% Slighty different envirnoment to be used for multi-header, 
+% multi-functions boxed description
 %
+\newcommand{\headdecl}[1]{\item\texttt{\#include <#1>}}
+\newcommand{\funcdecl}[1]{\item\texttt{#1}\par}
+\newcommand{\bodydesc}[1]{\par \end{description*} #1
+ \begin{description*}{}{} \baselineskip=0pt
+ \item \vspace{-4pt}
+} 
+% 
+\newenvironment{functions}
+{% defining what is done by \begin
+  \nobreak
+  \center
+    \begin{boxedminipage}[c]{14cm}
+      \footnotesize
+    \begin{description*}{}{} 
+}
+{% defining what is done by \end
+      \end{description*}
+    \end{boxedminipage}
+    \vspace{6pt}
+     \par
+    \normalsize 
+%\break
+}
+%
+% Wrapper for shell command, functions, filenames, links,
+% variables, macros,  and everything can be useul, 
+%
+\newcommand{\cmd}[1]{\texttt{#1}}     % shell command
+\newcommand{\code}[1]{\texttt{#1}}    % for simple code
+\newcommand{\func}[1]{%
+\index{#1@{{\tt {#1}} (funzione)}}\texttt{#1}%
+}
+\newcommand{\funcd}[1]{%
+\index{#1@{{\tt {#1}} (funzione)}!definizione di}\texttt{#1}%
+}
+\newcommand{\macro}[1]{%
+\index{#1@{{\tt {#1}} (macro)}}\texttt{#1}%
+}
+\newcommand{\errcode}[1]{%
+\index{#1@{{\tt {#1}} (errore)}}\texttt{#1}%
+}
+\newcommand{\errval}[1]{\texttt{#1}}     % value 
+\newcommand{\var}[1]{\texttt{#1}}     % variable 
+\newcommand{\val}[1]{\texttt{#1}}     % value 
+\newcommand{\const}[1]{%
+\index{#1@{{\tt {#1}} (costante)}}\texttt{#1}%
+}                                     % constant name
+\newcommand{\direct}[1]{%
+\index{#1@{{\tt {#1}} (direttiva)}}\texttt{#1}%
+}                                     % constant name
+\newcommand{\file}[1]{\texttt{#1}}    % file name
+\newcommand{\link}[1]{\texttt{#1}}    % html link
+\newcommand{\ctyp}[1]{\texttt{#1}}    % C standard type
+\newcommand{\type}[1]{%
+\index{#1@{{\tt {#1}} (tipo)}}\texttt{#1}%
+}                                     % system type
+\newcommand{\struct}[1]{%
+\index{#1@{{\tt {#1}} (struttura dati)}}\texttt{#1}%
+}                                     % struttura dati
+\newcommand{\structd}[1]{%
+\index{#1@{{\tt {#1}} (struttura dati)}!definizione di}\texttt{#1}%
+}                                     % struttura dati
+\newcommand{\param}[1]{\texttt{#1}}   % function parameter
+\newcommand{\acr}[1]{\textsl{#1}}     % acrostic (for pid, suid, etc.)
+
+
+%%% Local Variables: 
+%%% mode: latex
+%%% TeX-master: "gapil"
+%%% End: