Blame latex/style/docbook.sty

Packit Service 76cb02
%%
Packit Service 76cb02
%% Default dblatex DocBook style
Packit Service 76cb02
%%
Packit Service 76cb02
\NeedsTeXFormat{LaTeX2e}
Packit Service 76cb02
\ProvidesPackage{docbook}[2007/04/04 DocBook Style]
Packit Service 76cb02
Packit Service 76cb02
% The defined options
Packit Service 76cb02
\DeclareOption{hyperlink}{ \def\DBKhyperlink{yes} }
Packit Service 76cb02
\DeclareOption{nohyperlink}{ \def\DBKhyperlink{no} }
Packit Service 76cb02
Packit Service 76cb02
% Default values
Packit Service 76cb02
\ExecuteOptions{nohyperlink}
Packit Service 76cb02
Packit Service 76cb02
% If defined, process the options
Packit Service 76cb02
\ProcessOptions\relax
Packit Service 76cb02
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
% ### DocBook and local commands
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
% Default DocBook Parameters
Packit Service 76cb02
\newcommand{\DBKreference}{}
Packit Service 76cb02
\newcommand{\DBKtitle}{Main Title}
Packit Service 76cb02
\let\DBKsubtitle\relax
Packit Service 76cb02
\newcommand{\DBKdate}{\today}
Packit Service 76cb02
\newcommand{\DBKsite}{}
Packit Service 76cb02
\newcommand{\DBKedition}{}
Packit Service 76cb02
\newcommand{\DBKreleaseinfo}{Working Paper}
Packit Service 76cb02
\newcommand{\DBKpubdate}{}
Packit Service 76cb02
\let\DBKlegalblock\relax
Packit Service 76cb02
\newcommand{\DBKlegaltitle}{}
Packit Service 76cb02
\let\DBKcopyright\relax
Packit Service 76cb02
Packit Service 76cb02
% Local commands
Packit Service 76cb02
\newcommand{\DBKtoclof}{true}
Packit Service 76cb02
\newcommand{\DBKauthor}{}
Packit Service 76cb02
Packit Service 76cb02
% Adaptation...
Packit Service 76cb02
\setcounter{secnumdepth}{4}
Packit Service 76cb02
\setcounter{tocdepth}{4}
Packit Service 76cb02
Packit Service 76cb02
\setlength\parskip{\medskipamount}
Packit Service 76cb02
\setlength\parindent{0pt}
Packit Service 76cb02
Packit Service 76cb02
% Don't want paragraph indentation in abstract
Packit Service 76cb02
\@ifundefined{abstract}{
Packit Service 76cb02
\newenvironment{abstract}{
Packit Service 76cb02
  \setlength\parskip{\medskipamount}%
Packit Service 76cb02
  \setlength\parindent{0pt}%
Packit Service 76cb02
}{
Packit Service 76cb02
}
Packit Service 76cb02
}{
Packit Service 76cb02
% Redefine abstract in avoid page count reset
Packit Service 76cb02
\def\nocount#1#2{}
Packit Service 76cb02
\let\stdsetcounter\setcounter
Packit Service 76cb02
\let\stdabstract=\abstract
Packit Service 76cb02
\let\endstdabstract=\endabstract
Packit Service 76cb02
\renewenvironment{abstract}{%
Packit Service 76cb02
  \let\setcounter\nocount%
Packit Service 76cb02
  \begin{stdabstract}%
Packit Service 76cb02
  \noindent%
Packit Service 76cb02
  \setlength\parskip{\medskipamount}%
Packit Service 76cb02
  \setlength\parindent{0pt}%
Packit Service 76cb02
}{
Packit Service 76cb02
  \end{stdabstract}
Packit Service 76cb02
  \let\setcounter\stdsetcounter
Packit Service 76cb02
}
Packit Service 76cb02
}
Packit Service 76cb02
Packit Service 76cb02
% We want paragraph + subparagraph headers like the others
Packit Service 76cb02
\renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}%
Packit Service 76cb02
                                     {-3.25ex\@plus -1ex \@minus -.2ex}%
Packit Service 76cb02
                                     {1ex \@plus .2ex}%
Packit Service 76cb02
                                     {\normalfont\normalsize\bfseries}}
Packit Service 76cb02
Packit Service 76cb02
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\z@}%
Packit Service 76cb02
                                     {-3.25ex\@plus -1ex \@minus -.2ex}%
Packit Service 76cb02
                                     {1ex \@plus .2ex}%
Packit Service 76cb02
                                     {\normalfont\normalsize\bfseries}}
Packit Service 76cb02
Packit Service 76cb02
% To have title rendering changed
Packit Service 76cb02
\usepackage[sf,bf]{titlesec}
Packit Service 76cb02
Packit Service 76cb02
Packit Service 76cb02
% Display ``DRAFT'' as a water mark:
Packit Service 76cb02
\usepackage{ifpdf}
Packit Service 76cb02
Packit Service 76cb02
\newif\ifpdfengine
Packit Service 76cb02
\ifpdf\pdfenginetrue
Packit Service 76cb02
\else\ifxetex\pdfenginetrue
Packit Service 76cb02
\fi\fi
Packit Service 76cb02
Packit Service 76cb02
\ifpdfengine
Packit Service 76cb02
\usepackage{pdfpages}
Packit Service 76cb02
\usepackage{color}
Packit Service 76cb02
\def\showwatermark#1{%
Packit Service 76cb02
  \AddToShipoutPicture{
Packit Service 76cb02
  \AtTextCenter{%
Packit Service 76cb02
  \makebox(0,0)[c]{\resizebox{\textwidth}{!}{%
Packit Service 76cb02
  \rotatebox{45}{\textsf{\textbf{\color[gray]{0.8}#1}}}}}%
Packit Service 76cb02
  }}
Packit Service 76cb02
}
Packit Service 76cb02
\else
Packit Service 76cb02
\def\showwatermark#1{}%
Packit Service 76cb02
\fi
Packit Service 76cb02
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
% ### Page Parameters if not done by geometry
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
\@ifpackageloaded{geometry}{}{
Packit Service 76cb02
\setlength{\paperwidth}{21cm}
Packit Service 76cb02
\setlength{\paperheight}{29.7cm}
Packit Service 76cb02
\setlength{\hoffset}{-1in}
Packit Service 76cb02
\setlength{\voffset}{-1in}
Packit Service 76cb02
\setlength{\oddsidemargin}{2cm}
Packit Service 76cb02
\setlength{\marginparsep}{0cm}
Packit Service 76cb02
\setlength{\marginparwidth}{0cm}
Packit Service 76cb02
\setlength{\textwidth}{18cm}
Packit Service 76cb02
%\setlength{\topmargin}{0.5cm}
Packit Service 76cb02
\setlength{\topmargin}{1.3cm}
Packit Service 76cb02
%\setlength{\headsep}{2cm}
Packit Service 76cb02
\setlength{\headsep}{1.1cm}
Packit Service 76cb02
\setlength{\textheight}{24cm}
Packit Service 76cb02
\setlength{\footskip}{1.5cm}
Packit Service 76cb02
}
Packit Service 76cb02
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
% ### Used Packages
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
\makeatletter
Packit Service 76cb02
% Postscript Graphics
Packit Service 76cb02
\usepackage{graphicx}
Packit Service 76cb02
Packit Service 76cb02
% Miscellaneous
Packit Service 76cb02
\usepackage{calc}
Packit Service 76cb02
\usepackage{multirow}
Packit Service 76cb02
\usepackage{subfigure}
Packit Service 76cb02
\usepackage{ifthen}
Packit Service 76cb02
\usepackage{tabularx}
Packit Service 76cb02
% Before hyperlink to have consistent links to footnotes
Packit Service 76cb02
\usepackage{footmisc}
Packit Service 76cb02
% To be able to have sections afters appendices
Packit Service 76cb02
\usepackage{appendix}
Packit Service 76cb02
Packit Service 76cb02
% Workaround to avoid troubles with accents in \appendixname used as hyperref
Packit Service 76cb02
% label: force the label prefix to 'appendix' whatever the lang is
Packit Service 76cb02
\let\orgresetsapp=\@resets@pp
Packit Service 76cb02
\let\orgrestoreapp=\restoreapp
Packit Service 76cb02
\let\restoreapp\relax
Packit Service 76cb02
\def\@resets@pp{%
Packit Service 76cb02
  \orgresetsapp
Packit Service 76cb02
  \if@pphyper
Packit Service 76cb02
    \def\Hy@chapapp{appendix}%
Packit Service 76cb02
  \fi
Packit Service 76cb02
  \orgrestoreapp
Packit Service 76cb02
}
Packit Service 76cb02
Packit Service 76cb02
\usepackage{dbk_fonts}
Packit Service 76cb02
\usepackage{dbk_hyper}
Packit Service 76cb02
Packit Service 76cb02
\usepackage{fancyhdr}
Packit Service 76cb02
Packit Service 76cb02
% To have fancy <programlisting>
Packit Service 76cb02
\usepackage{fancyvrb}
Packit Service 76cb02
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
% ### Some DocBook floats and environments
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
Packit Service 76cb02
%% Inclusion of float package after hyperref to have its definitions!
Packit Service 76cb02
\usepackage{float}
Packit Service 76cb02
Packit Service 76cb02
\@ifundefined{chapter}{
Packit Service 76cb02
Packit Service 76cb02
\floatstyle{ruled}
Packit Service 76cb02
\newfloat{example}{htb}{loe}[section]
Packit Service 76cb02
\floatname{example}{\examplename}
Packit Service 76cb02
Packit Service 76cb02
\floatstyle{plain}
Packit Service 76cb02
\newfloat{dbequation}{htb}{lom}[section]
Packit Service 76cb02
\floatname{dbequation}{{\scshape \dbequationname }}
Packit Service 76cb02
Packit Service 76cb02
% Redefinition of tableofcontent, to have it in separate pages
Packit Service 76cb02
\let\stdtoc=\tableofcontents
Packit Service 76cb02
\def\tableofcontents{ \newpage \stdtoc{} \newpage} 
Packit Service 76cb02
}{
Packit Service 76cb02
Packit Service 76cb02
\floatstyle{ruled}
Packit Service 76cb02
\newfloat{example}{htb}{loe}[chapter]
Packit Service 76cb02
\floatname{example}{\examplename}
Packit Service 76cb02
Packit Service 76cb02
\floatstyle{plain}
Packit Service 76cb02
\newfloat{dbequation}{htb}{lom}[chapter]
Packit Service 76cb02
\floatname{dbequation}{{\scshape \dbequationname }}
Packit Service 76cb02
}
Packit Service 76cb02
Packit Service 76cb02
% Sidebar is a boxed minipage that can contain verbatim
Packit Service 76cb02
\newenvironment{sidebar}[1][]{
Packit Service 76cb02
  \hspace{0mm}\newline%
Packit Service 76cb02
  \noindent\begin{Sbox}\begin{minipage}{0.95\linewidth}%
Packit Service 76cb02
  \setlength\parskip{\medskipamount}%
Packit Service 76cb02
}{
Packit Service 76cb02
  \end{minipage}\end{Sbox}\shadowbox{\TheSbox}%
Packit Service 76cb02
}
Packit Service 76cb02
Packit Service 76cb02
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
% ### Title and Bookinfo display
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
\def\title#1{\renewcommand{\DBKtitle}{#1}}
Packit Service 76cb02
Packit Service 76cb02
% Redefine author so that it can be used by the domitete
Packit Service 76cb02
\def\author#1{\renewcommand{\DBKauthor}{#1}}
Packit Service 76cb02
Packit Service 76cb02
% Redefine how to print the cover page and book infos
Packit Service 76cb02
\def\maketitle{
Packit Service 76cb02
  \DBKcover
Packit Service 76cb02
%  \if\DBKcopyright\@empty\else
Packit Service 76cb02
  \ifx\DBKcopyright\relax\else
Packit Service 76cb02
    \DBKcopyright \\
Packit Service 76cb02
  \fi
Packit Service 76cb02
  \ifx\DBKlegalblock\relax\else
Packit Service 76cb02
    \DBKlegalblock
Packit Service 76cb02
  \fi
Packit Service 76cb02
  \newpage
Packit Service 76cb02
  \DBKdomitete
Packit Service 76cb02
}
Packit Service 76cb02
Packit Service 76cb02
% How to render a <legalnotice>
Packit Service 76cb02
\newenvironment{DBKlegalnotice}{
Packit Service 76cb02
  \if@twocolumn
Packit Service 76cb02
    \noindent\small\textit{\DBKlegaltitle}
Packit Service 76cb02
    \/\bfseries---$\!$
Packit Service 76cb02
  \else
Packit Service 76cb02
    \ifx\DBKlegaltitle\relax\else
Packit Service 76cb02
      \noindent\begin{center}\small\bfseries\DBKlegaltitle\end{center}%
Packit Service 76cb02
    \fi
Packit Service 76cb02
    \begin{quote}\small
Packit Service 76cb02
  \fi
Packit Service 76cb02
}{
Packit Service 76cb02
  \vspace{0.6em}\par\if@twocolumn\else\end{quote}\fi
Packit Service 76cb02
}
Packit Service 76cb02
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
% ### Index redefinition
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
Packit Service 76cb02
%
Packit Service 76cb02
% Index is redefined to have the section numbered.
Packit Service 76cb02
% 
Packit Service 76cb02
\renewenvironment{theindex}
Packit Service 76cb02
{ 
Packit Service 76cb02
  \if@twocolumn
Packit Service 76cb02
    \@restonecolfalse
Packit Service 76cb02
  \else
Packit Service 76cb02
    \@restonecoltrue
Packit Service 76cb02
  \fi
Packit Service 76cb02
  \columnseprule \z@
Packit Service 76cb02
  \columnsep 35\p@
Packit Service 76cb02
  \pagebreak
Packit Service 76cb02
  \@ifundefined{chapter}{
Packit Service 76cb02
    \twocolumn[\section{\indexname}]%
Packit Service 76cb02
  }{
Packit Service 76cb02
    % To not have the number, replace makechapterhead by
Packit Service 76cb02
    % makeschapterhead
Packit Service 76cb02
    % \chapter{\indexname}{%
Packit Service 76cb02
    % \@mkboth{\MakeUppercase\indexname}%
Packit Service 76cb02
    %        {\MakeUppercase\indexname}
Packit Service 76cb02
    % }%
Packit Service 76cb02
    \refstepcounter{chapter}
Packit Service 76cb02
    \twocolumn[\@makechapterhead{\indexname}]%
Packit Service 76cb02
  }
Packit Service 76cb02
  \thispagestyle{plain}\parindent\z@
Packit Service 76cb02
  \parskip\z@ \@plus .3\p@\relax
Packit Service 76cb02
  \let\item\@idxitem
Packit Service 76cb02
}{\if@restonecol\onecolumn\else\clearpage\fi}
Packit Service 76cb02
Packit Service 76cb02
\let\stdindex=\theindex
Packit Service 76cb02
\let\endstdindex=\endtheindex
Packit Service 76cb02
\renewenvironment{theindex}{
Packit Service 76cb02
  \begin{stdindex}
Packit Service 76cb02
  \@ifundefined{chapter}{}{
Packit Service 76cb02
    % To not have the number, replace by:
Packit Service 76cb02
    % \addcontentsline{toc}{chapter}{\numberline{}\indexname}
Packit Service 76cb02
    \ifnum \c@secnumdepth >\z@
Packit Service 76cb02
      \ifnum \value{part} >\z@
Packit Service 76cb02
        \addcontentsline{toc}{part}{\numberline{\thechapter}\hspace{-1em}\indexname}
Packit Service 76cb02
      \else
Packit Service 76cb02
        \addcontentsline{toc}{chapter}{\numberline{\thechapter}\indexname}
Packit Service 76cb02
      \fi
Packit Service 76cb02
    \else
Packit Service 76cb02
      \addcontentsline{toc}{chapter}{\indexname}
Packit Service 76cb02
    \fi
Packit Service 76cb02
  }
Packit Service 76cb02
}{
Packit Service 76cb02
  \end{stdindex}
Packit Service 76cb02
}
Packit Service 76cb02
Packit Service 76cb02
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
% ### Commands and environments
Packit Service 76cb02
% ##############################################################################
Packit Service 76cb02
\newcommand{\draft}{\special{!userdict begin /bop-hook{gsave 200 30 translate %
Packit Service 76cb02
         65 rotate /Times-Roman findfont 216 scalefont setfont %
Packit Service 76cb02
         0 0 moveto 0.8 setgray (DRAFT) show grestore}def end}}
Packit Service 76cb02
Packit Service 76cb02
\usepackage{refcount}
Packit Service 76cb02
\usepackage{lastpage}
Packit Service 76cb02
Packit Service 76cb02
%\usepackage{dbk_url}
Packit Service 76cb02
\usepackage{dbk_locale}
Packit Service 76cb02
\usepackage{dbk_title}
Packit Service 76cb02
\usepackage{dbk_headfoot}
Packit Service 76cb02
\usepackage{dbk_revision}
Packit Service 76cb02
\usepackage{dbk_admonition}
Packit Service 76cb02
\usepackage{dbk_changebar}
Packit Service 76cb02
\usepackage{dbk_biblio}
Packit Service 76cb02
\usepackage{dbk_table}
Packit Service 76cb02
\usepackage{dbk_item}
Packit Service 76cb02
\usepackage{dbk_graphic}
Packit Service 76cb02
\usepackage{dbk_cover}
Packit Service 76cb02
\usepackage{dbk_verbatim}
Packit Service 76cb02
\usepackage{dbk_misc}
Packit Service 76cb02
\usepackage{dbk_callout}
Packit Service 76cb02
\usepackage{dbk_annot}
Packit Service 76cb02
Packit Service 76cb02
\makeatother
Packit Service 76cb02