]> git.decadent.org.uk Git - ion3.git/blob - doc/macros.tex
[svn-upgrade] Integrating new upstream version, ion3 (20070506)
[ion3.git] / doc / macros.tex
1 \usepackage{babel}
2 \usepackage[latin1]{inputenc}
3 \usepackage[dvipdfm]{hyperref}
4 \usepackage{ae}
5 \usepackage{url}
6 \usepackage{html}
7 %\usepackage{graphicx}
8 %\usepackage{color}
9 \usepackage{makeidx}
10 \usepackage{tabularx}
11 \usepackage{textcomp}
12 \usepackage[nottoc]{tocbibind}
13 \usepackage{enumerate} % GNU FDL needs this
14 \usepackage[a4paper]{geometry}
15 \usepackage{calc}
16
17 % URL settings
18 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
19
20 \urlstyle{tt}
21
22 % listings package
23 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
24
25 %begin{latexonly}
26 \usepackage{listings}
27
28 \lstset{
29   extendedchars=true,
30   breaklines=true,
31   basicstyle=\tt,
32   alsoletter={",},
33   alsoother={\_},
34 }
35 %end{latexonly}
36
37 % Some markup
38 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
39
40 \newcommand{\note}[1]{\color{red}**#1**}
41 \newcommand{\file}[1]{\emph{#1}}
42 \newcommand{\type}[1]{#1}
43 \newcommand{\spec}[1]{#1}
44 \newcommand{\indextype}[1]{\index{#1@\type{#1}}}
45
46 %begin{latexonly}
47 \newcommand{\key}[1]{\mbox{\textbf{#1}}}
48 \newcommand{\code}[1]{\lstinline!#1!}
49 \newcommand{\codestr}[1]{`\texttt{#1}'}
50 \newcommand{\var}[1]{\lstinline!#1!}
51 \newcommand{\command}[1]{\lstinline!#1!}
52
53 \newcommand{\hyperlabel}[1]{\hypertarget{#1}{}\label{#1}}
54 \newcommand{\fnrefx}[2]{\hyperlink{fn:#1.#2}{\code{#2}}}
55 \newcommand{\fnref}[1]{\hyperlink{fn:#1}{\code{#1}}}
56 \newcommand{\myhref}[2]{\hyperlink{#1}{#2}}
57
58 %end{latexonly}
59 \begin{htmlonly}
60     
61 \newcommand{\key}[1]{\textbf{#1}}
62 \newcommand{\code}[1]{\texttt{#1}}
63 \newcommand{\codestr}[1]{`\texttt{#1}'}
64 \newcommand{\var}[1]{\texttt{#1}}
65 \newcommand{\command}[1]{\texttt{#1}}
66
67 \newcommand{\hyperlabel}[1]{\label{#1}}
68 \newcommand{\fnref}[1]{\htmlref{\texttt{#1}}{fn:#1}}
69 \newcommand{\fnrefx}[2]{\htmlref{\texttt{#2}}{fn:#1.#2}}
70 \newcommand{\myhref}[2]{\htmlref{#2}{#1}}
71
72 \end{htmlonly}
73
74 \newcommand{\tabhead}[1]{\hline #1 \\ \hline}
75
76 % function tables
77 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
78
79 %begin{latexonly}
80
81 \newcommand{\funclistlabel}[1]{#1\hfill}
82 \newenvironment{function}{
83   \pagebreak[3]
84   \begin{list}{}{
85         \settowidth{\labelwidth}{Description:}
86         \setlength{\leftmargin}{\labelwidth}
87         \addtolength{\leftmargin}{0.5em}
88         \setlength{\labelsep}{0.5em}
89         \setlength{\itemsep}{0pt}
90         \setlength\parsep{0pt}
91         \setlength\topsep{0pt}
92         %\setlength{\itemsep}{-\parskip}
93         %\addtolength{\itemsep}{\lineskip}
94         \let\makelabel\funclistlabel
95   }
96 }{
97   \end{list}
98 }
99
100 %end{latexonly}
101 \begin{htmlonly}
102
103 \newenvironment{function}{
104   \begin{description}
105 }{
106   \end{description}
107 }
108
109 \end{htmlonly}
110
111
112 \newcommand{\synopsis}[1]{
113   \item[Synopsis:] \code{#1}
114 }
115 \newcommand{\funcname}[1]{
116   \item[Function:] \code{#1}
117 }
118 \newcommand{\hookname}[1]{
119   \item[Hook name:] \hyperlabel{#1}\code{#1}
120 }
121 \newcommand{\hookparams}[1]{
122   \item[Parameters:] \code{#1}
123 }
124 \newenvironment{funcdesc}{
125   \item[Description:]
126 }{}
127
128
129 % While rapport3/artikel3 are otherwise nice classes, 
130 % itemize looks awful.
131 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
132 %begin{latexonly}
133 \makeatletter
134 \renewenvironment{itemize}{%
135   \ifnum \@itemdepth >3
136     \@toodeep
137   \else
138     \advance\@itemdepth \@ne
139     \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
140     \list{\csname\@itemitem\endcsname}%
141          {%
142             \if@revlabel
143               \def\makelabel##1{\hskip .5\unitindent{\hfil ##1}}\else
144                                                     %^^^^^^^^^ Changed
145               \def\makelabel##1{\hfil ##1}
146                                %^^^^^^^^^ Changed
147             \fi
148           }%
149   \fi}
150  {\global\@ignoretrue \endlist}
151 \makeatletter
152 %end{latexonly}