moglen cd
[librarian.git] / librarian / pdf / wlpub.cls
1 % -*- coding: utf-8 -*-
2 \NeedsTeXFormat{LaTeX2e}
3 \ProvidesClass{wlpub}[2011/11/28 wolnelektury.pl book style]
4
5 % PDF customizations
6 %
7 % nofootnotes - disable generation of footnotes
8 % nothemes - disable generation of themes
9 % defaultleading - default leading
10 % onehalfleading - leading of 1.5 (interlinia)
11 % doubleleading - double leading (interlinia)
12 % a4paper,... - paper size as required by LaTeX
13 % nowlfont - don't use customized WL font
14
15 %\RequirePackage{geometry}
16 \RequirePackage{setspace}
17 \RequirePackage{type1cm}
18 \RequirePackage{amssymb}
19 \RequirePackage{amsmath}
20 \RequirePackage{paralist}
21 \RequirePackage[normalem]{ulem}
22 \RequirePackage{xifthen}
23 \RequirePackage{environ} % environments with \BODY, for wyimek
24
25 %\DeclareOption{13pt}{%
26 %\AtEndOfClass{%
27 % font size definitions, similar to ones in /usr/share/texmf-texlive/tex/latex/base/
28 %% \renewcommand\normalsize{%
29 %%    \@setfontsize\normalsize{13pt}{14.5pt}%
30 %%    \abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@
31 %%    \abovedisplayshortskip \z@ \@plus3\p@
32 %%    \belowdisplayshortskip 6.5\p@ \@plus3.5\p@ \@minus3\p@
33 %%    \belowdisplayskip \abovedisplayskip
34 %%    \let\@listi\@listI}\normalsize%
35 %% \renewcommand\footnotesize{%
36 %%    \@setfontsize\footnotesize\@xpt\@xiipt
37 %%    \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
38 %%    \abovedisplayshortskip \z@ \@plus3\p@
39 %%    \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
40 %%    \def\@listi{\leftmargin\leftmargini
41 %%                \topsep 6\p@ \@plus2\p@ \@minus2\p@
42 %%                \parsep 3\p@ \@plus2\p@ \@minus\p@
43 %%                \itemsep \parsep}%
44 %%    \belowdisplayskip \abovedisplayskip
45 %}%
46 %}%
47 %}
48
49 %% \DeclareOption{14pt}{\renewcommand{\normalsize}{\AtEndOfClass{\fontsize{14}{17}\selectfont}}}
50
51 \DeclareOption{defaultleading}{}
52 \DeclareOption{doubleleading}{\AtBeginDocument{\doublespacing}}%\setlength{\leading}{1em plus 0.5ex minus 0.2ex}}
53 \DeclareOption{onehalfleading}{\AtBeginDocument{\onehalfspacing}}%\setlength{\leading}{1em plus 0.5ex minus 0.2ex}}
54
55 %% This does not really work, since dvipdfm(x) will use it's configuration in /etc/texmf/dvipdfm(x) and force a global paper size setting.
56 \DeclareOption{a5paper}{%
57       \setlength{\paperheight}{210mm}%
58       \setlength{\paperwidth}{148mm}}
59 % a5paper dropped down size
60 \newif\ifcutafivepaper \cutafivepaperfalse
61 \DeclareOption{a5paperdd}{%
62   \setlength{\paperheight}{225mm}%
63   \setlength{\paperwidth}{160mm}%
64   \cutafivepapertrue
65 }
66
67 \newif\ifshowfootnotes \showfootnotestrue
68 \DeclareOption{nofootnotes}{\showfootnotesfalse}
69
70 \newif\ifshowthemes \showthemestrue
71 \DeclareOption{nothemes}{\showthemesfalse}
72
73 \newif\ifenablewlfont \enablewlfonttrue
74 \DeclareOption{nowlfont}{\enablewlfontfalse}
75
76
77 \DeclareOption*{\PassOptionsToClass{\CurrentOption}{extbook}}
78 \ProcessOptions\relax
79 \LoadClass{extbook}
80 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
81
82 \usepackage{trace}
83 \usepackage{caption}
84 \usepackage{tabularx}
85 \usepackage[MeX]{polski}
86 \usepackage{icomma}
87 \usepackage[xetex]{graphicx}
88 \usepackage{fontspec}
89 \usepackage{xunicode}
90 \usepackage{xltxtra}
91 %\usepackage{trimspaces} % imported by something else?
92 \usepackage{color}
93 \usepackage[overload]{textcase}
94 \usepackage{scalefnt}
95 \usepackage[colorlinks=true,linkcolor=black,setpagesize=false,urlcolor=black,xetex,linktocpage]{hyperref}
96 \usepackage{fancyhdr}
97
98 %\usepackage{fnpos}
99 \usepackage{printlen}
100 \usepackage{calc}
101 \usepackage[stable]{footmisc}
102
103 \usepackage{chngcntr}
104 \counterwithout{footnote}{chapter}
105
106 \usepackage[explicit]{titlesec}
107
108 %% Wyimki - placing them on correct pages
109 \usepackage{changepage}
110 %\usepackage{fltpage}
111 %\usepackage{float}
112
113 \pagestyle{plain}
114 % bottom figure below footnotes
115 %\makeFNabove
116
117
118 %%%%%%%%%%%%%%%%%%%%%%% Paper size
119 \setlength\baselineskip{7.14pt}
120 \ifcutafivepaper
121   \usepackage[%
122     paperwidth=160mm,%
123     paperheight=225mm,%
124     text={117mm,162mm},%
125     top=30mm,%
126     headsep=8mm,%
127     left=23mm,%
128     right=30mm]{geometry}%
129 \else
130   \usepackage[%
131     top=\dimexpr14.5mm+\baselineskip-16pt\relax, % margin will be smaller to accomodate for bigger header (16pt)
132     headsep=3\baselineskip,
133     headheight=16pt,
134     bottom=26.3mm,%
135     inner=14.5mm,%
136     outer=22.5mm,%
137     textheight=\dimexpr7.14pt*(32*2+1)\relax,%
138     includehead]{geometry}
139 \fi
140
141 %%%%%%%%%%%%%%%%%%%%%%%% Fonts
142
143 \setmainfont[
144 ItalicFont = CrimsonText-Italic,
145 BoldFont = CrimsonText-Bold,
146 BoldItalicFont = CrimsonText-BoldItalic,
147 Ligatures={Common, Contextual},
148 SmallCapsFont = CrimsonText-Roman,
149 SmallCapsFeatures={Letters=SmallCaps},
150 Mapping=tex-text
151 ]{CrimsonText-Roman}
152 \newfontface\sb{CrimsonText-Semibold}
153 \newfontface\intro{Archivo-Black}
154
155 %% For faking small caps You burn in typographic hell.
156 \makeatletter
157 \newlength\fake@f
158 \newlength\fake@c
159 \def\fakesc#1{%
160   \begingroup%
161   \xdef\fake@name{\csname\curr@fontshape/\f@size\endcsname}%
162   \fontsize{\fontdimen8\fake@name}{\baselineskip}\selectfont%
163   \uppercase{#1}%
164   \endgroup%
165 }
166 \makeatother
167
168 \setlength{\parindent}{3mm}
169 \setlength{\parskip}{0mm}
170
171 \renewcommand{\normalsize}{\fontsize{10.4}{14.28}\addfontfeature{LetterSpace=3.0}\selectfont}
172 \renewcommand{\large}{\fontsize{14}{14.28}\addfontfeature{LetterSpace=3.0}\selectfont} % srodtytul
173 \renewcommand{\small}{\fontsize{8}{14.28}\addfontfeature{LetterSpace=5.0}\selectfont} % paginy
174 \renewcommand{\Large}{\fontsize{15}{21.42}\addfontfeature{LetterSpace=0.0}\selectfont} % tytuł rozdziału
175 \renewcommand{\huge}{\fontsize{18}{28.56}\addfontfeature{LetterSpace=1.0}\selectfont} % wyimek
176 \renewcommand{\Huge}{\fontsize{24}{40}\selectfont} % cover
177 \renewcommand{\footnotesize}{\addfontfeature{LetterSpace=1.0}\fontsize{9}{10.74}\selectfont}
178
179
180
181 \definecolor{stoK}{cmyk}{0,0,0,1}
182 \definecolor{theme}{gray}{.3}
183 %\color{stoK}
184
185
186 %%%%%%%%%%%%%%%%%%%%%% Headings.
187 \pagestyle{fancy}
188 \fancyhf{}
189 \renewcommand{\headrulewidth}{0pt}
190 \renewcommand{\footrulewidth}{0pt}
191 \makeatletter
192 %%%%%%%%%% Nagłówek normalny
193 \cfoot{}
194 % this will go to \leftmark
195 \renewcommand{\chaptermark}[1]{\markboth{\MakeUppercase{#1}}{}}
196 \fancyhead[CE]{{\small\MakeUppercase{\@title}}}
197 \fancyhead[CO]{{\small\leftmark}}
198 \fancyhead[LE,RO]{{\small\intro\thepage}}
199 %%%%%%%%%% Nagłówek pierwszej strony rozdziału
200 \fancypagestyle{plain}{%
201 \fancyhf{}
202 \fancyhead[LE,RO]{{\small\intro\thepage}}
203 \renewcommand{\headrulewidth}{0pt}
204 \renewcommand{\footrulewidth}{0pt}}
205 \makeatother
206
207 %%%%%%%%%%%%%%%%%%%%%% Section title styles.
208 %% Chapters
209 \titleformat{\chapter}[block]%
210 {\Large\intro\addfontfeature{LetterSpace=0.5,Kerning={Uppercase}}}%
211 {}{0pt}{\parbox{80mm}{\raggedright#1}}
212 \newlength{\chapterposcorrection}\newlength{\chapterspaceafter}
213 \setlength{\chapterposcorrection}{-\headsep-2\baselineskip}
214 \setlength{\chapterspaceafter}{14\baselineskip-14pt}%\f@size of large
215 \titlespacing*{\chapter}{0pt}{\chapterposcorrection}{\chapterspaceafter}
216
217 %% Sections
218 \titleformat{\section}%
219 {\addfontfeature{LetterSpace=0.3}\large}%
220 {\thesection{}.}{.5em}{\MakeUppercase{#1}}
221
222 \renewcommand{\thesection}{\Roman{section}}
223
224 \titleformat{\subsection}[runin]%
225 {}%
226 {\thesubsection{}.}{.5em}{\MakeUppercase{#1}.}[]
227
228 \renewcommand{\thesubsection}{\Alph{subsection}}
229 \titlespacing*{\subsection}{0pt}{0pt}{.5em}
230
231 \newcommand{\typosubsubsection}[1]{%
232 {\textsc{#1}}
233 }
234
235 %% XXX delete them
236 \newcommand{\typosubsection}[1]{%
237 {\MakeUppercase{#1}}
238 }
239
240 \newcommand{\typosection}[1]{%
241 {\addfontfeature{FakeStretch=0.96, LetterSpace=-4.0}\emph{\scalefont{2}#1}}
242 %{\addfontfeature{Scale=2.0, FakeStretch=0.98, LetterSpace=-2.0}\emph{#1}}
243 }
244 %%%%%%%%%%%%%%%%%% ^^
245
246 %%%%% Footnotes (works with footmisc) %%%%%%%%
247 \newlength{\footnoteindent}\newlength{\footnoteprespace}
248 \setlength{\footnoteindent}{6mm}%{3.5mm}
249 \setlength{\footnoteprespace}{0em}
250 \makeatletter
251
252 \renewcommand\@makefnmark{%
253 \hspace{\footnoteprespace}
254 \hbox{{\normalfont \@thefnmark}}%
255 }
256 \renewcommand\thefootnote{[\arabic{footnote}]}
257
258 \setlength{\footnotemargin}{-\footnoteindent-\footnoteprespace-.3em}
259 \renewcommand\footnotelayout[1]{%
260   \setlength{\leftskip}{\footnoteindent}#1}
261
262 %% \long\def\@makefntext#1{%
263 %% \setlength{\leftskip}{\footnoteindent}%
264 %% \setlength{\hskip}{-\footnoteindent-\footnoteprespace-.1em}%
265 %% \hb@xt@ \dimexpr\footnoteindent+\footnoteprespace%
266 %% {\@makefnmark}#1
267 %% %  \parindent 1em\noindent \hb@xt@ 1.8em{\hss \@makefnmark \enskip}#1
268 %% }
269
270 % make public
271 \def\trimspace#1{\trim@spaces{#1}}
272
273 \makeatother
274
275 %%%%%%%%%%%%%%%%%%%%%% Wyimki
276 %% \floatstyle{plain}
277 %% \newfloat{wyimekbox}{p}{wmk}
278 %% \floatname{wyimekbox}{Wyimek}
279
280 \NewEnviron{wyimek}{%
281   \checkoddpage
282   \ifoddpage
283     \PackageWarning{wlpub}{Wyimek on odd page, omitting it.}
284   \else
285     \begin{figure}[tp]
286       \begin{center}
287         \begin{minipage}[t][\textheight][c]{70mm}
288           \huge\it\BODY
289         \end{minipage}
290       \end{center}
291     \end{figure}
292   \fi
293   \BODY
294 }
295
296
297
298
299
300 %%%%%%%%%%%%%%%%%%%%%%%%%%
301
302
303 \clubpenalty=100000
304 \widowpenalty=100000
305
306
307 % see http://osdir.com/ml/tex.xetex/2005-10/msg00003.html
308 \newsavebox{\ximagebox}\newlength{\ximageheight}
309 \newsavebox{\xglyphbox}\newlength{\xglyphheight}
310 \newcommand{\xbox}[1]
311 {\savebox{\ximagebox}{#1}\settoheight{\ximageheight}{\usebox {\ximapgebox}}%
312 \savebox{\xglyphbox}{\char32}\settoheight{\xglyphheight}{\usebox {\xglyphbox}}%
313 \raisebox{\ximageheight}[0pt][0pt]{%\raisebox{-\xglyphheight}[0pt] [0pt]{%
314 \makebox[0pt][l]{\usebox{\xglyphbox}}}%}%
315 \usebox{\ximagebox}%
316 \raisebox{0pt}[0pt][0pt]{\makebox[0pt][r]{\usebox{\xglyphbox}}}}
317
318
319 \newcommand{\makecover}{
320   %% \paperwidth=297mm
321
322
323   %% \paperheight=210mm
324
325   \newgeometry{paperwidth=297mm,paperheight=210mm}
326   \pdfpageheight=210mm
327   \pdfpagewidth=297mm
328
329   \thispagestyle{empty}
330   \newlength{\PictHOffset}
331   \newlength{\PictVOffset}
332   \setlength{\PictHOffset}{1in}
333   \addtolength{\PictHOffset}{\hoffset}
334   \addtolength{\PictHOffset}{\oddsidemargin}
335
336   \setlength{\PictVOffset}{1in}
337   \addtolength{\PictVOffset}{\voffset}
338   \addtolength{\PictVOffset}{\topmargin}
339   \addtolength{\PictVOffset}{\headheight}
340   \addtolength{\PictVOffset}{\headsep}
341   \addtolength{\PictVOffset}{\topskip}
342
343   \addtolength{\PictVOffset}{-\paperheight}
344
345   \noindent\hspace*{-\PictHOffset}%
346   \raisebox{\PictVOffset}[0pt][0pt]{\makebox[0pt][l]{%
347       \includegraphics[height=\pdfpageheight,width=\pdfpagewidth]{cover.pdf}}}
348
349   \restoregeometry
350   \pdfpageheight=210mm
351   \pdfpagewidth=148mm
352
353   }
354
355 \renewcommand{\maketitle}{
356   %\vspace{\paperheight}
357   \thispagestyle{empty}
358   \cleardoublepage
359   \setcounter{page}{1}
360   \thispagestyle{empty}
361   \begin{center}
362   \intro
363   {
364     \begin{spacing}{1.4}
365     \Huge \noindent \thetitle
366     \end{spacing}
367   }
368   \end{center}
369
370   \vspace{\baselineskip}
371
372   \begin{center}
373     \intro
374     {
375       \huge \noindent
376       \theauthor
377
378     }
379   \end{center}
380                   %\emph{\thankyou}\\
381                   %\indent\emph{You made this book possible.}
382   \vspace{7\baselineskip}
383
384   \begin{center}
385     \includegraphics[scale=.2]{logo.eps}
386   \end{center}
387
388 }
389
390
391 \newcommand{\editorialsection}{
392   \clearpage
393   \thispagestyle{empty}
394   {
395     \setlength{\parindent}{0mm}
396   \input{editorial}
397   }
398 }
399
400 \renewcommand*\contentsname{Spis treści}
401 \newcommand{\spistresci}{
402 {
403   \intro
404   \setcounter{tocdepth}{0}
405   \tableofcontents
406   \newpage
407 }
408 }
409
410
411
412
413 \newcommand{\tytul}[1]{%
414 #1%
415 \vspace{1em}%
416 }
417
418 \newcommand{\nazwapodutworu}[1]{%
419 \section*{#1}%
420 }
421
422 \newcommand{\autorutworu}[1]{%
423 #1
424 %\subsection*{\typosubsection{#1}}%
425 }
426
427 \newcommand{\dzielonadrzedne}[1]{%
428 \subsection*{#1}%
429 }
430
431 \newcommand{\nazwautworu}[1]{%
432 \section*{#1}%
433 }
434
435 \newcommand{\podtytul}[1]{%
436 \subsection*{\typosubsubsection{#1}}%
437 }
438
439 \newcommand{\podtytulpodutworu}[1]{%
440 \subsection*{\typosubsubsection{#1}}%
441 }
442
443 \newcommand{\translator}[1]{%
444 \subsection*{\typosubsubsection{tłum. #1}}%
445 }
446 \newcommand{\translatorsline}[1]{%
447 #1
448 }
449
450 \newcommand{\powiesc}[1]{#1}
451 \newcommand{\opowiadanie}[1]{#1}
452 \newcommand{\lirykal}[1]{#1}
453 \newcommand{\lirykalp}[1]{#1}
454 \newcommand{\dramatwierszowanyl}[1]{#1}
455 \newcommand{\dramatwierszowanylp}[1]{#1}
456 \newcommand{\dramatwspolczesny}[1]{#1}
457
458 \newcommand{\nota}[1]{%
459 \begin{em}%
460 \begin{flushleft}%
461 \noindent #1%
462 \end{flushleft}%
463 \end{em}%
464 }
465
466 \newcommand{\dedykacja}[1]{%
467 \begin{em}%
468 \begin{flushright}%
469 #1%
470 \end{flushright}%
471 \end{em}%
472 }
473
474 \newcommand{\dlugicytat}[1]{%
475 \begin{quotation}%
476 #1%
477 \end{quotation}%
478 }
479
480 \newcommand{\poezjacyt}[1]{%
481 \begin{verse}%
482 #1%
483 \end{verse}%
484 }
485 \newcommand{\motto}[1]{%
486 \begin{em}%
487 #1%
488 \end{em}%
489 }
490 \newcommand{\listaosob}[2]{%
491 \par{#1}%
492 \begin{itemize}%
493 #2%
494 \end{itemize}%
495 }
496
497 \newcommand{\nagloweklisty}[1]{%
498 \typosubsubsection{#1}%
499 }
500
501 \newcommand{\listaosoba}[1]{%
502 \item{#1}%
503 }
504
505 \newcommand{\kwestia}[1]{%
506 \par{#1}%
507 }
508
509 \newcommand{\naglowekakt}[1]{%
510 \pagebreak
511 \subsection*{\typosubsection{#1}}%
512 }
513 \newcommand{\naglowekczesc}[1]{%
514 \pagebreak
515 \part{#1}%
516 }
517 \newcommand{\srodtytul}[1]{%
518 \subsection{#1}%
519 }
520
521 \newcommand{\naglowekscena}[1]{%
522 \subsubsection*{\typosubsubsection{#1}}%
523 }
524
525 \newcommand{\theautorrozdzialu}{}
526
527 \newcommand{\autorrozdzialu}[1]{%
528 \renewcommand{\theautorrozdzialu}{{\normalfont\normalsize\newline{}\newline{}\emph{#1}}}
529 }
530
531
532 \newcommand{\naglowekrozdzial}[1]{%
533 \chapter[#1]{\MakeUppercase{#1}\theautorrozdzialu{}}
534 \renewcommand{\theautorrozdzialu}{}%
535 }
536
537 \newcommand{\naglowekosoba}[1]{%
538 \par{\textsc{#1}}\nopagebreak%
539 }
540 \newcommand{\naglowekpodrozdzial}[1]{%
541 \section{#1}\nopagebreak%
542 }
543
544 \newcommand{\miejsceczas}[1]{%
545 \par{\emph{#1}}%
546 }
547 \newcommand{\didaskalia}[1]{%
548 \par{\emph{#1}}%
549 }
550
551 \newcommand{\akap}[1]{%
552 \par{#1}%
553 }
554 \newcommand{\akapdialog}[1]{%
555 \par{#1}%
556 }
557 \newcommand{\akapcd}[1]{%
558 \par{#1}%
559 }
560
561 \newcommand{\mottopodpis}[1]{%
562 \begin{em}%
563 \begin{flushright}%
564 #1%
565 \end{flushright}%
566 \end{em}%
567 }
568
569 \newcommand{\strofa}[1]{%
570 \par{\noindent{\ignorespaces#1\vspace{1em}}}%
571 }
572
573 \newcommand{\wers}[1]{#1}
574
575 \newcommand{\wersakap}[1]{%
576 \hspace*{1em}#1%
577 }
578 \newcommand{\werscd}[1]{%
579 \hspace*{8em}#1%
580 }
581 \newcommand{\werswciety}[2][1em]{%
582 \hspace*{#1}#2%
583 }
584
585 \ifshowfootnotes
586   \newcommand{\pa}[1]{\NoCaseChange{\footnote{#1 [przypis autorski]}}}
587   \newcommand{\pe}[1]{\NoCaseChange{\footnote{#1}}}
588   \newcommand{\pr}[1]{\NoCaseChange{\footnote{#1}}}
589   \newcommand{\pt}[1]{\NoCaseChange{\footnote{#1}}}
590 \else
591   \newcommand{\pa}[1]{}
592   \newcommand{\pe}[1]{}
593   \newcommand{\pr}[1]{}
594   \newcommand{\pt}[1]{}
595 \fi
596
597 \newcommand{\mat}[1]{$#1$}
598
599 \newcommand{\didasktekst}[1]{%
600 \emph{#1}%
601 }
602 \newcommand{\slowoobce}[1]{%
603 \emph{#1}%
604 }
605 \newcommand{\tytuldziela}[1]{%
606 \emph{#1}%
607 }
608 \newcommand{\wyroznienie}[1]{%
609 \emph{#1}%
610 }
611
612 \newcommand{\osoba}[1]{%
613 #1%
614 }
615
616 \newcommand{\sekcjaswiatlo}{%
617 \vspace{\baselineskip}%
618 }
619
620 \newcommand{\sekcjaasterysk}{%
621 \vspace{10pt}%
622 \begin{center}%
623 \par{*}%
624 \end{center}%
625 }
626
627 \newcommand{\separatorlinia}{%
628 \vspace{10pt}%
629 \hrule{}%
630 \vspace{10pt}%
631 }
632
633 \newcommand{\ilustrscale}[0]{1}
634 \newcommand{\setilustrscale}[1]{\renewcomand{\ilustrscale}{#1}}
635
636 \newcommand{\ilustr}[3][]{
637   \vspace{2\baselineskip}%
638   \begin{center}%
639     \ifthenelse{\isempty{#1}}%
640     {\par{\includegraphics{\trimspace{#2}}\\#3}}%
641     {\par{\includegraphics[#1]{\trimspace{#2}}\\#3}}%
642   \end{center}%
643   \vspace{2\baselineskip}%
644 }
645
646
647 \newcommand{\motyw}[2][0]{%
648 \ifshowthemes
649 \mbox{}%
650 \marginpar{%
651 \vspace{-8pt}%
652 \vspace{-#1\baselineskip}%
653 \raggedright{\hspace{0pt}%
654 \footnotesize{\color{theme}{#2}}}%
655 \vspace{\baselineskip}%
656 }%
657 \fi
658 }
659
660 \newcommand{\lista}[1]{%
661 \begin{compactitem}
662 \setlength{\parskip}{\parindent}
663 #1
664 \end{compactitem}
665 }
666
667 \newcommand{\punkt}[1]{%
668 \item #1
669 }
670 \newcommand{\link}[2]{\href{#1}{\uline{#2}\footnote{#1}}}
671
672 \newcommand{\www}[1]{{\normalfont\small\href{#1}{#1}}}