cbd8ba2769ff795848db422e09b225962a99c0f9
[gapil.git] / gapil.tex
1 %% gapil.tex
2 %%
3 %% Copyright (C) 2000-2018 Simone Piccardi.  Permission is granted to
4 %% copy, distribute and/or modify this document under the terms of the GNU Free
5 %% Documentation License, Version 1.3 or any later version published by the
6 %% Free Software Foundation; with the Invariant Sections being "Un preambolo",
7 %% with no Front-Cover Texts, and with no Back-Cover Texts.  A copy of the
8 %% license is included in the section entitled "GNU Free Documentation
9 %% License".
10 %%
11 %% GaPiL : Guida alla Programmazione in Linux
12 %%
13 %% S. Piccardi Oct. 2000
14 %% 
15 %% gapil.tex: file principale, gli altri vanno inclusi da questo.
16 %%
17 \documentclass[10pt,twoside]{book}
18
19 %\usepackage[paperwidth=18.91cm,paperheight=24.589cm,
20 %inner=2.5cm,outer=1.8cm,bottom=3.3cm,top=2.3cm]{geometry}
21
22 \usepackage[paperwidth=18.91cm,paperheight=24.589cm,
23 vmargin=1.9cm,inner=1.9cm,outer=1.9cm,bindingoffset=0.89cm]{geometry}
24
25
26 % encodings
27 \usepackage[T1]{fontenc}
28 \usepackage[utf8]{inputenc}
29 \usepackage{ae,aecompl}
30
31 %
32 % New header style
33 %
34 \usepackage{fancyhdr}
35 \pagestyle{fancy}
36 \fancyhf{}
37 \fancyhead[RE]{\slshape \rightmark}
38 \fancyhead[RO,LE]{\thepage}
39 \fancyhead[LO]{\slshape \leftmark}
40
41 \renewcommand{\chaptermark}[1]{% 
42 \markboth{\thechapter.% 
43 \ #1}{}} 
44
45 \renewcommand{\sectionmark}[1]{% 
46 \markright{\ \thesection% 
47 \ #1}{}}
48
49
50 % more fonts
51 \usepackage{inconsolata}
52
53 % fancy verbatim
54 \usepackage{fancyvrb}
55 \DefineVerbatimEnvironment{Example}{Verbatim}
56 {xleftmargin=1cm,xrightmargin=1cm}
57
58 \DefineVerbatimEnvironment{FileExample}{Verbatim}
59 {frame=lines,framerule=0.5mm,framesep=2mm,xleftmargin=1cm,xrightmargin=1cm,fontsize=\footnotesize}
60
61 \DefineVerbatimEnvironment{Terminal}{Verbatim}
62 {xleftmargin=\parindent,xrightmargin=\parindent,fontsize=\footnotesize}
63
64 \DefineVerbatimEnvironment{Command}{Verbatim}
65 {xleftmargin=\parindent,xrightmargin=\parindent,fontseries=b,
66 fontsize=\footnotesize}
67
68 \DefineVerbatimEnvironment{Console}{Verbatim}
69 {commandchars=\\\{\},xleftmargin=\parindent,xrightmargin=\parindent,fontsize=\footnotesize}
70
71
72 \usepackage[bookmarks=true,plainpages=false,pdfpagelabels,
73 hyperfootnotes=false]{hyperref}
74
75 \usepackage{makeidx}
76 \usepackage{pst-node}
77 \usepackage{eso-pic}
78 \usepackage{graphicx}
79 \usepackage[italian]{babel}
80 \usepackage{cite}
81 \usepackage{amsmath}
82 \usepackage{amsfonts}
83 \usepackage[hang,bf,footnotesize,it]{caption}
84 \usepackage{listings}
85 \lstloadlanguages{C++}
86 \usepackage{color} 
87
88 \providecommand{\defaultdesc}{%
89 \desclabelstyle{\pushlabel}%
90 \renewcommand{\makelabel}[1]{##1}%
91 \setlength{\labelwidth}{0pt}%
92 }
93 \usepackage{mdwlist}
94
95 \usepackage{boxedminipage}
96 \usepackage{multirow}
97 \usepackage{longtable}
98 \usepackage{varwidth}
99 %\usepackage{footnote} 
100 %\usepackage{mdwtab} 
101
102 \usepackage{tikz}
103 \usetikzlibrary{shapes}
104
105 \frenchspacing
106
107 %\includeonly{macro,pref,intro,fdl}
108
109 \title{\Huge \textbf{\textsl{G}a\textsl{P}i\textsl{L}}\\
110 \huge Guida alla Programmazione in Linux} 
111
112 \author{Simone Piccardi}
113
114 \makeindex
115
116 % Solo prima parte, scommentare 
117 % \includeonly{macro,preambolo,pref,intro,process,prochand,filedir,
118 %   fileunix,filestd,system,signal,session,fileadv,ipc,errors,
119 %   ringraziamenti,fdl}
120
121 % Solo seconda parte e appendici, scommentare
122 %\includeonly{macro,preambolo,network,socket,tcpsock,sockctrl,othersock,
123 %  sockadv,netlayer,trasplayer,errors,ringraziamenti,fdl}
124
125 \begin{document}
126
127 \frontmatter
128
129 \maketitle
130
131 \newcommand{\clearemptydoublepage}{\newpage{\pagestyle{empty}
132 \cleardoublepage}}
133
134 \begin{quote}
135   
136   Copyright \copyright\ 2000-2018 Simone Piccardi.  Permission is granted to
137   copy, distribute and/or modify this document under the terms of the GNU Free
138   Documentation License, Version 1.3 or any later version published by the
139   Free Software Foundation; with the Invariant Sections being ``Un preambolo''
140   in ``Prefazione'', with no Front-Cover Texts, and with no Back-Cover Texts.
141   A copy of the license is included in the section entitled ``GNU Free
142   Documentation License''.
143
144 \end{quote}
145 \clearemptydoublepage
146
147 %\ifx\hcode\undefined\else
148 \tableofcontents
149 %\fi
150
151 \clearemptydoublepage
152 \include{macro}
153 \include{preambolo}
154 \include{pref}
155 \clearemptydoublepage
156 \mainmatter
157
158 \lstset{language=C++} 
159
160 \lstset{basicstyle=\small,
161   numbers=left,
162   numberstyle=\tiny,
163   stepnumber=1,
164   numbersep=2pt, 
165   frame=TB,
166   framesep=5pt,
167 %  xleftmargin=0.3cm,
168   basicstyle=\ttfamily,
169   keywordstyle=\color{blue}\ttfamily,
170   ndkeywordstyle=\color{yellow}\ttfamily,
171 %  rdkeywordstyle=\ttfamily,
172   identifierstyle=\ttfamily,
173   commentstyle=\color{red}\ttfamily,
174   stringstyle=\color{green}\ttfamily,
175 %  texcsststyle=\ttfamily,
176   directivestyle=\color{magenta}\ttfamily
177
178
179 % distance from margins for boxedminipage
180 %\fboxsep=6pt
181
182 % less hspace for tables
183 \setlength{\tabcolsep}{0.5em}
184
185 % comment following to have reference to incomplete section using \unavref
186 % command removed
187 %\def\incomplete{\relax}
188
189 \part{Programmazione di sistema}
190 \label{part:progr-di-sist}
191 \include{intro}
192 \include{process}
193 \include{prochand}
194 \include{filedir}
195 \include{fileio}
196 %\include{fileunix}
197 %\include{filestd}
198 \include{system}
199 \include{signal}
200 \include{session}
201 \include{fileadv}
202 \include{ipc}
203 %\include{thread}
204
205 % Commentare sotto se si genera la prima parte
206 \part{Programmazione di rete}
207 \label{part:progr-di-rete}
208
209 \include{network}
210 \include{socket}
211 \include{tcpsock}
212 \include{sockctrl}
213 \include{othersock}
214 \include{sockadv}
215 \appendix
216
217 \part{Appendici}
218 \label{part:appendici}
219 \include{errors}
220 \include{netlayer}
221 \include{trasplayer}
222 \include{build}
223 \include{ringraziamenti}
224 \include{fdl-1.3}
225
226 % at the end put the bibliography
227 \backmatter
228 \printindex
229 %\bibliographystyle{phaip}
230 %\bibliographystyle{ieeetr}
231 \bibliographystyle{abstract}
232 \bibliography{biblio}
233
234 \end{document}
235
236 %%% Local Variables:
237 %%% mode: latex
238 %%% TeX-master: t
239 %%% End: