%% macro.tex
%%
-%% Copyright (C) 2000-2004 Simone Piccardi. Permission is granted to
+%% Copyright (C) 2000-2006 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 "Un preambolo",
%% License".
%%
%
+%
+% Defining some special character for use inside typewriter
+% text without using the verbatim environment
+%
+\def\tild{\char'176}
+\def\bslash{\char'134}
+\def\circonf{\char'136}
+\def\invap{\char'140}
+%
% Defining some commands to manipulate counter to avoid ude of
% \label and \ref commands (and related problem to remeber the
% used labels) to refer nearest objects
%
\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}%
+\index{funzione!{#1}@{{\tt {#1}}}}\texttt{#1}%
+%\index{#1@{{\tt {#1}} (funzione)}}\texttt{#1}%
}
+
\newcommand{\funcd}[1]{%
-\index{#1@{{\tt {#1}} (funzione)}!definizione di}\texttt{#1}%
+\index{funzione!{#1}@{{\tt {#1}}}!definizione di}\texttt{#1}%
+%\index{#1@{{\tt {#1}} (funzione)}!definizione di}\texttt{#1}%
}
+
\newcommand{\macro}[1]{%
-\index{#1@{{\tt {#1}} (macro)}}\texttt{#1}%
+\index{macro!{#1}@{{\tt {#1}}}}\texttt{#1}%
+%\index{#1@{{\tt {#1}} (macro)}}\texttt{#1}%
}
+
\newcommand{\errcode}[1]{%
-\index{#1@{{\tt {#1}} (errore)}}\texttt{#1}%
+\index{errore!{#1}@{{\tt {#1}}}}\texttt{#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}%
+\index{costante!{#1}@{{\tt {#1}}}}\texttt{#1}%
+%\index{#1@{{\tt {#1}} (costante)}}\texttt{#1}%
} % constant name
+
\newcommand{\direct}[1]{%
-\index{#1@{{\tt {#1}} (direttiva)}}\texttt{#1}%
+\index{direttiva!{#1}@{{\tt {#1}}}}\texttt{#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}%
+\index{tipo!{#1}@{{\tt {#1}}}}\texttt{#1}%
+%\index{#1@{{\tt {#1}} (tipo)}}\texttt{#1}%
} % system type
\newcommand{\struct}[1]{%
-\index{#1@{{\tt {#1}} (struttura dati)}}\texttt{#1}%
+\index{struttura dati!{#1}@{{\tt {#1}}}}\texttt{#1}%
+%\index{#1@{{\tt {#1}} (struttura dati)}}\texttt{#1}%
} % struttura dati
\newcommand{\structd}[1]{%
-\index{#1@{{\tt {#1}} (struttura dati)}!definizione di}\texttt{#1}%
+\index{struttura dati!{#1}@{{\tt {#1}}}!definizione di}\texttt{#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.)
+\newcommand{\acr}[1]{\textsl{#1}} % acrostic (for pid, suid, ecc.)
+
+\newcommand{\itindex}[1]{%
+\index{#1@{\textit{#1}}}%
+}
+\newcommand{\itindbeg}[1]{%
+\index{#1@{\textit{#1}}|(}%
+}
+\newcommand{\itindend}[1]{%
+\index{#1@{\textit{#1}}|)}%
+}
+\newcommand{\itindsub}[2]{%
+\index{#1@{\textit{#1}}!\textit{#2}}%
+}
% Aggiunte di Mirko per la gestione delle tabelle complicate come immagini
% nella traslazione in HTML