\newcommand{\cmd}[1]{\texttt{#1}} % shell command
\newcommand{\code}[1]{\texttt{#1}} % for simple code
\newcommand{\func}[1]{%
-\index{\texttt{#1}}\texttt{#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