| % ================================================================== |
| % Changes to the Docutils latex2e writer since version 0.5 |
| % ================================================================== |
| % |
| % A backwards compatibility style sheet |
| % ************************************* |
| % |
| % :Author: Guenter Milde |
| % :Contact: milde@users.berlios.de |
| % :Revision: $Revision: 6152 $ |
| % :Date: $Date: 2009-02-24$ |
| % :Copyright: © 2009 G. Milde, |
| % Released without warranties or conditions of any kind |
| % under the terms of the Apache License, Version 2.0 |
| % http://www.apache.org/licenses/LICENSE-2.0 |
| % :Abstract: This file documents changes and provides a style for best |
| % possible compatibility to the behaviour of the `latex2e` |
| % writer of Doctutils release 0.5. |
| % |
| % :: |
| |
| \NeedsTeXFormat{LaTeX2e} |
| \ProvidesPackage{docutils-05-compat} |
| [2009/03/26 v0.1 compatibility with rst2latex from Docutils 0.5] |
| |
| % .. contents:: |
| % :depth: 3 |
| % |
| % Usage |
| % ===== |
| % |
| % * To get an (almost) identic look for your old documents, |
| % place ``docutils-05-compat.sty`` in the TEXINPUT path (e.g. |
| % the current work directory) and pass the |
| % ``--stylesheet=docutils-05-compat`` option to ``rst2latex.py``. |
| % |
| % * To use your custom stylesheets without change, add them to the |
| % compatibility style, e.g. |
| % ``--stylesheet="docutils-05-compat,mystyle.tex``. |
| % |
| % .. tip:: As the changes include bug fixes that are partly reverted by this |
| % style, it is recommended to adapt the stylesheets to the new version or |
| % copy just the relevant parts of this style into them. |
| % |
| % Changes since 0.5 |
| % ================= |
| % |
| % Bugfixes |
| % -------- |
| % |
| % * Newlines around comments, targets and references prevent run-together |
| % paragraphs. |
| % |
| % + An image directive with hyperlink reference or target did not start a |
| % new paragraph (e.g. the first two image examples in |
| % standalone_rst_latex.tex). |
| % |
| % + Paragraphs were not separated if there was a (hyper) target definition |
| % inbetween. |
| % |
| % + Paragraphs did run together, if separated by a comment-paragraph in the |
| % rst source. |
| % |
| % * Fixed missing and spurious internal links/targets. |
| % Internal links now take you to the correct place. |
| % |
| % * Verbose and linked system messages. |
| % |
| % * `Figure and image alignment`_ now conforms to the rst definition. |
| % |
| % * Put `header and footer directive`__ content in \DUheader respective |
| % \DUfooter macros (ignored by the default style/template). |
| % |
| % (They were put inside hard-coded markup at the top/bottom of the document |
| % without an option to get them on every page.) |
| % |
| % __ ../ref/rst/directives.html#document-header-footer |
| % |
| % * Render doctest blocks as literal blocks (fixes bug [1586058] doctest block |
| % nested in admonition). I.e. |
| % |
| % + indent doctest blocks by nesting in a quote environment. This is also |
| % the rendering by the HTML writer (html4css2.css). |
| % + apply the ``--literal-block-env`` setting also to doctest blocks. |
| % |
| % .. warning:: |
| % (``--literal-block-env=verbatim`` and |
| % ``--literal-block-env=lstlistings`` fail with literal or doctest |
| % blocks nested in an admonition. |
| % |
| % * Two-way hyperlinked footnotes and support for symbol footnotes and |
| % ``--footnote-references=brackets`` with ``--use-latex-footnotes``. |
| % |
| % * The packages `fixltx2e` (providing LaTeX patches and the \textsubscript |
| % command) and `cmap` (including character maps in the generated PDF for |
| % better search and copy-and-paste operations) are now always loaded |
| % (configurable with custom templates_). |
| % |
| % Backwards compatibility: |
| % "Bug for bug compatibility" is not provided. |
| % |
| % |
| % New configuration setting defaults |
| % ---------------------------------- |
| % |
| % - font-encoding: "T1" (formerly implicitely set by 'ae'). |
| % - use-latex-toc: true (ToC with page numbers). |
| % - use-latex-footnotes: true (no mixup with figures). |
| % |
| % Backwards compatibility: |
| % Reset to the former defaults with: |
| % |
| % | font-encoding: '' |
| % | use-latex-toc: False |
| % | use-latex-footnotes: False |
| % |
| % (in the config file) or the command line options: |
| % |
| % ``--figure-footnotes --use-docutils-toc --font-encoding=''`` |
| % |
| % |
| % Cleaner LaTeX source |
| % -------------------- |
| % |
| % New features: |
| % * Remove redundant "double protection" from the encoding of the "special |
| % printing characters" and square brackets, e.g. ``\%`` instead of |
| % ``{\%}``. |
| % * Remove some spurious whitespace, e.g. ``\item [what:] -> \item[what:]``. |
| % * Use conventional style for "named" macros, e.g. ``\dots{}`` instead of |
| % ``{\dots}`` |
| % |
| % Backwards compatibility: |
| % Changes do not affect the output. |
| % |
| % |
| % LaTeX style sheets |
| % ------------------ |
| % |
| % New Feature: |
| % LaTeX packages can be used as ``--stylesheet`` argument without |
| % restriction. |
| % |
| % Implementation: |
| % Use ``\usepackage`` if style sheet ends with ``.sty`` or has no |
| % extension and ``\input`` else. |
| % |
| % Rationale: |
| % while ``\input`` works with extension as well as without extension, |
| % ``\usepackage`` expects the package name without extension. (The latex2e |
| % writer will strip a ``.sty`` extension.) |
| % |
| % |
| % Backwards compatibility: |
| % Up to Docutils 0.5, if no filename extension is given in the |
| % ``stylesheet`` argument, ``.tex`` is assumed (by latex). |
| % |
| % Since Docutils 0.6, a stylesheet without filename extension is assumed to |
| % be a LaTeX package (``*.sty``) and referenced with the ``\usepackage`` |
| % command. |
| % |
| % .. important:: |
| % Always specify the extension if you want the style sheet to be |
| % ``\input`` by LaTeX. |
| % |
| % |
| % Templates |
| % --------- |
| % |
| % New Feature: |
| % Advanced configuration via custom templates. |
| % |
| % Implementation: |
| % A ``--template`` option and config setting allows specification of a |
| % template file. |
| % |
| % See the `LaTeX writer documentation`__ for details. |
| % |
| % __ latex.html#templates |
| % |
| % |
| % Custom roles |
| % ------------ |
| % |
| % New Feature: failsave implementation |
| % As with classes to HTML objects, class arguments are silently ignored if |
| % there is no styling rule for this class in a custom style sheet. |
| % |
| % New Feature: custom roles based on standard roles |
| % As class support needs to be handled by the LaTeX writer, this feature was |
| % not present "automatically" (as in HTML). Modified visit/depart_*() |
| % methods for the standard roles now call visit/depart_inline() if there are |
| % class arguments to the node. |
| % |
| % Backwards compatibility: |
| % The implementation is fully backwards compatible. (SVN versions 5742 to |
| % 5861 contained an implementation that did not work with commands expecting |
| % an argument.) |
| % |
| % Length units |
| % ------------ |
| % |
| % New Features: |
| % 1. Add default unit if none given. |
| % A poll on docutils-users favoured ``bp`` (Big Point: 1 bp = 1/72 in). |
| % |
| % 2. Do not change ``px`` to ``pt``. |
| % |
| % 3. Lengths specified in the document with unit "pt" will be written with |
| % unit "bp" to the LaTeX source. |
| % |
| % Rationale: |
| % 1. prevent LaTeX error "missing unit". |
| % |
| % 2. ``px`` is a valid unit in pdftex since version 1.3.0 released on |
| % 2005-02-04: |
| % |
| % 1px defaults to 1bp (or 72dpi), but can be changed with the |
| % ``\pdfpxdimen`` primitive.:: |
| |
| \pdfpxdimen=1in % 1 dpi |
| \divide\pdfpxdimen by 96 % 96 dpi |
| |
| % -- http://www.tug.org/applications/pdftex/NEWS |
| % |
| % Modern TeX distributions use pdftex also for dvi generation (i.e. |
| % ``latex`` actually calls ``pdftex`` with some options). |
| % |
| % 3. In Docutils (as well as CSS) the unit symbol "pt" denotes the |
| % `Postscript point` or `DTP point` while LaTeX uses "pt" for the `LaTeX |
| % point`, which is unknown to Docutils and 0.3 % smaller. |
| % |
| % The `DTP point` is available in LaTeX as "bp" (big point): |
| % |
| % 1 pt = 1/72.25 in < 1 bp = 1/72 in |
| % |
| % |
| % Backwards compatibility: |
| % Images with width specification in ``px`` come out slightly (0.3 %) larger: |
| % |
| % 1 px = 1 bp = 1/72 in > 1 pt = 1/72.25 in |
| % |
| % This can be reset with :: |
| |
| \pdfpxdimen=1pt |
| |
| % .. caution:: It is impossible to revert the change of lengths specified with |
| % "pt" or without unit in a style sheet, however the 0.3 % change will be |
| % imperceptible in most cases. |
| % |
| % .. admonition:: Error ``illegal unit px`` |
| % |
| % The unit ``px`` is not defined in "pure" LaTeX, but introduced by the |
| % `pdfTeX` converter on 2005-02-04. `pdfTeX` is used in all modern LaTeX |
| % distributions (since ca. 2006) also for conversion into DVI. |
| % |
| % If you convert the LaTeX source with a legacy program, you might get the |
| % error ``illegal unit px``. |
| % |
| % If updating LaTeX is not an option, just remove the ``px`` from the length |
| % specification. HTML/CSS will default to ``px`` while the `latexe2` writer |
| % will add the fallback unit ``bp``. |
| % |
| % |
| % Font encoding |
| % ------------- |
| % |
| % New feature: |
| % Do not mix font-encoding and font settings: do not load the obsolete |
| % `ae` and `aeguill` packages unless explicitely required via the |
| % ``--stylesheet`` option. |
| % |
| % :font-encoding = "": do not load `ae` and `aeguill`, i.e. |
| % |
| % * do not change font settings, |
| % * do not use the fontenc package |
| % (implicitely loaded via `ae`), |
| % * use LaTeX default font encoding (OT1) |
| % |
| % :font-encoding = "OT1": load `fontenc` with ``\usepackage[OT1]{fontenc}`` |
| % |
| % Example: |
| % ``--font-encoding=LGR,T1`` becomes ``\usepackage[LGR,T1]{fontenc}`` |
| % (Latin, Latin-1 Supplement, and Greek) |
| % |
| % |
| % Backwards compatibility: |
| % Load the ae and aeguill packages if fontenc is not used. |
| % |
| % .. tip:: Using `ae` is not recommended. A similar look (but better |
| % implementation) can be achieved with the packages `lmodern`, `cmsuper`, |
| % or `cmlgr` all providing Computer Modern look-alikes in vector format and |
| % T1 encoding, e.g. ``--font-encoding=T1 --stylesheet=lmodern``. |
| % |
| % Sub- and superscript as text |
| % ---------------------------- |
| % |
| % New feature: |
| % Set sub- and superscript role argument in text mode not as math. |
| % |
| % Pass the role content to ``\textsubscript`` or ``\textsuperscript``. |
| % |
| % Backwards compatibility: |
| % The old implementation set the role content in Math mode, where |
| % |
| % * whitespace is ignored, |
| % * a different command set and font setting scheme is active, |
| % * Latin letters are typeset italic but numbers upright. |
| % |
| % Although it is possible to redefine ``\textsubscript`` and |
| % ``\textsuperscript`` to typeset the content in math-mode, this can lead to |
| % errors with certain input and is therefore not done in this style sheet. |
| % |
| % .. tip:: To get italic subscripts, define and use in your document |
| % `custom roles`_ like ``.. role:: sub(subscript)`` and |
| % ``.. role:: super(superscript)`` and define the "role commands":: |
| |
| \newcommand{\DUrolesub}{\itshape} |
| \newcommand{\DUrolesuper}{\itshape} |
| |
| % Alternatively, if you want all sub- and superscripts in italic, redefine |
| % the macros:: |
| |
| %% \let\DUsup\textsubscript |
| %% \let\DUsuper\textsuperscript |
| %% \renewcommand*{\textsubscript}{\DUsub\itshape} |
| %% \renewcommand*{\textsuperscript}{\DUsuper\itshape} |
| |
| % This is not fully backwards compatible, as it will also set numbers in |
| % italic shape and not ignore whitespace. |
| % |
| % Page layout |
| % ----------- |
| % |
| % New features: |
| % * Margins are configurable via the ``DIV=...`` document option. |
| % |
| % * The ``\raggedbottom`` setting is no longer inserted into the document. It |
| % is the default for article and report classes. If requested in combination |
| % with a book class, it can be given in a custom style sheet. |
| % |
| % Backwards compatibility: |
| % Up to version 0.5, use of `typearea` and a DIV setting of 12 were |
| % hard-coded into the latex2e writer :: |
| |
| \usepackage{typearea} |
| \typearea{12} |
| |
| % and the vertical alignment of lower boundary of the text area in book |
| % classes disabled via :: |
| |
| \raggedbottom |
| |
| |
| % ToC and section numbers |
| % ----------------------- |
| % |
| % Better conformance to Docutils specifications. |
| % |
| % New feature: |
| % * The "depth" argument of the "contents" and "sectnum" directives is |
| % respected. |
| % |
| % * section numbering independent of 'use-latex-toc': |
| % |
| % + sections are only numbered if there is a "sectnum" directive in the |
| % document |
| % |
| % + section numbering by LaTeX if the "sectnum_xforms" config setting is |
| % False. |
| % |
| % Backwards compatibility: |
| % |
| % The previous behaviour was to always number sections if 'use-latex-toc' is |
| % true, using the document class defaults. It cannot be restored |
| % universally, the following code sets the default values of the "article" |
| % document class:: |
| |
| \setcounter{secnumdepth}{3} |
| \setcounter{tocdepth}{3} |
| |
| % .. TODO or not to do? (Back-compatibility problems) |
| % * The default "depth" of the LaTeX-created ToC and the LaTeX section |
| % numbering is increased to the number of supported section levels. |
| % |
| % New feature: |
| % If 'use-latex-toc' is set, local tables of content are typeset using the |
| % 'minitoc' package (instead of being ignored). |
| % |
| % Backwards compatibility: |
| % Disable the creation of local ToCs (ignoring all special commands) by |
| % replacing ``\usepackage{minitoc} with ``\usepackage{mtcoff}``. |
| % |
| % |
| % Default font in admonitions and sidebar |
| % --------------------------------------- |
| % |
| % New feature: |
| % Use default font in admonitions and sidebar. |
| % |
| % Backward compatibility: |
| % See the fallback definitions for admonitions_, `topic title`_ and |
| % `sidebar`_. |
| % |
| % |
| % Figure placement |
| % ---------------- |
| % |
| % New feature: |
| % Use ``\floatplacement`` from the `float` package instead of |
| % "hard-coded" optional argument for the global setting. |
| % |
| % Default to ``\floatplacement{figure}{H}`` (here definitely). This |
| % corresponds most closely to the source and HTML placement (principle of |
| % least surprise). |
| % |
| % Backwards compatibility: |
| % Set the global default back to the previous used value:: |
| |
| \usepackage{float} |
| \floatplacement{figure}{htbp} % here, top, bottom, extra-page |
| |
| |
| % Figure and image alignment |
| % -------------------------- |
| % |
| % New features: |
| % |
| % a) Fix behaviour of 'align' argument to a figure (do not align figure |
| % contents). |
| % |
| % As the 'figwidth' argument is still ignored and the "natural width" of a |
| % figure in LaTeX is 100% \textwidth, setting the 'align' argument of a |
| % figure has currently no effect on the LaTeX output. |
| % |
| % b) Set default align of image in a figure to 'center'. |
| % |
| % c) Also center images that are wider than textwidth. |
| % |
| % d) Align images with class "align-[right|center|left]" (allows setting the |
| % alignment of an image in a figure). |
| % |
| % Backwards compatibility: |
| % There is no "automatic" way to reverse these changes via a style sheet. |
| % |
| % a) The alignment of the image can be set with the "align-left", |
| % "align-center" and "align-right" class arguments. |
| % |
| % As previously, the caption of a figure is aligned according to the |
| % document class -- configurable with a style sheet using the "caption" |
| % package. |
| % |
| % b) See a) |
| % |
| % c) Set the alignment of "oversized" images to "left" to get back the |
| % old placement. |
| % |
| % Shorter preamble |
| % ---------------- |
| % |
| % New feature: |
| % The document preamble is pruned to contain only relevant commands and |
| % settings. |
| % |
| % Packages that are no longer required |
| % ```````````````````````````````````` |
| % |
| % The following packages where required in pre-0.5 versions and still loaded |
| % with version 0.5:: |
| |
| \usepackage{shortvrb} |
| \usepackage{amsmath} |
| |
| |
| % Packages that are conditionally loaded |
| % `````````````````````````````````````` |
| % |
| % Additional to the `typearea` for `page layout`_, the following packages are |
| % only loaded if actually required by doctree elements: |
| % |
| % Tables |
| % ^^^^^^ |
| % |
| % Standard package for tables across several pages:: |
| |
| \usepackage{longtable} |
| |
| % Extra space between text in tables and the line above them |
| % ('array' is implicitely loaded by 'tabularx', see below):: |
| |
| \usepackage{array} |
| \setlength{\extrarowheight}{2pt} |
| |
| % Table cells spanning multiple rows:: |
| |
| \usepackage{multirow} |
| |
| % Docinfo |
| % ^^^^^^^ |
| % |
| % One-page tables with auto-width columns:: |
| |
| \usepackage{tabularx} |
| |
| % Images |
| % ^^^^^^ |
| % Include graphic files:: |
| |
| \usepackage{graphicx} |
| |
| % Problematic, Sidebar |
| % ^^^^^^^^^^^^^^^^^^^^ |
| % Set text and/or background colour, coloured boxes with ``\colorbox``:: |
| |
| \usepackage{color} |
| |
| % Floats for footnotes settings |
| % ````````````````````````````` |
| % |
| % Settings for the use of floats for footnotes are only included if |
| % |
| % * the option "use-latex-footnotes" is False, and |
| % * there is at least one footnote in the document. |
| % |
| % :: |
| |
| % begin: floats for footnotes tweaking. |
| \setlength{\floatsep}{0.5em} |
| \setlength{\textfloatsep}{\fill} |
| \addtolength{\textfloatsep}{3em} |
| \renewcommand{\textfraction}{0.5} |
| \renewcommand{\topfraction}{0.5} |
| \renewcommand{\bottomfraction}{0.5} |
| \setcounter{totalnumber}{50} |
| \setcounter{topnumber}{50} |
| \setcounter{bottomnumber}{50} |
| % end floats for footnotes |
| |
| |
| % Special lengths, commands, and environments |
| % ------------------------------------------- |
| % |
| % Removed definitions |
| % ``````````````````` |
| % |
| % admonition width |
| % ^^^^^^^^^^^^^^^^ |
| % The ``admonitionwith`` lenght is replaced by the more powerful |
| % ``\DUadmonition`` command (see admonitions_). |
| % |
| % Backwards compatibility: |
| % The default value (90 % of the textwidth) is unchanged. |
| % |
| % To configure the admonition width, you must redefine the ``DUadmonition`` |
| % command instead of changing the ``admonitionwith`` length value. |
| % |
| % |
| % Renamed definitions (now conditional) |
| % ````````````````````````````````````` |
| % |
| % The names for special doctree elements are now prefixed with ``DU``. |
| % |
| % Up to version 0.5, all definitions were included in the preamble (before the |
| % style sheet) of every document -- even if not used in the body. Since |
| % version 0.6, fallback definitions are included after the style sheet and |
| % only if required. |
| % |
| % Customization is done by an alternative definition in a style sheet with |
| % ``\newcommand`` instead of the former ``\renewcommand``. |
| % |
| % The following code provides the old definitions and maps them (or their |
| % custom variants) to the new interface. |
| % |
| % docinfo width |
| % ^^^^^^^^^^^^^ |
| % :: |
| |
| \newlength{\docinfowidth} |
| \setlength{\docinfowidth}{0.9\textwidth} |
| |
| \newlength{\DUdocinfowidth} |
| \AtBeginDocument{\setlength{\DUdocinfowidth}{\docinfowidth}} |
| |
| % line block |
| % ^^^^^^^^^^ |
| % :: |
| |
| \newlength{\lineblockindentation} |
| \setlength{\lineblockindentation}{2.5em} |
| \newenvironment{lineblock}[1] |
| {\begin{list}{} |
| {\setlength{\partopsep}{\parskip} |
| \addtolength{\partopsep}{\baselineskip} |
| \topsep0pt\itemsep0.15\baselineskip\parsep0pt |
| \leftmargin#1} |
| \raggedright} |
| {\end{list}} |
| |
| \newlength{\DUlineblockindent} |
| \AtBeginDocument{\setlength{\DUlineblockindent}{\lineblockindentation}} |
| \newenvironment{DUlineblock}[1] |
| {\begin{lineblock}{#1}} |
| {\end{lineblock}} |
| |
| % local line width |
| % ^^^^^^^^^^^^^^^^ |
| % |
| % The ``\locallinewidth`` length for internal use in tables is replaced |
| % by ``\DUtablewidth``. It was never intended for customization:: |
| |
| \newlength{\locallinewidth} |
| |
| % option lists |
| % ^^^^^^^^^^^^ |
| % :: |
| |
| \newcommand{\optionlistlabel}[1]{\bf #1 \hfill} |
| \newenvironment{optionlist}[1] |
| {\begin{list}{} |
| {\setlength{\labelwidth}{#1} |
| \setlength{\rightmargin}{1cm} |
| \setlength{\leftmargin}{\rightmargin} |
| \addtolength{\leftmargin}{\labelwidth} |
| \addtolength{\leftmargin}{\labelsep} |
| \renewcommand{\makelabel}{\optionlistlabel}} |
| }{\end{list}} |
| |
| \newcommand{\DUoptionlistlabel}{\optionlistlabel} |
| \newenvironment{DUoptionlist} |
| {\begin{optionlist}{3cm}} |
| {\end{optionlist}} |
| |
| % rubric |
| % ^^^^^^ |
| % Now less prominent (not bold, normal size) restore with:: |
| |
| \newcommand{\rubric}[1]{\subsection*{~\hfill {\it #1} \hfill ~}} |
| \newcommand{\DUrubric}[2][class-arg]{\rubric{#2}} |
| |
| % title reference role |
| % ^^^^^^^^^^^^^^^^^^^^ |
| % :: |
| |
| \newcommand{\titlereference}[1]{\textsl{#1}} |
| \newcommand{\DUroletitlereference}[1]{\titlereference{#1}} |
| |
| |
| % New definitions |
| % ``````````````` |
| % |
| % New Feature: |
| % Enable customization of some more Docutils elements with special commands |
| % |
| % :admonition: ``DUadmonition`` command (replacing ``\admonitionwidth``), |
| % :field list: ``DUfieldlist`` environment, |
| % :legend: ``DUlegend`` environment, |
| % :sidebar: ``\DUsidebar``, ``\DUtitle``, and |
| % ``DUsubtitle`` commands, |
| % :topic: ``\DUtopic`` and ``\DUtitle`` commands, |
| % :transition: ``\DUtransition`` command. |
| % :footnotes: ``\DUfootnotemark`` and ``\DUfootnotetext`` commands with |
| % hyperlink support using the Docutils-provided footnote label. |
| % |
| % Backwards compatibility: |
| % In most cases, the default definition corresponds to the previously used |
| % construct. The following definitions restore the old behaviour in case of |
| % changes. |
| % |
| % admonitions |
| % ^^^^^^^^^^^ |
| % Use sans-serif fonts:: |
| |
| \newcommand{\DUadmonition}[2][class-arg]{% |
| \begin{center} |
| \fbox{\parbox{0.9\textwidth}{\sffamily #2}} |
| \end{center} |
| } |
| |
| % dedication |
| % ^^^^^^^^^^ |
| % Do not center:: |
| |
| \newcommand{\DUtopicdedication}[1]{#1} |
| |
| % But center the title:: |
| |
| \newcommand*{\DUtitlededication}[1]{\centerline{\textbf{#1}}} |
| |
| % sidebar |
| % ^^^^^^^ |
| % Use sans-serif fonts, a frame, and a darker shade of grey:: |
| |
| \providecommand{\DUsidebar}[2][class-arg]{% |
| \begin{center} |
| \sffamily |
| \fbox{\colorbox[gray]{0.80}{\parbox{0.9\textwidth}{#2}}} |
| \end{center} |
| } |
| |
| % sidebar sub-title |
| % ^^^^^^^^^^^^^^^^^ |
| % Bold instead of emphasized:: |
| |
| \providecommand*{\DUsubtitlesidebar}[1]{\hspace*{\fill}\\ |
| \textbf{#1}\smallskip} |
| |
| % topic |
| % ^^^^^ |
| % No quote but normal text:: |
| |
| \newcommand{\DUtopic}[2][class-arg]{% |
| \ifcsname DUtopic#1\endcsname% |
| \csname DUtopic#1\endcsname{#2}% |
| \else |
| #2 |
| \fi |
| } |
| |
| % topic title |
| % ^^^^^^^^^^^ |
| % Title for "topics" (admonitions, sidebar). |
| % |
| % Larger font size:: |
| |
| \providecommand*{\DUtitletopic}[1]{\textbf{\large #1}\smallskip} |
| |
| % transition |
| % ^^^^^^^^^^ |
| % Do not add vertical space after the transition. :: |
| |
| \providecommand*{\DUtransition}[1][class-arg]{% |
| \hspace*{\fill}\hrulefill\hspace*{\fill}} |