]> mj.ucw.cz Git - ga.git/blob - sgr.tex
Drobne upravy sazby.
[ga.git] / sgr.tex
1 % Makra pro sazbu skripticek o grafovych algoritmech
2
3 \input mjmac.tex
4 \input epsf.tex
5 \input btxmac.tex
6
7 \language=\czech
8 \chyph
9 \lefthyphenmin=2
10 \righthyphenmin=2
11
12 % A4 s 0.5in okraji
13 %\hsize=184.6mm
14 %\vsize=271.6mm
15 %\parindent=0.25in
16
17 % A5 s 1cm okraji, dolni rozsiren o 10pt, aby se tam veslo cislo stranky
18 \hsize=128mm
19 \vsize=190mm
20 \advance\vsize by -10pt
21 \parindent=0.8cm
22
23 % Zacatek prednasky {cislo prednasky}{jmeno prednasky}{jmeno zapisovatele}
24 \def\prednaska#1#2#3{%
25 \prechapter{#1}{#2}
26 \vbox{%
27 \line{{\Large\bf #1. #2} \hfil {\it #3}}
28 \vskip 4pt
29 \hrule}
30 \medskip
31 }
32 \def\prechapter#1#2{}
33
34 % Nadpis {text}
35 \def\h#1{\medbreak\leftline{\bf #1}\nobreak\smallskip\nobreak}
36
37 % Zvyrazneny zacatek odstavce coby podnadpis (napr. vety apod.)
38 \def\s#1{\noindent {\bo #1}}
39
40 % A kdyz stoji samostatne (aby se naodlamoval)
41 \def\ss#1{\noindent {\bo #1}\par\nobreak}
42
43 % Dùkaz
44 \def\proof{\noindent {\sl Dùkaz:} }
45
46 % Ctverecek na konci dukazu
47 %\def\qed{{\parfillskip=0pt\quad\hfil\hbox{\I QED} \par}}
48 \def\qed{{\parfillskip=0pt\allowbreak\hfill\nobreak $\heartsuit$\par}}
49
50 % pokud je v seznamu:
51 \def\qeditem{{\parfillskip=0pt\hfill\rlap{\hskip\rightskip\llap{$\heartsuit$}}\par}}
52
53 % Poznamky pod carou
54 \newcount\footcnt
55 \footcnt=0
56 \def\foot#1{\global\advance\footcnt by 1{\parindent=0.25in\parskip=0pt\footnote{$^{\left<\the\footcnt\right>}$}{#1}}}
57
58 % \noindent se casto hodi, tak na nej mame zkratku
59 \let\>=\noindent
60
61 % Sazba algoritmu:
62 %       \algo
63 %       \:krok
64 %       \:krok
65 %       \::vnoreny krok
66 %       \endalgo
67
68 \def\algo{
69 \interlistskip
70 \begingroup
71 \let\:=\algoitem
72 \let\*=\algohang
73 \parskip=1pt plus 0.2pt minus 0.3pt
74 \rightskip=2em
75 \itemcount=0
76 }
77 \def\endalgo{\interlistskip\endgroup}
78 \def\algoitem{\par
79 \parindent=2em
80 \hangindent=4em
81 \hangafter=1
82 \advance\itemcount by 1
83 \leavevmode\hbox to 2em{\hss \the\itemcount. }%
84 \futurelet\next\algoitemh}
85 \def\algoitemh{\ifx\next:\let\next=\algohang\else\let\next=\relax\fi\next}
86 \def\algohang:{\advance\hangindent by 2em \hskip 2em\futurelet\next\algoitemh}
87
88 % Nekolikapismenkova promenna (mozno pouzit v textovem i math modu)
89 \def\<#1>{\hbox{\it #1\/}}
90
91 % Asymptoticke O-cko
92 \def\O{{\cal O}}
93
94 % Vlozeni obrazku {obrazek}{popisek}{sirka}
95 \def\figure#1#2#3{\bigskip\vbox{\centerline{\epsfxsize=#3\epsfbox{#1}}\smallskip\centerline{#2}}\bigskip}
96
97 % Varianta bez popisku
98 \def\fig#1#2{\medskip\centerline{\epsfxsize=#2\epsfbox{#1}}\medskip}
99
100 % Dva obrazky vedle sebe s popiskami
101 \def\twofigures#1#2#3#4#5#6{\bigskip\centerline{\vbox{\halign{\hfil##\hfil\hskip 4em&\hfil##\hfil\cr
102 \epsfxsize=#3\epsfbox{#1}&\epsfxsize=#6\epsfbox{#4}\cr
103 \noalign{\smallskip}
104 #2&#5\cr}}}\bigskip}
105
106 % Obrazek vlozeny do praveho okraje odstavce {obrazek}{sirka}
107 % Pouzit na zacatku odstavce a nejlepe celou konstrukci zavrit do vboxu, aby se nerozlomila
108 \def\inlinefig#1#2{
109 \setbox0=\hbox{\epsfxsize=#2\epsfbox{#1}}
110 \hangindent=-\wd0
111 \advance\hangindent by -3em
112 \dimen0=\ht0
113 \advance\dimen0 by 8ex
114 \advance\dimen0 by \normalbaselineskip
115 \count0=\dimen0
116 \divide\count0 by \normalbaselineskip
117 \hangafter=-\count0
118 \dimen0=\normalbaselineskip
119 \multiply\dimen0 by \count0
120 \vbox to 0pt{}
121 \nointerlineskip
122 \vbox to 0pt{\vbox to \dimen0{\vss\rightline{\box0\hskip 1em}\vss}\vss}
123 \nointerlineskip
124 }
125
126 % Todo
127 \def\todo#1{{\bf TODO: \it #1}}
128
129 % Blackboard bold font
130 \newfam\bbfam
131 \font\bbten=bbold10
132 \textfont\bbfam=\bbten
133 \def\bb{\bbten\fam\bbfam}
134
135 % Reference na konci kapitoly
136 \bibliographystyle{abbrv}
137 \def\references{\h{Literatura}\dumprefs}
138 \def\dumprefs{
139 \def\bblhook{\parskip=2pt plus 1pt minus 0.5pt}
140 \bibliography{../ga}
141 }
142
143 % Predefinujeme odsazovani odrazek z mjmacu
144 \def\itemspacingrules{\ifitem\advance\leftskip by \parindent\parindent=0pt\itemfalse\else
145 \advance\leftskip by 2.5em\fi\rightskip=\leftskip}
146
147 % Matematicke symboly
148 \def\symdiff{\mathop{\Delta}}
149
150 % Ujisti se, ze na strance je dostatek mista, pripadne zacne novou stranku
151 \def\checkroom#1{\vskip 0pt plus #1\goodbreak\vskip 0pt plus -#1}
152
153 % Hacky pro finalni sazbu
154 \def\separatefix#1{#1}
155 \def\finalfix#1{}