% variables, macros, and everything can be useul,
%
\newcommand{\cmd}[1]{\texttt{#1}} % shell command
-\newcommand{\func}[1]{\texttt{#1}} % library function (or system call)
+\newcommand{\code}[1]{\texttt{#1}} % for simple code
+\newcommand{\func}[1]{%
+\index{#1@{\tt {#1}}}\texttt{#1}%
+} % library function (or system call)
\newcommand{\macro}[1]{\texttt{#1}} % macro constant
\newcommand{\var}[1]{\texttt{#1}} % variable
\newcommand{\file}[1]{\texttt{#1}} % file name